admin 管理员组

文章数量: 887032

补一补上周的坑,关于校园网设置路由器自动登录的。
首先,先得明白校园网登录认证的过程发生了什么,表面需要的是用户名和密码,但是其实不止这些,在浏览器(我用的是chrome)地址栏里输入校园网认证地址172.16.2.2

输入账号密码,选择运营商宽带或是校园网,按下F12,勾选持续记录,进行网络抓包。

点击右边的登录,登录成功后就看到抓取到的一堆文件,



随意点开几个文件就可以发现我们需要的信息,一开始我认为网络认证应该需要发送post请求之类的,毕竟安全性强。后来找了许久都没有找到post请求相关的条目,然后在第二条发现了登录和账号密码相关的请求,请求方法为get:

至此,我们可以来试试这个请求的url到底能不能实现认证
打开命令提示符,(win键+R,输入CMD)
我们还需要了解一个命令行工具――curl
curl是一个命令行工具,通过指定的URL来上传或下载数据,并将数据展示出来。curl中的c表示client,而URL,就是URL。
具体用法可以在命令提示符里面输入curl --help来查看具体用法和功能。
直接输入以下格式:
curl “http://172.16.2.2/drcom/login?callback=dr1004&DDDDD=账号&upass=密码&0MKKey=123456&R1=0&R3=2&R6=0&para=00&v6ip=&v=3694”
接着可以发现已经登录成功了,
返回信息如下

现在,你已经得到了可能永久可用的url,你可以每次打开电脑前在终端(命令提示符)里面粘贴这一条实现上网认证。到此还没有结束,你还是需要手动打开电脑输入才能实现,当然也可以让你的电脑自动执行这个过程。但这还不是我想要的,想想能不能用路由器实现,是可以的!
需要准备什么?

一台运行OpenWrt系统的路由器,我这里用的是padavan,俗称老毛子的路由器系统,当然一般的路由器可能不支持这个系统,市场上的路由器系统也有开源的,很少,绝大多数都是闭源系统,用户无法使用其大多功能,要使用绝大多功能对路由器性能也比较高。所以如果你是个高玩,可以入坑刷好系统的路由器,小白就算了,等后面的windows脚本。

用ssh工具进入路由器后台,在/etc/storage/这个目录下新建一个(就叫 autologin好了).sh脚本文件,
命令为 :
cd /etc/storage
mv autologin.sh
接着用vi编辑器打开,输入i进入编辑模式,

粘贴刚才得到的 url,
格式改为
curl ‘http://172.16.2.2/drcom/login?callback=dr1004&DDDDD=账号&upass=密码 &0MKKey=123456&R1=0&R3=2&R6=0&para=00&v6ip=&v=一个随机数’

注意在bash下引号为英文单引号。
解释一下R3的值等于2,其实是运营商选择,校园网R3等于0,移动等于2。
按下esc退出vi编辑器编辑模式,进入命令模式,在命令模式输入“:”即可进入该模式,在末行模式中有好多好用的命令。如wq为保存并退出。(vi编辑器就是这么繁琐,但用惯了也还方便,个人更喜欢nano编辑器)

浏览器输入路由器管理地址,找到 自定义设置-脚本 (其实在终端里面也可以执行,不想输命令了)


选择 在路由器启动后执行(注意:此处应改为在wan上行/下行后执行,之前搞错了路由启动顺序,路由启动完成后执行的话可能会因为还没有获取到网络连接而执行失败

在最后面添加以下代码:
/etc/storage/autologin.sh
Logger -t “[自动登录脚本完成]”

到此按理说一切都成功了,你可以每天早上醒来就可以无缝连接WiFi上网了,本人学校每天定时断电断网,所以直接设置为路由器启动后执行。脚本极其简单,没有任何网络连接检测,如果你在别的教室使用了账号,路由器这边会掉线,你回宿舍后还要手动登录,这也没办法,异地登录本来就会冲突,总不能检测到没网络就立即重新登录造成两边都无法使用的局面。

如果你的路由器是 lucy,设置方法也可以参照上文,开源的openwrt系统都差不多。

本文标签: 校园网 路由器 上周 自动登录 补一补