type
status
date
slug
summary
tags
category
icon
password
背景
入学新学校,校园网 49元/月 100M ,只能够同时登录两台设备,于是着手破解。
破解后当普通 Wi-Fi 连接即可,无设备数量限制,同时还可以做到多账号网速叠加。

思路
- 逆向校园网 Web 登录算法
- 将登录算法移植到 OpenWrt 中
- 使用 Macvlan 和 MultiWAN 插件实现多账号登录
登录算法逆向
连接校园网,随便输入一个网址就可以跳转到登录界面(这是通过 DNS劫持 实现实现的)。
通过观察代码发现,这是锐捷网络的 Web 认证,便在网络上找到了相同认证系统的登录算法实现,所以这一步非常的轻松,基本没有自己进行逆向分析。
OpenWrt
硬路由的选择
因为要使用 OpenWRT 系统,所以路由器需要选择能够刷机的,且自带 Wi-Fi 的硬路由。
这里选择的是 H3C NX30 Pro,二手售价约100元,配置如下:
型号 | H3C NX30 Pro |
CPU | MT7981B |
闪存 | 128M |
内存 | DDR3 256M |
刷机教程
网络上有很多刷机的教程,这里不多赘述。
使用的 uboot 仓库如下:
固件的选择
编译产物的 config.buildinfo 如下
通过上面的
buildinfo 编译出来的固件仅仅 15.4MB。登录算法移植
这里使用 OpenWrt 的
init.d 与 procd 守护校园网登录状态,如果检测到离线则自动尝试登录。代码如下:
修改完配置后将代码写到
/etc/init.d/campus_portal_eth1(注意,文件名要在代码里面一并修改),启动后可以在系统日志中看到日志信息。多账号
配置详细教程如下:基于openwrt的MWAN3实现多运营商负载均衡的一种方法
配置完成端口后将上面的
init.d 代码全局替换 eth1 为你创建的接口后,复制一份到 /etc/init.d/ 中即可,每个账号一个服务这样可以保证对每个校园网账号的登录控制。Macvlan
在 网络→接口→设备 中可以添加 Macvlan,选择正确的 基础设备 后点击保存即可。
添加 Macvlan 完成后在 网络→接口 中添加对应的 DHCP客户端,同时设置防火墙区域为
wan 即可。

MultiWAN 负载均衡




mwan 的配置教程这里就不过多赘述了,我使用个两个接口(也就是两个账号)配置如上图。mwan 是通过 iptables + fwmark 路由规则来实现的负载均衡,所以在单线程情况下,无法速度叠加。附图

