当前位置: 首页 > news >正文

突破校园网限速:使用 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 网络!

如图所示,在博主 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

相关文章:

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

文章目录 1. 简介2. iKuai 部署2.1 安装 VMware2.2 安装 iKuai(1) 下载固件(2) 安装 iKuai 虚拟机(3) 配置 iKuai 虚拟机(4) 配置 iKuai(5) 配置多拨分流 2.3 测试速度 3. Clash 部署(1) 配置磁盘分区(2) 安装 Docker(3) 安装 Clash(4) 设置代理 4. 热点:一起瓜分互…...

03-JAVA设计模式-工厂模式详解

工厂模式 工厂设计模式是一种创建型设计模式,它提供了一种封装对象创建过程的机制,将对象的创建与使用分离。 这种设计模式允许我们在不修改客户端代码的情况下引入新的对象类型。 在Java中,工厂设计模式主要有三种形式:简单工厂…...

百度文心大模型推理成本降至1% / 马斯克起诉OpenAI |魔法半周报

我有魔法✨为你劈开信息大海❗ 高效获取AIGC的热门事件🔥,更新AIGC的最新动态,生成相应的魔法简报,节省阅读时间👻 🔥资讯预览 百度文心大模型推理成本降至1%,与三星、荣耀等企业达成合作 马斯…...

Struts2的入门:新建项目——》导入jar包——》jsp,action,struts.xml,web.xml——》在项目运行

文章目录 配置环境tomcat 新建项目导入jar包新建jsp界面新建action类新建struts.xml,用来配置action文件配置Struts2的核心过滤器:web.xml 启动测试给一个返回界面在struts.xml中配置以实现页面的跳转:result再写个success.jsp最后在项目运行 配置环境 …...

git 标签功能操作以及回退

Git 标签功能允许开发者为特定的提交打上标签,以便后续能够方便地引用这些提交。标签通常用于标记重要的版本或里程碑,例如软件发布的版本号。与分支不同,标签指向的是固定的提交,一旦设置,就不能轻易更改。下面是一些…...

利用python实现文字转语音

代码如下: import pathlib import tkinter as tk import tkinter.ttk as ttk import tkinter.filedialog as filedialog import tkinter.messagebox as msgbox import pyttsx3class Application(tk.Tk):def __init__(self):super().__init__()self.title("文本…...

拾光坞N3 ARM 虚拟主机 i茅台项目

拾光坞N3 在Dcoker部署i茅台案例 OS:Ubuntu 22.04.1 LTS aarch64 cpu:RK3566 ram:2G 部署流程——》mysql——》java8——》redis——》nginx mysql # 依赖 apt update apt install -y net-tools apt install -y libaio* # 下载mysql wg…...

docker安装nacos,单例模式(standalone),使用mysql数据库

文章目录 前言安装创建文件夹"假装"安装一下nacos拷贝文件夹删除“假装”安装的nacos容器生成nacos所需的mysql表获取mysql-schema.sql文件创建一个mysql的schema 重新生成新的nacos容器 制作docker-compose.yaml文件查看网站 前言 此处有本人写得简易版本安装&…...

【运输层】传输控制协议 TCP

目录 1、传输控制协议 TCP 概述 (1)TCP 的特点 (2)TCP 连接中的套接字概念 2、可靠传输的工作原理 (1)停止等待协议 (2)连续ARQ协议 3、TCP 报文段的首部格式 1、传输控制协议…...

深入浅出 -- 系统架构之Keepalived搭建双机热备

Keepalived重启脚本双机热备搭建 ①首先创建一个对应的目录并下载keepalived安装包(提取码:s6aq)到Linux中并解压: [rootlocalhost]# mkdir /soft/keepalived && cd /soft/keepalived [rootlocalhost]# wget https://www.keepalived.…...

如何做好产业园运营?树莓集团:响应政府号召,规划,注重大局观

随着经济的发展和产业结构的调整,产业园区的建设和发展已经成为推动地方经济的重要力量。如何做好产业园运营,提高行业竞争力,现已成为了一个亟待解决的问题。树莓集团作为一家有着丰富产业园运营经验的企业,积极响应政府号召&…...

NIO与BIO

当谈到 Java 网络编程时,经常会听到两个重要的概念:BIO(Blocking I/O,阻塞 I/O)和 NIO(Non-blocking I/O,非阻塞 I/O)。它们都是 Java 中用于处理 I/O 操作的不同编程模型。 一、介…...

YOLOv5实战记录05 Pyside6可视化界面

个人打卡,慎看。 指路大佬:【手把手带你实战YOLOv5-入门篇】YOLOv5 Pyside6可视化界面_哔哩哔哩_bilibili 零、虚拟环境迁移路径后pip报错解决 yolov5-master文件夹我换位置后,无法pip install了。解决如下: activate.bat中修改…...

HTML5.Canvas简介

1. Canvas.getContext getContext(“2d”)是Canvas元素的方法,用于获取一个用于绘制2D图形的绘图上下文对象。在给定的代码中,首先通过getElementById方法获取id为"myCanvas"的Canvas元素,然后使用getContext(“2d”)方法获取该Ca…...

excel统计分析——多项式回归

参考资料:生物统计学 多项式回归属于单变量曲线回归,但其形式和求解方法与多元线性回归相似。多项式回归的数学模型为: 令,,,,则 由于X不可逆,两边同时乘以X得,&#xff…...

SQLyog连接数据库8.0版本解析错误问题解决方案

问题描述: 解决方案: alter userrootlocalhostidentified with mysql_native_password by 密码; 再次连接就可以了。...

【数据库】SQL简介

SQL(Structured Query Language,结构化查询语言)是一种用于管理关系型数据库管理系统(RDBMS)的标准化语言。它用于访问和操作数据库中的数据,执行各种任务,如插入、更新、删除和检索数据&#x…...

AWS入门实践-利用S3构建一个静态网站

使用Amazon S3托管静态网站是一个流行的选择,因为它简单、成本效益高,并且易于维护。静态网站由不含服务器端脚本的文件组成,如HTML、CSS和JavaScript文件。下面是使用S3托管静态网站的操作步骤: 如果大家没有AWS免费账号&#x…...

使用Linux strace追踪系统调用: 一个详细指南

使用Linux strace追踪系统调用: 一个详细指南 Linux strace是一个强大的命令行工具,用于监视和调试进程中发生的系统调用和信号。它对于系统管理员和开发人员来说是理解程序行为和解决问题的重要工具。 什么是strace? strace是一种跟踪运行中的进程执…...

python 笔记

文章目录 pdbpdb开始调试pythonpdb设置断点单步执行进入到函数的内部执行到下一个断点或程序结束调用栈查看命令查看当前函数调用堆栈向上一层函数查看调用堆栈查看源代码 importimport 用法 numpy导入numpy模块numpy常用函数np.argmaxnp.sum range生成连续序列生成不连续序列 …...

C++实现分布式网络通信框架RPC(3)--rpc调用端

目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中,我们已经大致实现了rpc服务端的各项功能代…...

K8S认证|CKS题库+答案| 11. AppArmor

目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...

PHP和Node.js哪个更爽?

先说结论,rust完胜。 php:laravel,swoole,webman,最开始在苏宁的时候写了几年php,当时觉得php真的是世界上最好的语言,因为当初活在舒适圈里,不愿意跳出来,就好比当初活在…...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...

dedecms 织梦自定义表单留言增加ajax验证码功能

增加ajax功能模块&#xff0c;用户不点击提交按钮&#xff0c;只要输入框失去焦点&#xff0c;就会提前提示验证码是否正确。 一&#xff0c;模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列&#xff0c;以便知晓哪些列包含有价值的数据&#xff0c;…...

Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?

在大数据处理领域&#xff0c;Hive 作为 Hadoop 生态中重要的数据仓库工具&#xff0c;其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式&#xff0c;很多开发者常常陷入选择困境。本文将从底…...

蓝桥杯 冶炼金属

原题目链接 &#x1f527; 冶炼金属转换率推测题解 &#x1f4dc; 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V&#xff0c;是一个正整数&#xff0c;表示每 V V V 个普通金属 O O O 可以冶炼出 …...

C++.OpenGL (14/64)多光源(Multiple Lights)

多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式

今天是关于AI如何在教学中增强学生的学习体验&#xff0c;我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育&#xff0c;这并非炒作&#xff0c;而是已经发生的巨大变革。教育机构和教育者不能忽视它&#xff0c;试图简单地禁止学生使…...