限速分析

  和学校信息中心斗智斗勇很多年了,来分享一些经验。经测试发现学校最初的限速只对接入设备的外网进行限速,而局域网内的设备之间数据传输是不限速的,那么解决办法:

  • 从接入端入手,最简单的办法就是多播负载均衡用openwrt可以轻松实现,在此之前需要解决多播WAN口的认证问题,之前使用的是锐捷认证,使用mentuhust可以脱离原有的web认证,可以在其他没有GUI的系统中进行认证,并且该认证可以绑定到每一个虚拟WAN口(该程序的认证有线程保护,需要自行将pid文件干掉即可),具体操作参考仓库 MHSyncdial
  • 从局域网入手,该方法也是最轻松也是最过瘾的,需要在学校局域网找到不限速的设备,在该设备上建立流量中转以绕过外网限速,目前发现学校图书馆和实验室的某些设备不限速,如果你有学校提供的服务器(比如说我😜)那么就更好办了,手动搭个VPN、PPTP、IPsec或者Xray中转代理就行。
  • 从特殊端口入手,如53 DNS、67/68DHCP端口这些端口作为网络基本服务端口一般学校不会做限制,实测通过这些端口转发流量至外网服务器可绕开限速,但是该方法有个弊端上网的流量依赖外网的服务器延迟什么都很高,并且国内服务器出口带宽价格很贵,国外的延迟高,所以不推荐。

以上解决方案是基于锐捷认证校园网的基础上做的测试,宿舍常年网速保持在200mbp/s以上,接入宿舍的网线是100m的四根,提前过上了小康生活,还可以更高只不过感觉已经够用了,不然有点过分了: )

  对于以上的方法一是最容易的,但是也是最不稳定的,接口时不时会掉线其次是大部分学校接入了多种网络做了三网聚合,对于打游戏的同学体验很差🤡。比较推荐第二种,简单暴力,麻烦的是找一台不限速的设备,学校的服务器群那是个不错的选择 : )

@后续

  经过两个学期的奔放,学校更换了上网认证方式由锐捷换成了深澜,不过有开源的力量可以省很多时间精力,社区有人复刻了深澜认证的登录验证算法,登录参数不同的学校会有不同,自己抓包分析一下就好,改了个自己学校可以用的有需要的自取 SrunLogin ,母校不仅换了验证方式而且对局域网也加了限制,原来的局域网点对点也限速了,而且对端口转发的办法也已经失效: ( ,或许是信息中心发现了端倪,毕竟前两个学期小康生活太舒服,流量稍微大了点。

  由于临近毕业已没有时间精力在研究多WAN口的深澜认证方式,社区好像有人解决了,可以的话openwrt多播还可以继续搞。自己手中还有一台闲置的工控机索性就让他充当了工具王,装了个Esxi 虚拟了几台openwrt出来作为上游,在搞一台iKuai作为下游对接,将上游的网络均匀接入iKuai,并且在局域网找了一个电信的IP,不知是不是因巧合该局域网IP的外网出口一直是电信,很舒服,通过iKuai的软件分流和多播配合 最大化的使用网络资源,软件分流将打游戏的流量直接划属电信的openwrt出口,宿舍LOL延迟38ms,下载和视频走另外几个出口做分载,其实限速也就那样,花个几小时解决带来长时间上网的愉悦。
架构设计:

xyw-framework

Esxi虚拟网络:

esxi-xywnet

上游出口:

ikuai-upnet

软件分流 :

ikuai-appnet

多播负载均衡:

ikuai-syncdial

以上方案有忽略一些细节,文章主要做技术原理分享,需要一定的专业知识基础及动手能力。还请校友遵守学校的规章制度,认真学习才是重中之重!

最后修改:2024 年 04 月 25 日
如果觉得我的文章对你有用,请随意赞赏