跳到正文

相关客户端与协议参考 ​

返回首页

这份记录供维护者核查实现依据。安装客户端可直接查看电脑使用入口或无线网页登录说明。

阅读下表时,EAP/UDP 指有线网卡认证的两个阶段,Portal 指连上 Wi-Fi 后的网页登录;profile 是有线报文的兼容格式。固定提交号用于标明当时查看的源码版本,避免第三方代码后来变化后难以追溯。

记录日期:2026-10-23(北京时间)。以下固定提交、公开协议行为和可见许可证用于核对兼容性依据。范围为下述公开检索结果和分支快照,第三方记录用于核对协议行为。有线 EAP/DrCOM、无线 Web Portal 和历史“翼起来”协议分别记录。

检索范围 ​

GitHub repository search 使用 scut drcom(9 项)、scutclient in:name(17 项)、scut-client in:name(10 项)、SCUT OpenWrt(6 项)、"SeaLoong/drcom4scut" in:readme(1 项)、SCUT network client(4 项)及 "华南理工大学" "客户端" in:readme(152 项,两页全部读取)。搜索结果有重叠和同名无关项目,客户端清单在筛选去重后记录。另检索 scut 802.1x、"scut" "802"、华南理工 校园网、scutclient 和 "drcom4scut" in:readme;公开搜索索引可能漏报,直接 fork 列表和引用链接用来补充。

快照中的直接 fork 为核心 11 个、GUI 1 个;对应 API 返回的分支和子 fork 列表见派生仓库记录。下表列出具有实质行为差异的来源:

分支来源固定版本行为记录
gchh1/drcom4scut118aea5d有线源地址绑定、网卡/IP 变化检测、诊断和服务管理
LuoMuQAQ/drcom4scutb9845c6eWindows GUI、DPAPI、凭据传递、优雅注销、父进程生命周期、托盘/自启
trv3wood/drcom4scutmaster e537b377;fix-already-login f20a3027有上限的退避、首次 Identity 标识符不应当作会话状态
QvPing/drcom4scut2b166e91可关闭 UDP、可禁用日志、DNS CLI
AlexLin625/drcom4scut719c6bbbDNS 故障切换修复
gdzhht/drcom4scutca7408a0DNS 故障切换修复

其余 HarryHuangQi、unstartdev、AlexBybye、Accurio、cq01 的默认分支与原核心 HEAD 相同;cq01 的开发分支主要是依赖升级。Accurio GUI fork 与 GUI 基线 91c61d1f 相同。相关上游问题包括 #46(首次标识符循环)、#44(心跳)、#43(OpenWrt)、#34(拔线重连)、#38(Npcap 资源)。

公开行为与协议差异 ​

这部分回答“为什么实现成这样”。有线与网页自动登录的依据不同,不应将网线认证搬到 Wi-Fi 上使用。无线方案参考的是已有项目公开的网页登录请求,不是本项目新取得的校内抓包或学校官方接口规范。

来源观察到的行为兼容性含义与范围
drcom4scut-cpp标准 PAE 组播目的地址的 EAP Identity 心跳接受 01:80:c2:00:00:03 目的地址,但认证后仍锁定服务端源 MAC
同上 v0.2.3–0.2.4周期 UDP 回包长期缺失时维持健康 EAP;初始建链失败仍严格处理分开认证状态和 UDP 保活状态,不因 UDP 丢包自行注销 EAP
同上 windows-31260 字节 MiscInfo、网关和双 DNS、16 字节尾部、独立启动心跳显式可选协议配置,保留默认 244 字节 legacy 行为;按已确认的网络环境选择 profile
同上地址模型实际源 IPv4、EAP 认证 IPv4、UDP 载荷 IPv4 可以不同绑定真实接口地址;载荷覆盖值不用于给系统配置地址
同上及 UDP 61440 选路诊断Wi-Fi/代理默认路由使 DNS/UDP 走错网卡使用选定有线源地址/接口;诊断网络,不自动禁用 Wi-Fi 或改写系统路由
scutclient显式接口、DNS/server/version/hash、上线/下线 hook、logoff、OpenWrt 打包行为独立实现;AGPL 实现代码不直接复制进当前项目
Vitus213/scutclient-rsRust 重写、退避、SIGTERM、procd/UCI、多架构目标参考部署需求;设计文档不当作已通过实机测试的证据
luci-app-scutclient-plus状态/配置/日志页、服务启停/重连、诊断包、随机或租约主机名路由器部署需权限限制、脱敏诊断、正确区分“进程运行”与“已认证”
SCUTNetLoginWindows DPAPI、可取消重连、托盘/自启、可禁用 UDP、双协议接入GUI 凭据不出现在命令行;无线 Portal 使用独立实现和验证
SCUTNetLogin、luci-app-scut-autologin/drcom/chkstatus、动态 AC、ePortal 登录、官方状态确认与原始以太网 EAP 分开;以学校报告的设备在线状态确认认证结果
CampusNet多账号、校区配置、暂停/恢复重连,Windows/Android未指定开源许可证,仅记录行为,不复制源码或宣传已支持 Android
fsn_server路由器 Web 状态、账号持久化、自动重连、夜间选项不移植匿名 HTTP 管理、明文凭据或老式自启动方式

windows-31 的依据为表中固定版本的 drcom4scut-cpp 协议实现及模拟报文对照,没有对应校区实网认证结论。它与 legacy 共用 EAP 基本过程,Identity 扩展均为 0044610000;MD5 扩展中的客户端标志为 0x31;MiscInfo 长度 260,DNS1/网关/DNS2 分别位于 76/80/84 偏移,OS 区域为零,版本区位于 116,hash 区位于 180,尾部位于 244。校验和覆盖全部 260 字节。MiscResponseInfo 后约 1400ms 发送 40 字节启动心跳(头 070028000b010f27),等候类型 0x0b、子类型 6 后才开始周期 Alive。legacy 使用原客户端的 244 字节 MiscInfo,不执行这一步启动心跳确认。两种配置的周期心跳相同;名称与本机运行的操作系统无关。

固定版本清单 ​

清单固定到记录日期的提交。源码用于核对公开行为及报文,未执行第三方安装脚本。许可证栏记录可见声明;没有明确授权的实现只作为行为参考,不作为可复制源码。具体文件的版权与许可证仍须单独核对。

仓库调研 HEAD可见许可证
AidenLee1994/luci-app-scutclient-plusead272c8b0a2ed6ddb1da2865de636016010ae62GPL-3.0
AidenLee1994/scutclient17e25890bf751c3f7a2119e9d69359e1504527d2未确认独立许可证;不复制实现
BJ1919810/SCUT-DrMain-61440-WiFi-Route-Fix16587f9d4559c4a64b2ade8c3047ca74ad21fc05README 声称 MIT,未见独立许可证正文
Breeze1733/luci-app-scut-autologin0143bb299dc35642ab54025c55bdbfbc4460a01fMIT
CmAsterr/CampusNetba634183f91769d92139d39ff8e13e1086ac1c41未确认独立许可证;不复制实现
HarryHuangQi/drcom4scut-cppe5b765d099274883d808984029c00e71868341ebLGPL-3.0 正文;上游许可证元数据有历史差异
HyperionHXH/SCUTclient-immortalwrt-mt798x-251291d36e5bb1232d376896e38d8e0d2dadb6dd4b98未确认独立许可证;不复制实现
JaxxZu/Scutclient4newif3D24eb9a61de533a63164fdb1733463d386f6069c70未确认独立许可证;不复制实现
MikeHuang2000/SCUT-Drcom-AutoRestarter-CMD78c3d9feedeb57e891991b83e42e861b936e722dMIT
Samuka007/scut-drcom-client-rs84643097396e779c8c85eeca28b47d4ce43f122f未确认独立许可证;不复制实现
Samuka007/scut_clientdee3f030298b6d0120a65569c191190a32a1f5a0未确认独立许可证;不复制实现
Samuka007/scutclient_goa5b8eb34a9d8d02644d80010d6ccda868b102873未确认独立许可证;不复制实现
Vitus213/scutclient-rsfdbf1dd31e3adc84e950e2a861f80755e41c6574未确认独立许可证;不复制实现
WanderLandWalker/luci-app-scutwifi3b42a93b97056138a6f03a190e6b4dd09a5fef38未确认独立许可证;不复制实现
YSunLIN/fsn_server50c9b683be9e4402a0a0cdde7257b9df251b5d42LGPL-3.0 正文(README 另有商业限制声明)
YiZhiQvQ/SCUTNetLogin65470c3da502527fa5f20673d71639c8bebb9747MIT
dclsama/openwrt_scut_autologin940daae2257b8c567bb7babf7d12773331e709ca未确认独立许可证;不复制实现
iseekwonderful/DrCOM-Scutb98c17ffdeb8351a968629a709e5b8a165565b25未确认独立许可证;不复制实现
justsong-lab/scutclienta0256e418a17553fcef4497ef7e26b30ca474f62AGPL-3.0
libc0607/scutclient-openwrte153904b74bdf62f01200d0ee1e8733edf7fdfea未确认独立许可证;不复制实现
scutclient/luci-app-scutclient727235341e2cb89150fec7e7b9223ea8fc19058a未确认独立许可证;不复制实现
scutclient/pyscutclient_drcom8bd75803ee92ead0c6bd4392132e3da094700d69未确认独立许可证;不复制实现
scutclient/scutclient8c81f5d8968420e9dc13181a5f9295d2de10b14aAGPL-3.0
scutclient/scutrouter034e8a5cde2b2359738f8e8027406d5136a33920未确认独立许可证;不复制实现

适用范围 ​

无线网页登录由系统先连接校园 Wi-Fi,程序再提交兼容页面的账号密码,并检查学校确认的设备在线状态。当前实现直接处理 DrCOM/ePortal 请求;验证码、短信、扫码和统一身份认证页面使用浏览器。实际入口以学校公布的地址和浏览器页面为准。

本项目的门户注销请求退出当前会话,学校自动登录和设备绑定在学校网页中管理。SCUTNetLogin 的部分实现使用 /mac/unbind,本项目使用 /eportal/portal/logout 并检查状态,两者对应的退出行为分别核对。用户操作见无线指南。

这里记录的是认证与部署需求。实际校区入口由使用者核对,第三方示例服务器不是通用配置。系统负责无线关联、地址、路由、防火墙和 NAT;Android 与历史“翼起来”客户端也有不同的平台或协议边界。真实账号、私密抓包和运行日志不作为公开测试样本。传输安全、管理页面权限及连接成功判定,应按本项目的配置、门户与验证文档分别核对。