锐捷校园网:网络共享与带宽叠加方案(哈理工案例)
前言
本文大致分为以下部分:
- 哈理工校园网现状调研
如需在哈理工进行校园网部署,请务必阅读本章节。即使在其他学校进行类似部署,也建议阅读本章节,因为其中的信息调查流程对网络部署具有一定的参考价值。
- 锐捷校园网:网络共享与带宽叠加
实测使用一个 50M 和两个 30M 账号,多线程下载速度稳定在 100M:
常见需求场景:
- 网络共享:
- 与舍友合租网络,希望多台设备同时接入。
- 校园网设备数量限制严格,难以满足多终端需求。(以哈理工为例,仅允许 2 台设备同时在线,无法满足同时使用手机、平板和电脑的需求。)
- 网速/带宽叠加:
- 高带宽套餐价格昂贵,短期内经济条件难以负担。
- 期望获得更高下载速度。(例如,下载大型游戏往往需要 3 小时以上,体验较为痛苦。)
- 其他:
- 需要在局域网内实现高速传输。
声明:
- 按照网络带宽惯例,本文中“M”单位均指 Mbps(兆比特/秒),而非 MB/s(兆字节/秒)。
- 本人并非哈理工网管会成员,仅是一名计算机爱好者,出于兴趣研究相关方案。
哈理工校园网现状调研
调研时间:2025 年 9 月
资费情况
可选择中国移动、中国电信、中国联通的校园网套餐。首次办理需本人持身份证前往线下登记(西区为一食堂门口,蜜雪冰城隔壁)。当日 16:30 前缴费,可于当晚 22:00 前开通,否则将在次日 22:00 前开通。
可选套餐(按日均资费从低到高,“限时”优惠基本常年有效):
- 30M、150 天:250¥/1.67¥每天(“限时”优惠 200¥/1.33¥每天)
- 40M、150 天:300¥/2¥每天(“限时”优惠 240¥/1.6¥每天)
- 30M、30 天:50¥/1.67¥每天
- 50M、150 天:345¥/2.3¥每天(“限时”优惠 276¥/1.84¥每天)
- 40M、30 天:60¥/2¥每天
- 50M、30 天:69¥/2.3¥每天
价格并不算便宜,如果能和舍友合租,可明显减轻生活费压力。
寝室部署情况
我目前住在西区七公寓,宿舍提供两个网口,由锐捷 RG-MAP752(S)提供,通过产品手册可以得知其提供无线接入点(2.4G 300Mbps 和 5G 867Mbps)及 2 个百兆下联口。
注:该型号于 2020-10-30 已退市,计划 2025-10-30 停止服务,届时可能会进行设备更新。如有更新,将在此处补充说明。
由产品手册得知通过有线接入总带宽最大为 200Mbps,通过无线接入总带宽带宽为 1167Mbps,理论总带宽为 1367Mbps。但上联端口为千兆,故单个寝室理论最大总带宽为 1000Mbps。
但实际学校为了省钱,网线只接了四根线(如下图),故单个寝室实际理论最大总带宽为 100Mbps。
带宽限制
一个校园网账号允许同时使用两个设备。校园网某个界面已标注一个账号内设备共享限速(即购买 50M 套餐是指两设备总速度上限为 50M)。
采用双设备同时持续测速的方法测试,其标注属实。
经过测试,两个账号(一个 50M 账号和一个 30M 账号,或两个 30M 账号)在同一网口上,最高合计只能达到 50M 的速度。笔者猜测这可能是由于锐捷 RG-MAP752(S)接收到的配置限制,也有可能是因为检测到上联端口为 100M,从而自动将单个接口速率限制为 50M。
特别说明
因此,如果你希望通过带宽叠加突破 50M 的限制,请尽量将账号分配到两个物理端口上运行。文章开头跑出的 100M,就是通过两个端口实现的:一个端口跑 50M 账号,另一个端口同时跑两个 30M 账号,合计达到约 100M。
所用系统解析
进入哈尔滨理工大学 | 网络信息中心拉到最底部,可以看见“锐捷 Windows 通用版”的下载链接,安装包标注版本为 V528。(有趣的是,这里有一个无法访问的 PPPoE 自助服务页面)
这说明很有可能学校使用了 v5.28 版本的锐捷校园网服务,并且不支持 PPPoE 拨号。
实测在寝室连接有线网络后,无法通过 PPPoE 拨号的方式上网,仅能通过锐捷提供的客户端登录校园网。
多设备检测
通过“校趣多”微信公众号的“自助服务” - “在线设备管理”功能,用户不仅可以查看登录设备的详细信息(如设备 MAC 地址、终端类型、上网账号、套餐名称、区域名称及上线时间),还可对已上线的设备进行下线管理。
推测校园网在识别多设备连接时,主要依据接入设备的 MAC 地址进行检测。
通过实测发现:
- 一台已登录校园网的终端若开启移动热点,可同时为多个其他设备提供网络。
- 同一设备若配备多张网卡或使用虚拟网卡,并设置不同的 MAC 地址,即可分别获取独立的 IP 地址并完成登录。
- 无深度包(DPI)检测(如有深度包检测需使用 SunBK201/UA3F 类软件绕过)。
IP 地址分配情况
无 IPv6 地址,仅内网 IPv4 地址。
本章小结
总结与后续所需信息:
- 同一账号下的多台设备会共享带宽限速,无法通过单设备多次拨号/登录来实现单设备网速翻倍。
- 系统不支持 PPPoE 拨号,因此无法像家用宽带一样进行多拨。
- 支持客户端直接登录,无需依赖网页登录。
- 部署深度包检测(DPI)。
由此推断在合法使用范围内,我们无法实现:
- 获得超出所购套餐带宽上限的网速。
我们可以实现:
- 绕过校园网的设备数量限制。
- 通过聚合多位同学账号的带宽,实现速率叠加。(多线程场景下)
简单网络共享
最简单的方法——有手机/电脑即可。
根据上一章的已知信息,我们可以:
- 手机/电脑连接校园网 Wi-Fi(哈理工学子连接
HRBUST-Student
或HRBUST-Student-Auto
均可)。 - 手机/电脑开启热点。
其他设备连接此热点即可。
注:我舍友用了这方法一年。
进阶网络共享
较复杂但上限高的方法。
目前我们已经有了网页登录方式,以及适用于 macOS、Windows 和 Linux 的图形化登录客户端。虽然可以通过编写脚本来自动化操作图形化客户端拨号,但我们更希望能够在路由器上,通过命令行的方式将其作为服务自启动。
锐捷系统在很多高校中都有使用,果然在查找资料时发现,已经有前辈为我们铺好了道路——Mentohust 软件(hyrathb/mentohust、shanzhaozhen/mentohust_for_zqu)。在此感谢前辈们的付出。
事前准备
- 准备一台软路由,或者一台可以刷软路由系统的硬路由(俗称“可刷机路由器”):
- 首选:购买一台支持刷机的路由器,并刷入 OpenWrt 系统。
之所以推荐 OpenWrt,是因为它的资料和固件资源丰富,社区活跃,功能可扩展性强。同时,这类路由器通常自带无线 AP,有线接口数量也够用,对于寝室这种场景完全能够满足需求。 - 购买建议:在闲鱼等二手平台上,30 元左右挑一个性价比最高的即可。设备性能无需太强——毕竟寝室带宽最高也就 100M。可选型号包括:小米 mini、Newifi R6800、红米 AC2100、小米 AC210 等。(笔者实验设备为闲鱼 45 包邮购入的红米 AC2100)
- 首选:购买一台支持刷机的路由器,并刷入 OpenWrt 系统。
- 准备网线(估算长度后购买,超五类线足以)。
- 下载 mentohust 二进制文件,放到一个好找的位置:
- 确保设备成功刷入 OpenWrt,成功启动。
- 如果你准备后续的带宽叠加,固件一定要包含
luci-app-mwan3
及相关组件。 - 实测后续的带宽叠加与
luci-app-turboacc
不冲突,此组件能极大增强转发效率,推荐安装。 luci-app-syncdial
在本教程中非必须,实际测试似乎不太可靠,不如手动配置,不推荐安装。- 自助定制固件可使用此站点。笔者目前未能找到其他好用的自助站点,如果你找到好用的相关站点,欢迎在评论区留言。
- 如果你准备后续的带宽叠加,固件一定要包含
部署准备
将电脑连接路由器 Wi-Fi/用网线接入路由器 LAN 口后,开展后续操作。
打开命令行工具
Windows 方法
-
同时按下
Win
键和R
键(Win
键在键盘左下的位置,一般键帽上印刷着四个方块)(简称按Win + R
,后文出现的快捷键操作均使用此描述法)。 -
输入
powershell
,按回车。 -
进入 Powershell 界面(蓝底白字/黑底白字的窗口)。
-
输入以下指令后回车:
ipconfig
-
找到
默认网关
一行,比如:默认网关 . . . . . . . . . : 192.168.1.1
这里
192.168.1.1
就是你的路由器 IP 地址。
macOS 方法
- 打开“启动台” → 搜索“终端” (Terminal)。
- 打开终端。
- 输入以下指令后回车:
ip route | awk '/default/ {print $3}'
输出的就是你的网关地址,也就是路由器 IP 地址,比如:
192.168.1.1
Linux 方法
- 打开终端 (Terminal)。
- 输入以下指令后回车:
ip route | awk '/default/ {print $3}'
输出的就是你的网关地址,也就是路由器 IP 地址,比如:
192.168.1.1
SSH 登录 OpenWrt
输入以下命令(假设路由器 IP 是 192.168.1.1
,默认账号 root
):
ssh root@192.168.1.1
此时会提示你输入密码(如未修改,默认账号一般为 root
,密码为 password
),具体账号密码请看你刷入的固件说明:
root@192.168.1.1's password:
注意:输入密码时屏幕上不会显示任何内容,这是正常的。直接输入密码后按回车即可。
查看网卡名称
在 OpenWrt 的 SSH 界面里输入:
ip link show
可能会看到类似结果:
1: lo: <LOOPBACK,UP,LOWER_UP> ...
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> ...
3: wan: <BROADCAST,MULTICAST,UP,LOWER_UP> ...
4: lan1@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP>
5: lan2@eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP>
6: lan3@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP>
7: ...
...
代表省略的信息。我使用的设备是红米 AC2100,此时 WAN、LAN1、LAN3 接口均有插入网线,LAN2 口悬空。你获取的信息可能和此处略有不同,这是正常的。
网卡解释
- lo → 系统内部回环接口,不用管
- eth0 → 底层物理网卡,不直接用
- wan → WAN 口(通常是接外网/校园网的口)
- lan1@eth0、lan2@eth0、lan3@eth0 → 路由器的 LAN 物理口(经过配置后也可以用于接校园网)
- 这里的
@eth0
只是提示“这个口挂在 eth0 上”,在命令里只需要写 lan1 / lan2 / lan3
- 这里的
之后用 mentohust 拨号时,你只要填 wan
、lan1
、lan2
或 lan3
就行,而不是 lan1@eth0
。
如果你的路由器有四个网口,仅有一个插入了线缆,那没标记 NO-CARRIE
的就是你现在插入的接口。你也可以记录下路由器全部物理网口的逻辑名(这个例子中就是 wan
、lan1
、lan2
、lan3
),过会登录校园网的时候一个个测试。
上传 Mentohust 文件
退出 OpenWrt SSH(输入 exit
回车)。
在本地终端中,进入保存 mentohust
的目录。
例如(Windows 下):
cd C:\Users\Public\Downloads\
Windows 下也可以通过以下方法快速打开:
- 使用文件资源管理器进入保存
mentohust
的目录,在地址栏输入powershell
后回车。 - 使用文件资源管理器进入保存
mentohust
的目录,按住shift
键后点击鼠标右键。点击弹出的上下文菜单中的“在此处打开 Powershell 窗口”。
或(macOS/Linux 下):
cd ~/Downloads/
然后用 scp
上传到 OpenWrt(将 root
和 192.168.1.1
改为实际用户名/路由器 IP 地址):
scp ./mentohust root@192.168.1.1:/usr/sbin/mentohust
系统会提示输入 OpenWrt 密码(同样看不见,直接输入后回车)。
给文件加执行权限
再次使用 SSH 登录 OpenWrt(将 root
和 192.168.1.1
改为实际用户名/路由器 IP 地址):
ssh root@192.168.1.1
在路由器里运行:
chmod +x /usr/sbin/mentohust
测试运行
不要退出 SSH,执行:
mentohust -h
如果输出帮助信息,说明安装成功。
🎉恭喜你,已经成功一大半了。
测试拨号上网
你可以通过 mentohust -h
获取详细的指令用法。
使用下面这个指令,将在前台拨号上网,并且保存当前参数到配置文件:
mentohust -u账号 -p密码 -n网卡 -a1 -d1 -v版本号 -w
根据上文,我们得知哈理工使用的客户端版本为 v5.28,有以下例子:
mentohust -u2301010101 -p142857 -nwan -a1 -d1 -v5.28 -w
上面的指令中使用的参数是 -nwan
,表示使用 WAN 口。
如果你不确定自己插入的是哪个物理网口,可以依次尝试物理网口对应的逻辑名(例如 wan
、lan1
、lan2
等),直到拨号成功。
注意事项:
- 出现“认证成功”。🎉恭喜你,就差最后一步了。
- 测试认证前,请确定当前设备额度未被占光。(哈理工学子可使用“校趣多”微信公众号下线登录设备,给路由器腾出位置。)
开机自动拨号
不要退出 SSH,执行:
nano /etc/rc.local
将以下指令粘贴到 rc.local
文件中。
mentohust -b3
在 rc.local
文件中找到 exit 0
这一行。确保粘贴的命令在 exit 0
之前。如果没有看到 exit 0
,就添加到文件的最后一行。
之后按 Ctrl + S
保存修改,再按 Ctrl + X
退出编辑器。
🎉恭喜你,已经完成配置了!任何连接你路由器的设备都可以成功上网。
简单网速叠加
根据已知信息,一个设备上插了两张网卡,或者模拟出两张 MAC 地址不同的网卡,即可登录两个校园网账号。
可以有多种组合达成此目的:
- 电脑内置无线网卡和电脑内置有线网卡
- 电脑内置无线网卡和 USB 有线网卡
- 电脑内置有线网卡搭配虚拟化技术虚拟出多个 MAC 地址不同的网卡
至于多张网卡在电脑上如何实现带宽叠加,我给出几个关键词,读者可自行搜索解决方案:“Win10/11 链路聚合”、“修改网卡物理地址”。
进阶网速叠加
首先,请先完成进阶网络共享中的全部步骤,并确保成功执行最后一步。
在开始前,请仔细阅读“特别说明”,做好网络接口规划,提前预估所需的接口数量及分配方式。
假设你手头有三个 30M 的账号,每个账号通过一根网线连接到一个 WAN 口。由于物理 WAN 口自带一次拨号功能,你只需额外创建两个虚拟 WAN 接口,即可同时让三个账号拨号上网。
需要注意的是,根据“特别说明”,单个端口的最高带宽限制为 50M。也就是说,即使在同一接口上使用三个 30M 的账号进行拨号,实际速度上限仍为 50M,这与理论值 90M 存在明显差距(当然,不排除在某些特殊情况下能够接近 90M,欢迎测试后在评论区反馈)。
为了获得更高的带宽,建议采用“双实一虚”的配置:
- 使用两根独立网线分别接入两个物理端口(一个 WAN 口、一个 LAN 口配置为 WAN 口)
- 再配合一个虚拟 WAN 接口
这种方案可以实现 30M + 50M ≈ 80M 的速度,有效提升带宽利用率。
清理痕迹
使用 SSH 登录上 OpenWrt。
之后执行:
nano /etc/rc.local
删除刚才在“开机自动拨号”这一章添加的 mentohust -b3
,之后按 Ctrl + S
保存修改,再按 Ctrl + X
退出编辑器。
LAN 口改设为 WAN 口(可选)
为突破 50M 的限制,你可能需要将路由器的一个 LAN 口改为额外的 WAN 接口。下面以 lan1
改为第二个 WAN 为例。
用 nano
打开 OpenWrt 网络配置文件:
nano /etc/config/network
在文件中:
- 找到
config device
块,将lan1
从br-lan
(LAN 口桥接)中移除。 - 参考已有的
config interface 'wan'
,新增一个config interface 'wan2'
的配置段。
示例:
config interface 'wan2'
option device 'lan1' # 指定物理接口
option proto 'dhcp'
option macaddr '1B:1B:1B:1B:1B:1B' # 请替换为你自己的 MAC
option metric '101' # 与其他 WAN 不同的跃点数
注意:
- 必须改为你自己的网络设备的 MAC 地址,或使用在线 MAC 生成器随机生成。不要与网络中已有设备冲突,否则可能导致掉线或无法联网。
- 我们将使用 mwan3 进行负载均衡,mwan3 要求不同的 WAN 接口有不同的
option metric
值。新接口的option metric
要与已有接口不同,并且大于默认 WAN 口的数值,以便系统优先使用默认 WAN 出口。 - 添加新 WAN 接口后,需要将它加入到防火墙规则中的 wan 区域(详见后续步骤)。
完整示例差异如下:
config device
option name 'br-lan'
option type 'bridge'
option promisc '1'
- list ports 'lan1'
list ports 'lan2'
list ports 'lan3'
config interface 'wan'
option device 'wan'
option proto 'dhcp'
option metric '100'
+ config interface 'wan2'
+ option device 'lan1'
+ option proto 'dhcp'
+ option macaddr '1B:1B:1B:1B:1B:1B'
+ option metric '101'
之后按 Ctrl + S
保存修改,再按 Ctrl + X
退出编辑器。
添加虚拟网卡
首先在“查看网卡名称”这一步确认你要在哪个物理接口上创建虚拟网口。
准备用 nano
编辑 /etc/rc.local
:
nano /etc/rc.local
我们使用以下指令创建虚拟网卡,将下面两行指令粘贴到 rc.local
文件中:
ip link add link 物理接口名 name 虚拟网卡名 type macvlan
ifconfig 虚拟网卡名 up
想要多创建几个就多粘贴几遍,记得虚拟网卡名要不同。
例 1,在 WAN 口上创建名为 macvlan1 的虚拟网卡:
ip link add link wan name macvlan1 type macvlan
ifconfig macvlan1 up
例 2,在 LAN1 口上创建名为 macvlan2 的虚拟网卡:
ip link add link lan1 name macvlan2 type macvlan
ifconfig macvlan2 up
注:确保粘贴的命令在 exit 0
之前。如果没有看到 exit 0
,就添加到 rc.local
文件的最后一行。
之后按 Ctrl + S
保存修改,再按 Ctrl + X
退出编辑器。
手动运行你刚才粘贴到 /etc/rc.local
中的指令,以创建虚拟网卡。(如果你懒得粘贴,运行 reboot
指令进行一次重启也是可以的)
添加接口信息
用 nano
打开配置文件:
nano /etc/config/network
在文件底部增加以下内容,你有几个接口要添加就复制几份:
config interface '接口名'
option _orig_ifname '虚拟网卡名'
option _orig_bridge 'false'
option proto 'dhcp'
option macaddr 'FB:FB:FB:FB:FB:FB'
option metric '跃点数'
option device '虚拟网卡名'
注意:
-
修改 MAC 地址为你自己的,或使用网络上的在线随机 MAC 生成器,否则可能冲突。
-
我们将使用 mwan3 进行负载均衡,mwan3 要求各接口的跃点数(metric)必须不同。请确保你创建的接口的
option metric
与/etc/config/network
中已有的接口不同,并且比默认的 WAN 口的跃点数大,这样可以确保流量优先走默认的 WAN 口。如下述的 WAN 口定义:config interface 'wan' option device 'wan' option proto 'dhcp' option metric '100'
表明默认 WAN 口的跃点数为 100,你自己创建的接口的跃点数可以为 101 或更大的值。
以下是一个示例,接口名为 vwan1
,虚拟网卡名为 macvlan1
,MAC 地址为 C7:7B:D5:EE:4C:46
,跃点数为 102。
config interface 'vwan1'
option _orig_ifname 'macvlan1'
option _orig_bridge 'false'
option proto 'dhcp'
option macaddr 'C7:7B:D5:EE:4C:46'
option metric '102'
option device 'macvlan1'
之后按 Ctrl + S
保存修改,再按 Ctrl + X
退出编辑器。
在 OpenWrt Web 界面设置接口防火墙
- 打开浏览器,访问路由器 IP。
- 使用账号密码登录 OpenWrt Web 管理后台。
- 进入“网络” - “接口”。(如果提示配置需要迁移之类的消息,确认迁移即可)
- 找到刚才新建的网口(如
macvlan1
、wan2
),点击这一行右边的“编辑”按钮。 - 确认协议为“DHCP 客户端”。
- 如果不是,修改为“DHCP 客户端”。
- 在“防火墙设置”里,把它分配到和 wan 相同的防火墙区域。
- 滚动到页面底部,点击“保存并应用”。
注:如果没有设置防火墙到 wan 区域,拨号是不会成功的。
配置均衡负载
- 打开浏览器,访问路由器 IP。
- 使用账号密码登录 OpenWrt Web 管理后台。
均衡负载 - 接口
- 进入“网络” - “MultiWAN 管理器” - “接口”。
- 删除全部的接口后点击“保存并应用”。
- 还记得刚才我们在
/etc/config/network
中看到的config interface '接口名'
吗。页面左下角的输入框输入接口名(如刚才例子中的vwan1
,或默认的wan
),然后点击“添加”。 - 点“添加”后弹出的窗口是这个接口的编辑页(点击这个接口右边的“编辑”按钮就可以打开)。
- 第一行的“已启用”需要勾选上。
- 第二行的“初始状态”选择“在线”即可。
- 第三行的“互联网协议”选择“IPv4”即可。
- 第四行的“跟踪的主机或 IP 地址”,添加若两个常用 DNS 地址即可。如
223.5.5.5
、223.6.6.6
、114.114.114.114
、114.114.115.115
。 - 随后拉到最底部点击“保存”即可。
- 点击页面右下角的“保存并应用”按钮。
均衡负载 - 成员
- 进入“网络” - “MultiWAN 管理器” - “成员”。
- 删除全部的成员后点击“保存并应用”。
- 页面左下角的输入框输入成员名,然后点击“添加”。名称可以包含 A-Z,a-z,0-9,_,不能有空格。成员名称不能与配置的接口、策略或规则相同(
w_m1_w1
是一个可以使用的名字)。- 每个“接口”都要创建一条对应的成员。(有几个接口就创建几个成员)
- 点“添加”后弹出的窗口是这个成员的编辑页(点击这个成员右边的“编辑”按钮就可以打开)。
- 第一行的“接口”选择目标接口。
- 第二行的“度量值”可以空着,也可以填 "1".
- 第三行的“Weight”是权重,如果你这个接口上要拨号 50M 带宽的账号就输入 50,如果是 30M 带宽的账号就输入 30。
- 点击右下角的“保存”即可。
- 点击页面右下角的“保存并应用”按钮。
均衡负载 - 策略
- 进入“网络” - “MultiWAN 管理器” - “策略”。
- 删除全部的策略后点击“保存并应用”。
- 页面左下角的输入框输入策略名,然后点击“添加”。名称可以包含 A-Z,a-z,0-9,_,不能有空格。名称最多 15 个字符。策略名称不能与配置的接口、成员或规则相同。
banlanced
是一个可以使用的名字。 - 点“添加”后弹出的窗口是这个策略的编辑页(点击这个策略右边的“编辑”按钮就可以打开)。
- 第一行的“使用的成员”选择将所有创建的成员都选上。
- 点击右下角的“保存”即可。
- 点击页面右下角的“保存并应用”按钮。
均衡负载 - 规则
- 进入“网络” - “MultiWAN 管理器” - “规则”。
- 删去除
https
、default_rule_v4
、default_rule_v6
以外的规则后点击“保存并应用”。 - 如果缺少
https
、default_rule_v4
、default_rule_v6
其中的某规则。就在页面左下角的输入框输入规则名,然后点击“添加”。 - 点“添加”后弹出的窗口是这个策略的编辑页(点击这个策略右边的“编辑”按钮就可以打开)。
- 对于
https
规则:- 第一行“互联网协议”选择“IPv4 或 IPv6”/“仅 IPv4”(看校园网情况。像哈理工没 IPv6 选“仅 IPv4”就行)。
- 第二行“协议”保持“TCP”。
- 第六行“目标端口”保持“443”。
- 第七行“粘滞模式”选择“是”。
- 最后一行“分配的策略”选择刚才创建的策略(如
banlanced
)。 - 点击右下角的“保存”即可。
- 对于
default_rule_v4
规则:- 第一行“互联网协议”选择“仅 IPv4”。
- 第二行“协议”保持“all”。
- 第四行“目标地址”输入“0.0.0.0/0”。
- 第七行“粘滞模式”选择“否”。
- 最后一行“分配的策略”选择刚才创建的策略(如
banlanced
)。 - 点击右下角的“保存”即可。
- 对于
default_rule_v6
规则:- 第一行“互联网协议”选择“IPv4 和 IPv6”。
- 第二行“协议”保持“all”。
- 第四行“目标地址”输入“::/0”。
- 第七行“粘滞模式”选择“否”。
- 最后一行“分配的策略”选择刚才创建的策略(如
banlanced
)(看校园网情况。像哈理工没 IPv6 选“不可达(拒绝)”这个策略)。 - 点击右下角的“保存”即可。
- 点击页面右下角的“保存并应用”按钮。
粘滞模式(sticky mode)作用:固定同一客户端走同一出口,避免因 IP 变化引起身份验证频繁或连接中断。
开机自动多播
使用 SSH 登录上 OpenWrt,执行:
nano /etc/rc.local
在文件最开头前加上自定义函数:
wait_iface_up() {
local iface="$1"
while ! ip link show "$iface" | grep -q "state UP"; do
sleep 1
done
}
在 ifconfig macvlan1 up
后加上对应等待接口就绪的代码:
wait_iface_up macvlan1
如果有多个 ifconfig macvlanX up
就对应添加多行 wait_iface_up macvlanX
语句。
你的 rc.local
文件大致应如下所示:
wait_iface_up() {
local iface="$1"
while ! ip link show "$iface" | grep -q "state UP"; do
sleep 1
done
}
ip link add link wan name macvlan1 type macvlan
ifconfig macvlan1 up
wait_iface_up macvlan1 # 对应上一行 ifconfig macvlan1 up
ip link add link wan name macvlan2 type macvlan
ifconfig macvlan2 up
wait_iface_up macvlan2 # 对应上一行 ifconfig macvlan2 up
# 此处添加拨号代码
# ...
exit 0
现在我们在 exit 0
前添加拨号代码(如果有多个账号,就粘贴多遍)(删 .pid
方法出自企鹅大大,微调以适应实际情况):
mentohust -u账号 -p密码 -n网卡 -a1 -d1 -v版本号 -b3
sleep 8
rm -rf /var/run/mentohust.pid
sleep 3
注:sleep 8
是硬等待,如果认证比较快,可以缩短这个时间。如果认证时间较长,可以加长这个时间。尽量不要让一个时间内同时进行两个认证。我们使用指令 rm -rf /var/run/mentohust.pid
删除 mentohust.pid
即可进行下一个账号的认证。sleep 3
也是一个硬等待。如果胆大心细,可以将这两个等待时间分别改为“5”和“2”。
根据上文,我们得知哈理工使用的客户端版本为 v5.28,有以下例子:
mentohust -u2301010101 -p142857 -nwan -a1 -d1 -v5.28 -b3
sleep 8
rm -rf /var/run/mentohust.pid
sleep 3
在上述指令中,-nwan
参数表示使用 WAN 口,而 -b3
表示在后台运行。
如果你不确定自己插入的是哪个物理网口,可以依次尝试物理网口对应的逻辑名(例如 wan
、lan1
、lan2
等),直到拨号成功。
对于自行创建的 macvlan
,在执行 ip link add link 物理接口名 name 虚拟网卡名 type macvlan
命令时,其中的“虚拟网卡名”,就是拨号命令中 -n
参数需要填写的名称,即写作 -n虚拟网卡名
。
你的 rc.local
文件大致应如下所示:
wait_iface_up() {
local iface="$1"
while ! ip link show "$iface" | grep -q "state UP"; do
sleep 1
done
}
ip link add link wan name macvlan1 type macvlan
ifconfig macvlan1 up
wait_iface_up macvlan1 # 对应上一行 ifconfig macvlan1 up
ip link add link wan name macvlan2 type macvlan
ifconfig macvlan2 up
wait_iface_up macvlan2 # 对应上一行 ifconfig macvlan2 up
mentohust -u2301010101 -p00142857 -nwan -a1 -d1 -v5.28 -b3
sleep 8
rm -rf /var/run/mentohust.pid
sleep 3
mentohust -u2301010102 -paa142857 -nmacvlan1 -a1 -d1 -v5.28 -b3
sleep 8
rm -rf /var/run/mentohust.pid
sleep 3
mentohust -u2301010103 -pXX142857 -nmacvlan2-a1 -d1 -v5.28 -b3
sleep 8
rm -rf /var/run/mentohust.pid
sleep 3
exit 0
之后按 Ctrl + S
保存修改,再按 Ctrl + X
退出编辑器。
现在可以尝试重启系统,测试自动配置是否生效:
reboot
🎉恭喜你,已经完成配置了!任何连接你路由器的设备都可以享受带宽叠加了。
速率测试方法
- Steam 测试下载 60GB 以上的游戏。
- HTTP 多线程测速站。
- 其他多线程下载场景。
由于启用了 HTTPS 粘滞模式,许多 HTTPS 测速站只能显示权重最大的网速。例如,我使用了一个 50M 和两个 30M 账号,在单线程测速时,结果仅显示 50M 的速度。
结语
欢迎在评论区留言交流。
0