突破校园网限速:使用 iKuai 多拨分流负载均衡 + Clash 代理(内网带宽限制通用)

文章目录

  • 1. 简介
  • 2. iKuai 部署
    • 2.1 安装 VMware
    • 2.2 安装 iKuai
      • (1) 下载固件
      • (2) 安装 iKuai 虚拟机
      • (3) 配置 iKuai 虚拟机
      • (4) 配置 iKuai
      • (5) 配置多拨分流
    • 2.3 测试速度
  • 3. Clash 部署
    • (1) 配置磁盘分区
    • (2) 安装 Docker
    • (3) 安装 Clash
    • (4) 设置代理
  • 4. 热点:一起瓜分互联网
    • (1) 启动 Windows 移动热点
    • (2) 配置 Windows 移动热点
    • (3) 网络测速
  • 5. 进一步提速!
    • 5.1 原理
    • 5.2 案例一:分段下载神器(1MB/s->9MB/s)
    • 5.3 案例二:安卓端的分段下载(1MB/s->10MB/s)


1. 简介

由于博主连的内网是限速的,但是不同设备之间的网速却始终差不多,有一天看着屏幕转圈圈的加载动画,不禁萌生了一个想法:我可不可以将多个设备的网络汇总到一起,组成一个新的网络呢?

在网上找了一圈,话题始终离不开“分流”、“负载均衡”、“多拨”、“iKuai”……

经过几天的拉锯战,从刚开始的不明不白到现在的略知一二,最终实现了 iKuai 多拨 IP 并负载均衡实现网速自由,再结合 Clash 实现网络自由。

59115b736bd8fdab8a4b7a8f94598947本文就这几天的部署经验,阐述了部署过程和一些我认为很多教程模糊不清的地方。

在正文开始前,你需要 确保你的有线网卡能够接入网络,否则一切免谈。

2. iKuai 部署

2.1 安装 VMware

不赘述了,这部分网上教程太多了

2.2 安装 iKuai

(1) 下载固件

打开 https://www.ikuai8.com/component/download 下载 64位 的 iKuai ISO固件。注意:一定要是 64 位的,否则后面无法安装 Docker 去扩展代理服务器

64位 的 iKuai ISO固件

(2) 安装 iKuai 虚拟机

选择 【典型】

在这里插入图片描述

选中刚刚下载的 【iso 文件】

在这里插入图片描述

选择 【CentOS7 64位】 版本的虚拟机

在这里插入图片描述

找个地方放虚拟机

在这里插入图片描述

通常来说 10 GB 就够了,但为了后面方便装东西省得存储空间不够了我还是满上了

image-20240403200349587

(3) 配置 iKuai 虚拟机

内存要大于 2GB,否则无法安装系统

image-20240403200550522

【网络适配器】改成 【VMnet0】

image-20240403200632198

再添加一个网络适配器

image-20240403200730779

【网络适配器 2】选择【VMnet1】

image-20240403200811975

配置完了保存

image-20240403200916375

打开虚拟网络编辑器

image-20240403200956639

确保 【VMnet0】桥接到【Realtek …】 网卡

image-20240403201014651

模糊点①
问:如果有多个网卡怎么选,一定要选 Realtek 开头的吗?

答:如果你有很多网卡,你可以看看网络适配器选项卡中列出的网卡,不要选择 WLAN 网卡,要选择有线连接的网卡也就是以太网。

image-20240403201258164

设置 【VMnet1】 如图配置,你可以更改 192.168.154.0 为任意子网,只要不和其他子网发生冲突就行。

image-20240403201520547

模糊点②
问:如果我网卡连接的子网 IP 是 10 开头的怎么办?我要改成 10 开头的子网 IP 吗?

答:不用!虽然我还没有彻底搞清楚 VMware 局域网是怎么弄的,但我网卡连的也是 10 开头的子网,用 192.168.xxx.xxx 完全没问题。

最后保存,然后启动虚拟机,会提示进行安装系统。安装后会重新启动,然后进行接下来的操作。

(4) 配置 iKuai

输入 1 回车

image-20240403202709725

执行以下命令:

del lan1
set lan1 eth1

主要目的就是让你能够通过一个网卡访问后台管理界面。wan1 是后面再部署的,这里先别管。

image-20240403202757994

输入 q 回车回到主菜单

image-20240403202955707

输入 2 回车

image-20240403203024682

输入 0 回车,配置 LAN1 地址

image-20240403203056084

还记得你 【VMnet1】 配置的子网 IP 是多少吗?如果你设置的时 192.168.x.0 那么这里输入 192.168.x.1 即可。这个 IP 用于你访问 iKuai 软路由后台的 IP。如果输入是乱码,按一下数字键盘 NUM LOCK 按钮即可。

image-20240403203142661

最后设置完成,回到主菜单即可。

(5) 配置多拨分流

打开 192.168.154.1 进入 iKuai 后台,如果打不开,你需要手动配置一下适配器的 IP。如果打得开,那跳过到下一步直接进行配置多拨分流。

image-20240403203938275

image-20240403204004007

还是一样的,你之前设置的是 192.168.x.1 这里就是多少,注意这里的 IP 地址不是 1 了,这里设置的是当前主机在这个网卡里面的子网 IP 信息,由于有时候 DHCP 并不起作用所以无法获取 IP,也就无法和软路由通信了。

image-20240403204311916

打开 192.168.154.1 进入 iKuai 后台,默认账号和密码都是 admin

登陆后点击 【wan1】,绑定网卡

image-20240403203853980

如果你的网络需要登录才能连接,那么就选择第三个 【ADSL/PPPoE拨号】,不需要就直接 【DHCP/动态IP】。

点击添加按钮添加多个 IP,注意名称要不一样,比如我这里的 vwan1~6

注意:添加完记得保存。

image-20240403204655677

再打开 【DHCP 服务器】,添加一个 【DHCP 服务器】

image-20240403205028619

如此配置,客户端地址同样是改成你配置的样子。

image-20240403205135007

添加完记得重启 【DHCP服务】,如果显示像我一样显示服务正常就行。

image-20240403205514410

添加一个分流策略

image-20240403205322445

image-20240403205343381

最后改一下适配器,改成自动的就行。

image-20240403205732001

2.3 测试速度

由于我们使用的是 源IP+目的IP+目的端口 分流,也就是说我们可能看视频和下载东西很可能会分流到不同的 IP 上,如果每个 IP 原来的网速是 1MB/s,那么你看视频就是 1MB/s,同时下载东西的网速也是 1MB/s。

但问题在于我们用测速软件也因为是连同一个服务器而不会分流,那么网速看起来没有提升。所以为了能够测到负载均衡功能正常且确实用到了不同的网络进行分流,我想到了一个办法,那就是用迅雷同时下载 3 个不同服务器上的文件。

用迅雷同时下载这三个文件:

  • 阿里云:https://mirrors.aliyun.com/centos/8/isos/x86_64/CentOS-8.5.2111-x86_64-dvd1.iso
  • 腾讯云:https://mirrors.cloud.tencent.com/centos/8/isos/x86_64/CentOS-8.5.2111-x86_64-dvd1.iso
  • 搜狐云:http://mirrors.sohu.com/centos/8/isos/x86_64/CentOS-8.5.2111-x86_64-dvd1.iso

这三个文件都是 CentOS8 的镜像文件,大小为 10GB,分别放在了三家公司的镜像源网站里。我们使用迅雷下载:

e595c43e3e49226d5a5cc1c89e0177f2

博主的网速本来是 1.5MB/s 的,现在直接升到了 4.3MB/s。

查看 状态监控-线路监控,可以看到有多个 IP 的网速被拉满了!

59115b736bd8fdab8a4b7a8f94598947

那么理论上你电脑上不同软件的网速都是满速状态,互不干扰,即使你在下东西也可以流畅地浏览网页了!

3. Clash 部署

(1) 配置磁盘分区

Clash 得安装在虚拟机才行,因此我们本地安装的 Clash 会导致网络异常。

在部署之前我们需要为 Docker 开辟一个存储空间。

打开系统设置-磁盘管理-磁盘分区,选择【快速分区】

image-20240403211327077

为系统日志分配 5GB 足矣,剩下 15GB 留给我们使用。保存后虚拟机将重启,我们等待一段时间重新登陆系统。

image-20240403211555898

打开该分区的设置,设为普通存储,挂载路径为 sda6,这里可以取自定义的名字。

image-20240403211728215

(2) 安装 Docker

根据指引安装 Docker 插件

image-20240403212156815

这里会提示你绑定爱快云平台,绑定登陆后打开插件市场,点击【安装】,为你的设备安装即可。

image-20240403212340908

安装后需要等待一段时间部署,因此这里不要着急,等刷新出来了再进入 Docker

image-20240403212553547

点击【服务设置】

image-20240403212633669

这里选择存储数据的分区为刚刚开的分区,镜像库 URL 使用腾讯的:https://mirror.ccs.tencentyun.com

image-20240403212744190

(3) 安装 Clash

将 Clash 的配置文件 xxx.yaml 上传到 sda6/ikuai/clash/

image-20240403211935052

启动 Docker 服务后,添加镜像

image-20240403212852266

输入 laoyutang/clash-and-dashboard 搜索,点击下载

image-20240403212939130

继续添加一个网络

image-20240403213034550

这里输入 IPv4 的地址不要和之前的 192.168.154.0 重复了!换一个新的网段,比如 192.168.168.2

  • IPv4 地址:192.168.168.2/24
  • IPv4 网关:192.168.168.2

image-20240403213055148

添加容器

image-20240403213319878

如下配置:

  • 容器名称:clash
  • 内存占用:128
  • 选择镜像文件:laoyutang/clash-and-dashboard:latest
  • 选择网络接口:doc_clash
  • IPv4 地址:192.168.168.1
  • 开机自启:√(可以不勾,不过每次重启电脑又得重新启动 Clash 比较麻烦)
  • 源路径:/sda6/ikuai/clash/xxx.yaml
  • 目的路径:/root/.config/clash/config.yaml

image-20240403213544822

最后启用 Clash,打开 192.168.168.1:8080 可以查看后台,设置相关配置。

image-20240403214118043

(4) 设置代理

最后打开代理服务器设置

image-20240403214238789

设置代理为如下

image-20240403214258190

4. 热点:一起瓜分互联网

前面我们实现了笔记本的网速自由,但我们的手机、我们室友的电脑还在嗷嗷待哺,我们自然而然地想到直接开个热点就行了,但还是有一些注意事项

(1) 启动 Windows 移动热点

Windows 搜索移动热点,打开

  • 共享我的以下 Internet 连接:选择你有线网卡连的网络

image-20240404145921019

(2) 配置 Windows 移动热点

将 iKuai 软路由的网卡共享给【本地连接*N】,这个本地连接就是你打开移动热点后会多出来的一个适配器,你可以先关掉再打开,找一下是哪个。

这一步的目的是可以让你的热点找到 iKuai 软路由的网段网络。

image-20240404150208647

(3) 网络测速

博主的网速本来是 1MB/s,这是在手机设备上的下载速度,经过网络分流能模拟出在不同设备上同时下载的效果。

dd9fa8a14638c49ced38849c4994ab1c

5. 进一步提速!

5.1 原理

我们设置的分流规则是【源IP+目的IP+目的端口】,如果我们用迅雷下载一个文件,那么只会占用一个 vwan

这种分流规则好处是稳定不丢包,但在 vwan 负载过大时还是可以提供降级的分流,这给我们期盼的即稳定又提速的网络设计提供了可能。

官方解释:【源 IP + 目的 IP + 目的端口分配】系统会按策略组中的比例分配连接数(新建连接数为基础),但是会优先保证相同的 源 IP + 目的 IP + 目的端口 走相同的接口,使网络更加稳定,相比上一个均衡模式,该模式会更均衡一些。https://www.ikuai8.com/zhic/ymgn/lyym/lkfl/ea195/c316b.html

5.2 案例一:分段下载神器(1MB/s->9MB/s)

IDM(Internet Download Manager)是一款流行的下载管理软件。IDM通过分段下载技术实现这一点,将下载文件分成多个部分,然后同时下载这些部分,这样可以更快地完成整个下载过程。

IDM 在待下载文件所在服务器网络本来较差时,通过分段下载来提速到最大带宽,也就是说最快也不会快过你的最大带宽。但如果在待下载文件所在服务器网络特别好时,比如这里的镜像源加速网站,使用 IDM 也不会快过你的最大带宽。

此时 IDM 分段下载技术 + iKuai 多拨分流技术 将会极大地发挥网络复用率!因为 IDM 可以提供分段下载的能力,每一个段可以使用不同的 vwan 网络!

博主使用的是 10 个 vwan 进行分流,如图所示,在博主 1MB/s 的网络上,下载速度飙升至 9MB/s

image-20240406171748629

5.3 案例二:安卓端的分段下载(1MB/s->10MB/s)

Android 端也有类似 IDM 的软件,例如 IDM+、1DM、ADM(Advance Download Manager) 等等。这里使用 ADM 做演示,可以看到下载网速飙升至 10MB/s。不过这不像 Windows 端可以自动调用下载程序,当你想下载比较大的文件时,可以试着将下载链接复制到 ADM 进行下载提速。

image-20240406202857157


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/qq_29997037/article/details/137356185

如果你喜欢这篇文章,请考虑访问原文链接以获取最新内容。转载请注明出处和作者,感谢您的尊重和支持。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/303570.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis基本概念

什么是Redis Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 Redis的用处 缓存 缓存现在几…

shell脚本2

变量 变量是在程序中保存用户数据的一段内存存储空间,变量名是内存空间的首地址 字母、数字、下划线组成,不能以数字开头 原则:直接使用,不需要变量声明 格式:变量名 变量的值 环境变量 关闭窗口即会失效 若要永久生…

数据结构—红黑树

红黑树介绍 红黑树(Red Black Tree)是一种自平衡二叉查找树。由于其自平衡的特性,保证了最坏情形下在 O(logn) 时间复杂度内完成查找、增加、删除等操作,性能表现稳定。 在 JDK 中,TreeMap、TreeSet 以及 JDK1.8 的 …

数据生成 | Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成

数据生成 | Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成 目录 数据生成 | Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成生成效果基本描述模型描述程序设计参考资料 生成效果 基本描述 1.Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成&#xf…

深度学习实践(一)基于Transformer英译汉模型

本文目录 前述一、环境依赖二、数据准备1. 数据加载程序解析word_tokenize()将字符串分割为一个个的单词,并由列表保存。 2. 构建单词表程序解析(1)将列表里每个子列表的所有单词合并到一个新列表(没有子列表)中。&…

RabbitMQ3.13.0起支持MQTT5.0协议及MQTT5.0特性功能列表

RabbitMQ3.13.0起支持MQTT5.0协议及MQTT5.0特性功能列表 文章目录 RabbitMQ3.13.0起支持MQTT5.0协议及MQTT5.0特性功能列表1. MQTT概览2. MQTT 5.0 特性1. 特性概要2. Docker中安装RabbitMQ及启用MQTT5.0协议 3. MQTT 5.0 功能列表1. 消息过期1. 描述2. 举例3. 实现 2. 订阅标识…

浅聊java集合框架中的java.util.LinkedList

java集合框架总览 Java集合框架是一个用来代表和操纵集合的统一架构,它为管理和组织对象的集合提供了一组类和接口。这个框架包含三个主要部分:接口、实现和算法。 接口: Collection:这是集合框架的根接口,定义了集…

亚马逊运营必看!如何运用自养号测评获得买家评论转销量?

作为亚马逊卖家,相信大家对亚马逊的产品星级评分 (Rating) 都不陌生,这几颗亮眼的星星,不仅可以让你的Listing脱颖而出,获得足够多、足够高的产品评分,也是促使消费者下单的重要因素之一。 那么,亚马逊运营…

3D可视化技术亮相高铁站,引领智慧出行新潮流

在科技飞速发展的今天,我们的生活正经历着前所未有的变革。高铁站作为现代交通的重要枢纽,也在不断地创新和进步。 3D可视化技术通过三维立体的方式,将高铁站内部和外部的结构、设施、流线等以更加直观、生动的形式呈现出来。乘客们只需通过手…

全国高等学校sql

教育部颁发的最新高等学校名单,sql已整理好(按照省份树形结构),是mysql8版本的 全国高等学校:预览地址:https://kdocs.cn/l/ckaFzCWMV1jn sql下载地址: https://pan.imgbed.link/file/22581

mac/win使用pyinstaller打包app/exe文件,活着执行脚本,双击运行

🌸 踩坑记录 python环境最好使用虚拟环境,推荐使用conda管理,并且若本地有python环境,不要使用和 本地环境版本 相同的虚拟环境 这里踩坑较多,已经记不清楚注意点 虚拟环境python版本不要和本地环境一样 mac/win只能…

匿名信一封来信一封云来信表白祝福道歉短信H5公众号,小程序系统搭建(搭建赠送人工传话系统+主机管理面板)

“一封来信”是最近某音上爆火的一个活动话题,可以通过H5网站,编辑自己想要对某人说的话或者祝福,网站会把您想说的发给您预留的号码,可以特定时间,特定话题。 最近的兴起是给朋友或暗恋的人发送新年祝福,…

Leetcode算法训练日记 | day21

一、二叉搜索树的最小绝对差 1.题目 Leetcode:第 530 题 给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。 差值是一个正数,其数值等于两值之差的绝对值。 示例 1: 输入:root [4,2,…

『大模型笔记』LLMs入门:从头理解与编码LLM的自注意力机制

LLMs入门:从头理解与编码LLM的自注意力机制 这里直接引用我语雀上的的文章:《从头理解与编码LLM的自注意力机制》

python第四次作业

1、找出10000以内能被5或6整除,但不能被两者同时整除的数(函数) def func():for i in range(10001):if (i % 5 0 or i % 6 0) and i % 30 ! 0:print(i,end " ")func() 2、写一个方法,计算列表所有偶数下标元素的…

AWVS/Acunetix Premium V24.3.2403高级版漏洞扫描器

前言 Acunetix Premium 是一种 Web 应用程序安全解决方案,用于管理多个网站、Web 应用程序和 API 的安全。集成功能允许您自动化 DevOps 和问题管理基础架构。 Acunetix Premium:全面的 Web 应用程序安全解决方案 Web 应用程序对于企业和组织与客户、…

优先级队列

优先级队列的基本使用 模拟实现上面的接口函数&#xff0c;优先级队列不是队列&#xff0c;而是类似一个堆一样的东西&#xff0c;我们先来试试它的接口函数是怎么个样子的。 需要包含的头文件是queue。 #include<iostream> #include<queue> using namespace std;…

Qt Creator 新建项目

&#x1f40c;博主主页&#xff1a;&#x1f40c;​倔强的大蜗牛&#x1f40c;​ &#x1f4da;专栏分类&#xff1a;QT❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 目录 一、使用 Qt Creator 新建项目 1、新建项目 2、选择项目模板 3、选择项目路径 4、选择构建系统 5…

基于达梦数据库开发-python篇

文章目录 前言一、搭建demo前提初始化简单demo 二、可能出现的异常情况DistutilsSetupErrorNo module named dmPythonlist报错 总结 前言 出于信创的考虑&#xff0c;近年来基于国产数据库达梦的应用开发逐渐变多。本文将介绍在windows环境下基于DM8版本的python的简单开发使用…

PaddleVideo:onnx模型导出

本文节介绍 PP-TSM 模型如何转化为 ONNX 模型&#xff0c;并基于 ONNX 引擎预测。 1&#xff1a;环境准备 安装 Paddle2ONNX python -m pip install paddle2onnx 安装 ONNXRuntime # 建议安装 1.9.0 版本&#xff0c;可根据环境更换版本号 python -m pip install onnxrunti…