平时在宿舍扔个刷了 OpenWrt 的路由器带多台设备,或者挂个类似 RK3588 这样的 Linux 开发板当小服务器,算是很多折腾党的基础操作。
但想要这台机器稳稳当当全天候在线,有两个很让人头疼的问题。
首先是申请固定 IP。去网络中心提交表单基本就是一直卡审批,或者直接不批。没有固定 IP 只能用动态 IP 凑合,但紧接着就是最恶心的一点:强制网页认证。
不管是跑在 OpenWrt 还是原生 Linux 上,这台机器大概率是纯命令行环境,根本没法弹个浏览器出来点登录。而且校园网的机制是动不动就踢人下线,一旦掉线,机器连不上外网,直接变砖失联。
本想着去 GitHub 找个现成的锐捷认证脚本挂着就行,实测下来发现根本行不通。因为每个学校的网络环境和认证逻辑都不太一样,网上那些公开的代码,拿到我们学校一跑全是各种参数报错,压根没法适配。
既然白嫖不了,干脆自己写了一个极简的锐捷静默登录脚本:Ruijie-Campus-Auth。
这里不科普什么发包原理,直接说它能干什么:
- 纯命令行运行:专为无桌面环境编写,不需要浏览器,原生 Linux 和 OpenWrt 都能直接运行。
- 断线自动重连:配合定时任务,脚本会检测网络连通性,一旦发现被踢下线会自动重新登录,保证机器一直在线。
- 高兼容性:因为很多学校的认证参数有差异,所以我把请求逻辑做了一些调整。如果你用网上其他通用脚本疯狂报错,可以试试我这个。
项目我已经开源了,代码很轻量,没有什么乱七八糟的依赖。
👉 项目地址:Ruijie-Campus-Auth
配置没什么门槛,在电脑上抓一下自己学校的认证参数填进去,然后写个 crontab 定时任务检测就行,具体流程 README.md 里写得很清楚。
如果你也卡在“Linux 没法网页认证 + 现有脚本不适配”这道坎上,直接拿去用就行。遇到什么奇葩的报错,欢迎在仓库提 Issue 交流。
觉得好用的话,求去 GitHub 帮我点个 Star。