关于破解联通校园宽带限制终端数量的探究

近期(2017年7月)有多所学校升级了联通光纤的系统,本文所述方法在升级后的系统中已经不再有效。
经抓包得知,认证的方法变为:客户端先用http请求一个接口,服务器返回一个json,里面包含一个6位数字的pin;然后通过pppoe拨号,用户名和以前一样,密码是那6位数字加上用户自己的密码。
这样一来,无论采用方案A还是方案B,都需要一个OpenWrt的路由器来完成。
我写了如下的脚本通过方案B来实现自动登录,在北京部分学校已测试可用。

https://github.com/nyanim/wo201-autologin


今年学校新装的死妈的联通光纤,每个账号独享10M带宽,但是每个账号限制两台终端同时登陆,一台电脑,一台手机。以前全宿舍6个人共用一条8M ADSL从此成为历史。

网络大概是这样的,其中路由器工作模式为路由模式的动态ip方式。

光猫←路由器←─┏─Portal认证←手机

………………………….┗─PPPoE     ←电脑

正常的上网姿势

PC

要在电脑上上网的时候,需要使用联通的客户端进行拨号,其中限制终端数量,及限制承载网络的功能都由这个客户端来实现。

这个客户端最恶心的地方在于,它会把电脑中所有活动的网卡,包括虚拟的和物理的,都当做一个终端来对待。比如我想要在电脑上连接AnyConnect,这时AnyConnect的虚拟网卡就会被认为是新接入的一个终端,随即联通客户端提示超过两个有效终端,并且自动断开互联网连接。如果在电脑上启动承载网络,包括但不限于小度WiFi,猎豹免费WiFi、Connectify,联通客户端同样也会提示发现承载网络,随即将连接断开。

但是,虽然此客户端的本质就是一个PPPoE客户端,但是我并不能使用我的用户名密码直接在电脑上用Windows自带的拨号器进行拨号,否则会报691错误,也就是用户名/密码有误。经过这篇文章 使用 PPPoE 代替流氓的联通宽带客户端进行 ADSL 拨号上网 的启发,我意识到确实可能是因为真实的PPPoE密码并不是联通给我的用户名密码,而是经过客户端处理过的。

Continue reading “关于破解联通校园宽带限制终端数量的探究”