使用虚拟机安装ikuai系统进行DHCP多拨

  1. 1. 前言及网络环境
  2. 2. 最初的尝试——AP模式
  3. 3. 进一步尝试——多拨
    1. 3.1. 如何让一台设备获取多个IP
    2. 3.2. 如何有效的利用这些IP进行网速提升
  4. 4. 实践——物理机软路由多拨
  5. 5. 实践——虚拟机软路由多拨
    1. 5.1. 下载VMware Workstation Pro
    2. 5.2. 下载ikuai的系统镜像
    3. 5.3. 在VMware中安装ikuai虚拟机
    4. 5.4. 初步配置ikuai
    5. 5.5. 手动配置本机IP
    6. 5.6. 进入webui,进行多拨和负载均衡
    7. 5.7. (可选)设置DHCP服务
    8. 5.8. 设置网关跃点数
    9. 5.9. 大功告成
  6. 6. 总结

多图警告:本文全部含有45张图片,使用流量时请慎重观看

声明:本文是基于个人经验所撰写,并不一定准确和效率最高,请务必根据实际情况进行调整和部署。同时多拨有可能涉及其他风险,切勿不要盲目多拨,因使用该技术造成的一切后果均需要由您自己承担,请务必慎重使用。

前言及网络环境

由于本人所在的宿舍网络免费,自然速度十分的惨不忍睹,连个360P的视频都能卡死,此时的网络拓扑图如下:

由于整栋楼有三百人左右,因此学校采取了非常“聪明的”方法保证上网速度——IP限速,这也是为什么每次测速的上限速度总是2.5Mbps左右,而日常1Mbps都很难达到。

最初的尝试——AP模式

这也是最简单最实用的方法,既然是针对IP的限速,那么将宿舍里的每台设备都直接接入交换机进行IP获取,此时的网络拓扑图如下

将路由器仅作为AP使用而不进行二级路由,即可使此路由器接入的设备直连到学校的交换机进行IP获取。这样设置的情况下,每台设备都能获得原先一整个宿舍才能获取的网速,单台设备的网速就大约是700-800KB/s,约5.6-6.4Mbps,而峰值性能甚至能达到1.2MB/s,相对于默认情况已经完全可用了,足以支撑打打网游,看看720P的视频。

目前市面上在售的路由器,除非特别便宜或者特别老的型号,均可以调节成AP模式。

进一步尝试——多拨

由于AP模式的成功,发现通过增加IP数量来获取更高的带宽完全可行。但由于单台设备的限速,还是无法突破1.2MB/s峰值和700KB/s平均的限制。

那么,如果让一台设备拥有多个IP的话,是否能让这台设备获取更高的网速呢?

如何让一台设备获取多个IP

路由器的DHCP服务器是根据设备的MAC地址对其分配IP的,那么通过仿造多个MAC进行多次请求即可为这些虚拟设备获取到对应的IP。

如何有效的利用这些IP进行网速提升

这个问题实际上非常好解决,因为只要涉及到多拨必然会遇到这个问题,因此与之对应的技术负载均衡往往和多拨一起出现,只要配置好负载均衡,即可有效的把这些IP的网速资源进行整合。

那么此时,网络拓扑图就变成了这样

实践——物理机软路由多拨

这种方法其实网上已经教烂了,最简单的方法就是找台有两个(或以上)网口的x86的电脑,刷个ikuai或openwrt进行多拨,实际上我也对此进行了尝试,不过由于一系列原因导致我不得不放弃这个方法(如硬件不兼容、驱动不兼容、macvlan有问题等),但如果你手头上正好有一些废弃的笔记本电脑、淘汰下来的台式机等,我还是很推荐这种方法的。具体的设置流程和下面的虚拟机方法大同小异,主要区别就在于系统的安装和物理设备的架设上,不过并不复杂。

实践——虚拟机软路由多拨

正题终于开始了,在正式尝试该方法之前,请务必确保上面AP模式能够切实提升你的网速后再尝试这个方法,否则大概率会失望而归。

下载VMware Workstation Pro

具体方法请自行搜索,在此不进行演示。

下载ikuai的系统镜像

访问ikuai官网,下载系统镜像。

我这里使用的是64位版的,暂不清楚32位是否可行,但理论上并无差异。

在VMware中安装ikuai虚拟机

  1. 创建虚拟机

  2. 选择典型

  3. 选择ikuai的系统镜像

  4. 选择Linux,版本选 其他Linux 5.X 内核64位(选其他的可能也行,我没试过)

  5. 给虚拟机起个名字,然后选个存放位置

  6. 分配硬盘空间和磁盘存储方式,按照实际需求分配即可

  7. 安装如下步骤,配置好两个网络适配器


注意:如果你使用的是x64的镜像,需要把内存调到2G或更多,否则镜像会安装失败

  1. 调整虚拟网络编辑器,如果没有VMnet0和VMnet可点击添加网络自行添加。



注意:子网IP不一定非得是192.168.31.1,只要不与现有网段冲突即可

初步配置ikuai

  1. 开启虚拟机,安装系统

  2. 系统重启完成后,更换lan口绑定的网卡,然后输入q退回至主菜单。


  3. 更改LAN地址至上一阶段第8步最后设置的网段的第一位,然后输入q退回至主菜单。


手动配置本机IP

注意:如果下一步能够直接进行(能直接访问webui),则可以直接跳过这一步

  1. 进入控制面板\所有控制面板项\网络连接,或按照如图所示进入网络连接

  2. 安装图示操作,注意这里修改的是VMnet1,不要改错了

进入webui,进行多拨和负载均衡

  1. 访问路由器的地址,账号密码均为admin,然后重新设置密码

  2. 点击wan1,绑定eth0,接入方式选基于物理网卡的混合模式,然后选DHCP/动态IP,然后点下保存


  3. 按照图示添加若干个vwan,需要手动给vwan编号,mac地址是随机生成的勿动。


  4. 如图进行负载均衡设置,把全部线路均设置为启用,负载比例均为1

(可选)设置DHCP服务

  1. 如图进入DHCP设置

  2. 如图进行配置,注意替换自己所在的网段

  3. 如果不是服务正常,就重启DHCP服务

  4. 按照“手动配置本机IP”部分,进入到IPv4设置,全选成自动,确认后等待一段时间观察蓝框处是否是Internet

设置网关跃点数

  1. 先按照“手动配置本机IP”部分,进入到IPv4设置,然后点击高级,取消勾选自动跃点,把跃点数改成1

  2. 在powershell中输入 Get-NetIPInterface 查看VMnet1的跃点数是否是最小的(也就是1)

大功告成

去测速网站跑个速度试试吧

总结

基于DHCP进行多拨叠速的方法仅适用于一些特定的网络结构,但稍加改动也是能够使用的,像是校园网这种需要登陆的网络,可以用不同同学的校园网账号分别绑定一个DHCP的IP(比如在绑定mwan1的时候把其他mwan暂时禁用,绑完了再去绑第二个),如果有无线网卡的话也可以把这个虚拟机的lan口直通给无线网卡等。

而且,多拨能叠出来的带宽其实并不稳定(至少我这里不稳定),而且也不能发挥每个IP的满速。因此叠多少条最合适,怎么设置效率最高还是需要各位自己去探索的