—— 一个 Go 编写的 Windows 小工具,解决"校园网老断网、总要手动重连"的烦恼
一、痛点与解决思路
在校园里,WiFi 断连几乎是每天都会遇到的事:信号波动、后台重启、认证过期……一旦断网,就得手动重新连接 WiFi,再打开浏览器登录 Portal 认证页面,输入账号密码。一天折腾几次,非常影响学习效率。
这个小工具要解决三个问题:
1. 自动连接目标 WiFi——断网后自动连上校园网 SSID;
2. 自动完成 Portal 登录——HTTP 模拟提交账号密码,不用开浏览器;
3. 断网自愈——每 15 秒轻量探测一次连通性,发现断网立即自动恢复。
二、界面总览
程序是一个单窗口的桌面应用,界面分为四大区域:配置区(登录网址、账号、密码、目标 WiFi)、状态区、操作按钮(立即检测 / 保存配置 / 启动守护)、运行日志区。
图1 主界面全貌图 —— 展示工具整体界面与功能区布局(配置区 / 状态区 / 操作按钮 / 运行日志)
三、三步完成配置
使用前只需填写四项信息:
· 登录网址:校园网 Portal 认证页地址;
· 账号 / 密码:校园网认证账号;
· 目标 WiFi:要自动连接的校园网 SSID。
填写后点击「保存配置」,配置会写入本地文件,一次配置长期生效。
图2 配置填写示例图 —— 演示登录网址、账号、密码、目标WiFi的填写(示例数据,发布时建议对真实账号密码打码)
四、核心功能
1. 自动连接目标 WiFi:基于系统 netsh 命令扫描并连接指定 SSID,零额外依赖;
2. 断网检测:启动守护后每 15 秒做一次轻量连通性探测(真实 HTTP 请求),另有 8 小时定时巡检兜底,防止事件遗漏;
3. Portal 自动登录:程序模拟浏览器提交登录表单,免去手动打开认证页;
4. 日志反馈:所有动作实时写入运行日志,状态一目了然;
5. 托盘常驻:点击窗口右上角 × 后,程序转入系统托盘后台继续守护,不占桌面。
五、运行效果
点击「启动守护」后,日志会依次输出配置保存、守护启动、连通性检测结果;守护运行中按钮变为「停止守护」,方便随时手动接管。
图3 守护运行状态图 —— 展示启动守护后的实时状态与运行日志(每15秒探测、8小时巡检兜底)
六、自动重连闭环
工具的核心是一个状态机:空闲监控 → 连通性检测 → 自动连接 WiFi → Portal 登录 → 联网自检 → 回到空闲监控。任一步骤失败会按 30s/1min/2min/5min 退避重试,最多 3 次后通过系统通知提醒你。
图4 自动检测与重连闭环示意图 —— 说明"检测→连WiFi→登录→自检→恢复"的完整流程
七、使用与注意事项
· 适用场景:常见 Web Portal 认证的校园网(无验证码);
· 断网恢复速度:约 15 秒内完成自动重连;
· 凭据存储:账号密码以明文保存在本地配置文件中,不建议在公共/共享电脑使用;
· 发布截图时,请对真实账号密码做打码处理。
八、技术速览(轻量版)
· 语言/框架:Go + lxn/walk(纯 syscall,无 CGO 依赖,无需 GCC);
· 产物形态:单个 exe 约 8MB,免安装、免运行库;
· 内存占用:空闲时仅监听网络事件,常驻内存低;
· 资源开销:零空闲轮询,事件驱动为主 + 轻量定时探测兜底。