Files
2026-03-28 20:55:33 +08:00

5.1 KiB
Raw Permalink Blame History

校园网宽带绕过多设备监测认证(OpenWrt版)

简介

本项目用于在 OpenWrt 路由器上实现校园网宽带认证,支持多设备共享上网,绕过校园网的多设备监测限制。

功能特性

  • 自动认证登录校园网
  • 支持自定义 MAC 地址(绕过多设备监测)
  • 开机自动启动
  • 断线自动重连
  • 完善的日志记录
  • 外部配置文件支持

环境要求

  • OpenWrt 系统
  • Python 3.x
  • Python requests 库
  • 网络接口(如 eth1、br-lan 等)

安装方法

方法一:一键安装(推荐)

  1. 将项目文件上传到 OpenWrt 路由器的任意目录(如 /tmp/drcom

  2. 进入项目目录:

cd /tmp/drcom
  1. 运行安装脚本:
chmod +x install.sh
./install.sh
  1. 编辑配置文件:
vi /etc/drcom/config.json
  1. 启动服务:
/etc/init.d/drcom-login start

方法二:手动安装

  1. 安装依赖:
opkg update
opkg install python3 python3-light python3-requests
  1. 创建目录:
mkdir -p /etc/drcom
  1. 复制文件:
cp drcom_login_fixed.py /usr/bin/drcom_login.py
chmod +x /usr/bin/drcom_login.py
cp drcom-login /etc/init.d/drcom-login
chmod +x /etc/init.d/drcom-login
cp config.json /etc/drcom/config.json
  1. 编辑配置:
vi /etc/drcom/config.json
  1. 启用并启动服务:
/etc/init.d/drcom-login enable
/etc/init.d/drcom-login start

配置说明

编辑 /etc/drcom/config.json 文件:

{
  "username": "250450328",          // 校园网账号
  "password": "your_password",      // 校园网密码
  "server_ip": "172.17.8.2",        // 认证服务器IP
  "server_port": 801,               // 认证服务器端口
  "interface": "eth1",              // 网络接口名称
  "fixed_mac": "a0:ad:9f:0a:4d:86"  // 固定MAC地址(可选,留空则自动获取)
}

如何查找网络接口名称

在路由器上运行以下命令查看网络接口:

ip addr show

或者

ifconfig

找到连接校园网的接口名称(通常是 eth1、wan、br-wan 等)

如何设置固定 MAC 地址

固定 MAC 地址可以绕过校园网的多设备数量限制。建议使用:

  • 已认证设备的 MAC 地址
  • 随机的有效 MAC 地址(格式:XX:XX:XX:XX:XX:XX

如果不需要固定 MAC,将 fixed_mac 留空即可。

服务管理

启动服务

/etc/init.d/drcom-login start

停止服务

/etc/init.d/drcom-login stop

重启服务

/etc/init.d/drcom-login restart

查看状态

/etc/init.d/drcom-login status

启用开机自启

/etc/init.d/drcom-login enable

禁用开机自启

/etc/init.d/drcom-login disable

日志查看

查看最新日志

tail -f /var/log/drcom-login.log

使用日志管理脚本

chmod +x log-manager.sh
./log-manager.sh view      # 查看日志
./log-manager.sh follow    # 实时跟踪日志
./log-manager.sh error     # 只看错误信息
./log-manager.sh success   # 只看成功信息
./log-manager.sh clear     # 清空日志

卸载方法

运行卸载脚本:

chmod +x uninstall.sh
./uninstall.sh

常见问题

1. 认证失败

原因:账号密码错误或服务器 IP 错误

解决

  • 检查配置文件中的账号密码是否正确
  • 使用抓包工具确认认证服务器的真实 IP 和端口
  • 查看日志:tail -f /var/log/drcom-login.log

2. 无法获取 IP 地址

原因:网络接口名称错误

解决

  • 运行 ip addr show 查看正确的接口名称
  • 修改配置文件中的 interface 参数

3. Python 模块缺失

原因requests 库未安装

解决

opkg install python3-requests

4. 断线后不自动重连

原因procd 的 respawn 功能未启用

解决

  • 检查 /etc/init.d/drcom-login 脚本是否包含 USE_PROCD=1
  • 重启服务:/etc/init.d/drcom-login restart

5. 如何获取认证服务器信息

  1. 在电脑上使用浏览器的开发者工具(F12)
  2. 访问校园网登录页面
  3. 查看网络请求中的登录接口
  4. 记录服务器 IP、端口和请求参数

注意事项

  1. ⚠️ 请确保遵守校园网使用规定
  2. ⚠️ 建议固定 MAC 地址使用已认证设备的 MAC
  3. ⚠️ 定期查看日志确保服务正常运行
  4. ⚠️ 如果校园网升级认证系统,可能需要更新脚本

文件说明

文件名 说明
drcom_login_fixed.py 主程序(认证核心逻辑)
drcom-login OpenWrt 启动脚本(init.d
config.json 配置文件模板
install.sh 一键安装脚本
uninstall.sh 卸载脚本
log-manager.sh 日志管理脚本

许可证

本项目仅供学习和研究使用,请勿用于非法用途。

技术支持

如遇到问题,请检查:

  1. 日志文件:/var/log/drcom-login.log
  2. 网络连接状态
  3. 配置文件是否正确

更新日志

  • v1.0 - 初始版本
    • 支持基础认证功能
    • 支持自定义 MAC 地址
    • 支持开机自启和断线重连