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

文章目录

  • 1. 简介
  • 2. iKuai 部署
    • 2.1 安装 VMware
    • 2.2 安装 iKuai
      • (1) 下载固件
      • (2) 安装 iKuai 虚拟机
      • (3) 配置 iKuai 虚拟机
      • (4) 配置 iKuai
      • (5) 配置多拨分流
    • 2.3 测试速度
  • 3. Clash 部署
    • 3.1 准备工作
      • (1) 配置磁盘分区
      • (2) 安装 Docker
      • (3) 安装 Clash
      • (4) 设置代理


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 位的!!!**否则后面无法安装 Clash

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 后台,点击 【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 部署

如果你没有这方面需求,第三章可以跳过。

3.1 准备工作

(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

记得保存,最后可以测试一下能不能上 谷歌学术 开心地学习啦!

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

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

相关文章

014——超声波模块驱动开发Plus(基于I.MX6uLL、SR04和poll机制)

目录 一、基础知识 二、分析为什么打印会影响中断 三、驱动程序 四、应用程序 五、验证及其它 一、基础知识 013——超声波模块驱动开发(基于I.MX6uLL与SR04)-CSDN博客 二、分析为什么打印会影响中断 asmlinkage __visible int printk(const ch…

Vue的双向绑定v-model详细介绍

使用: 比如用户在登录注册时需要提交账号密码; 比如用户创建,更新时,需要提交一些数据; v-model指令可以在表单 input、textarea以及select元素上创建双向绑定; 它会根据控件类型自动选取正确的方法来更…

一条SQL查询语句是如何执行的

这是专栏的第一篇文章,我想来跟你聊聊 MySQL 的基础架构。我们经常说,看一个事儿千万不要直接陷入细节里,你应该先鸟瞰其全貌,这样能够帮助你从高维度理解问题。同样,对于 MySQL 的学习也是这样。平时我们使用数据库&a…

Windows11安装MySql-8.0.36安装详细教程(保姆级教程)

之前一直用的mysql5.7,最近导入一个项目一直报错,经查阅发现数据库mysql版本太老,今天特地重头下载安装配置一下,做个记录供大家参考。 下载安装包: 下载地址:https://dev.mysql.com/downloads/ 进入后选…

【linux】公共服务器如何清理过多的.cache缓存

【linux】公共服务器如何清理过多的.cache缓存. 【先赞后看养成习惯】求关注+点赞+收藏😀 问题叙述:用的公共服务器,管理员反映.cache缓存过大,让我清理一下 .cache介绍:在Linux系统中,.cache目录通常用于存储应用程序运行时生成的缓存文件。这些文件包括临时文件、预览…

C++STL--排序算法

sort 使用快速排序,平均性能好O(nlogn),但最差情况可能很差O(n^2)。不稳定。 sort(v.begin(),v.end());//对v容器进行排序,默认升序 sort(v.begin(),v.end(),greater<int>());//降序排序对于支持随机访问的迭代器的容器&#xff0c; 都可以利用sort算法直接对其进行排序…

滑动窗口算法 - LC76 最小覆盖子串

接上文滑窗基础题&#xff1a;滑动窗口算法 - LC3 无重复字符的最长子串-CSDN博客&#xff0c;介绍了滑窗的基础题目和滑窗解法模板&#xff0c;这次带来滑窗进阶题解。 76. 最小覆盖子串 困难 给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果…

基于SSM的师生交流平台

目录 背景 技术简介 系统简介 界面预览 背景 传统的师生互动平台主要依赖于面对面的线下交流&#xff0c;用户必须亲自到场以获取和交流相关信息。然而&#xff0c;随着信息技术的广泛传播&#xff0c;众多教育机构开始转向线上发展&#xff0c;寻求更多样化的发展途径。线…

day17-二叉树part04

110.平衡二叉树 &#xff08;优先掌握递归&#xff09;后序遍历 左右中 class Solution {public boolean isBalanced(TreeNode root) {return getHeight(root) ! -1;}//递归三部曲 确定方法的参数与返回值private int getHeight(TreeNode root){//明确终止条件if(root null){r…

数据库管理-第168期 惯性(20240402)

数据库管理168期 2024-04-02 数据库管理-第168期 惯性&#xff08;20240402&#xff09;1 加法的惯性2 创新的惯性3 长期的责任总结 数据库管理-第168期 惯性&#xff08;20240402&#xff09; 作者&#xff1a;胖头鱼的鱼缸&#xff08;尹海文&#xff09; Oracle ACE Associa…

JS-优先级相关出现的一个小问题

console.log("嵌套函数中调用fn this值被赋给self" self o);这个输出会是 false。 在 JavaScript 中&#xff0c;比较两个对象是否相等时&#xff0c;实际上比较的是它们在内存中的引用地址&#xff0c;而不是它们的属性值。即使两个对象有相同的属性值&#xff…

C++11:声明 初始化

C11&#xff1a;声明 & 初始化 初始化{ }初始化initializer_list 声明autodecltypenullptr 初始化 { }初始化 在C98中&#xff0c;允许使用花括号{ }对数组或者结构体元素进行统一的列表初始化。 用{ }初始化数组&#xff1a; int arr[] { 1, 2, 3, 4, 5 };用{ }初始化…

详解2024年阿里云服务器租用价格表,最新报价

阿里云服务器租用价格表2024年最新&#xff0c;云服务器ECS经济型e实例2核2G、3M固定带宽99元一年&#xff0c;轻量应用服务器2核2G3M带宽轻量服务器一年61元&#xff0c;ECS u1服务器2核4G5M固定带宽199元一年&#xff0c;2核4G4M带宽轻量服务器一年165元12个月&#xff0c;2核…

C++中的List容器用法详解

文章目录 C中的List容器用法详解List 的特点List 的重要接口用法介绍1.创建和初始化Listlist 2.插入元素push_backpush_forntinsert 删除元素pop_backpop_fontclearerase 遍历List迭代器遍历范围for遍历 排序Listsort 反转Listreverse 转移Listsplice 去重unique 合并merge 总结…

网站可扩展架构设计——中台

从公众号转载&#xff0c;关注微信公众号掌握更多技术动态 --------------------------------------------------------------- 一、中台简介 1.传统项目架构的痛点 (1)重复造轮子 各项目相对独立&#xff0c;许多项目在重复造轮子&#xff0c;让项目本身越来越臃肿&#xf…

ts之基本类型,联合类型,函数,类的概念

1.ts中基础类型 数字 字符串 布尔 数组 元组 any never void null undefined 枚举 1.最基础的就是数字 字符串 布尔 number 和 大Number的区别 js特性 装箱的概念 xxx.xxx&#xff0c;string,boolean同理 let num1: number 1; let num2: Number 1; // 用来描述实例的 类也可…

精通并发【基础四】:创建线程的几种方式

在 Java 中&#xff0c;多线程编程是一种常见且强大的编程范式&#xff0c;它允许程序同时执行多个任务。创建线程是多线程编程的基础&#xff0c;Java 提供了几种不同的方法来创建和启动线程。本文将介绍三种常用的创建线程的方法&#xff1a;继承 Thread 类、实现 Runnable 接…

[Leetcode笔记] 动态规划相关

前言 写题目写到了一些和动态规划相关的内容&#xff0c;所以在这里记录一下 LCR 089 题解思路 总的来说&#xff0c;就是用一个数组去存储当前的最优解&#xff0c;然后从0开始一路向上顺推过去&#xff0c;求得最后一位的最优解。 class Solution { public:int rob(vect…

MT3016 竹鼠通讯

在真空中&#xff0c;一块无限平坦光滑绝缘不导热草地上有很多光滑且相同球形竹鼠&#xff0c;它们的坐标为&#xff08;xi​&#xff0c;yi​&#xff09;。竹鼠之间会通过脑电波联系彼此。现在请问相距最近两只竹鼠的直线距离分别是多少&#xff08;所有竹鼠都在草地的第一象…

检测头篇 | 利用RT-DETR模型的检测头去替换YOLOv8中的检测头

前言:Hello大家好,我是小哥谈。RT-DETR号称是打败YOLO的检测模型,其作为一种基于Transformer的检测方法,相较于传统的基于卷积的检测方法,提供了更为全面和深入的特征理解,将RT-DETR检测头融入YOLOv8,我们可以结合YOLO的实时检测能力和RT-DETR的深度特征理解能力,打造出…