监控并管理运行 AsusWRT/AsusWRT‑Merlin 固件的华硕路由器,支持状态检查、客户端/流量排行列表、存在检测、AiMesh 拓扑...
Asus路由器管理是一项面向实际任务的技能,主要用于管理 Asus路由器通过 Asusrouter Python 库.;任何路由器运行的股票 AsusWRT, AsusWRT-Merlin, 或 Merlin/GNUton 固件, 暴露于本地 Asus 的操作器。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;
涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
通过 asusrouter Python 库管理华硕路由器。支持运行原厂 AsusWRT、AsusWRT-Merlin 或 Merlin/GNUton 固件(且暴露本地 AsusWRT Web API)的任意路由器。
pip install asusrouter aiohttp
将 config.example.yaml 复制为 config.yaml,并填写您的路由器信息:
cp skills/asus-router/config.example.yaml skills/asus-router/config.yaml
编辑 config.yaml,填入路由器的 IP 地址、用户名和密码。
python3 skills/asus-router/router.py status
所有具备 AsusWRT Web 管理界面的华硕路由器均受支持:
所有命令均通过 router.py 执行。若使用虚拟环境,请先激活。
python3 router.py status # WAN 状态、CPU 使用率、内存占用、AiMesh 节点数、客户端总数 python3 router.py status --json # 输出机器可读格式(JSON)
python3 router.py clients # 列出全部设备 python3 router.py clients --online # 仅在线设备 python3 router.py clients --filter "iphone" # 按设备名/IP/MAC 地址搜索 python3 router.py clients --sort speed --limit 10 # 当前带宽占用最高的前 10 台设备 python3 router.py clients --sort signal # 按 Wi-Fi 信号强度排序(弱/强信号设备) python3 router.py clients --json # JSON 格式输出
python3 router.py who
检查 config.yaml 中定义的已知设备,判断哪些人当前在家。
python3 router.py wan # 公网 IP、网关、DNS、DHCP 租约、双 WAN 状态 python3 router.py wan --json
python3 router.py mesh # 显示各客户端所连接的 AiMesh 节点 python3 router.py mesh --json
python3 router.py find "samsung" python3 router.py find "192.168.1.100" python3 router.py find "AA:BB:CC:DD:EE:FF"
python3 router.py ping
python3 router.py firmware # 固件版本、系统信息、发布说明数据(若固件暴露该信息) python3 router.py ports # 以太网端口及链路状态 python3 router.py vpn # OpenVPN、WireGuard、VPN 客户端状态(JSON 格式输出) python3 router.py health # 面向告警优化的综合健康状态(WAN/CPU/RAM/固件/端口/VPN) python3 router.py raw firmware # 按名称导出任意 AsusData 数据集
raw 命令被有意保留,以便在 AsusWRT 5 / ExpertWiFi / Guest Network Pro / VLAN 等新固件版本通过 asusrouter 暴露新的数据集时,本工具无需等待新增“美化命令”即可直接使用。
ping 命令默认检测 config.yaml 中定义的目标(默认为:网关 + Cloudflare + Google)。
python3 router.py reboot --confirm
⚠️ 必须显式指定 --confirm 参数。执行后将导致 2–3 分钟不可用。
status — 检查 WAN 链路状态ping — 检测到外部 IP 的延迟wan — 检查 DHCP 租约与 DNS 设置clients --online --json — 查看 rx_speed/tx_speed 字段
who — 检查 config.yaml 中 known_devices 下列出的设备
mesh — 检查客户端在各 AiMesh 节点间的分布情况status — 检查 CPU 与内存使用率(高 CPU 表示过载)find — 查看设备信号强度(RSSI)所有设置均位于 config.yaml 文件中。完整模板请参考 config.example.yaml。
关键配置项:
router.host — 路由器 IP 地址router.username — 管理员用户名router.password — 管理员密码router.ssl — 启用 HTTPS(默认:false)router.port — 可选的 Web UI/API 端口;HTTPS 本地访问常用端口为 8443known_devices — 用于存在检测的设备列表ping_targets — 自定义延迟检测目标对于新型路由器,建议在稳定前提下优先启用 HTTPS 本地访问:在 AsusWRT 界面中进入 Administration → System → Local Access Config → Authentication Method 启用 HTTPS,随后在配置中设置 ssl: true 及对应端口号。
在任意命令后添加 --json 参数,即可获得机器可读的 JSON 输出。适用于定时任务(cron)、心跳检测与告警集成等场景。
如需长期持续监控,还可通过 HACS 安装 ha-asusrouter:
https://github.com/Vaskivskyi/ha-asusrouter
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习
最新文章