Network Doctor

宽带故障检测助手

家庭网络故障检测工具。同时测路由器和外网,自动判断问题出在家里 WiFi、外部线路,还是某个设备的后台任务——零依赖,完全在你自己电脑上跑,数据不上传。

原理

同时测两段,哪段先出问题就卡在哪段

大多数测速工具只告诉你带宽多少,测不出偶发掉线。Network Doctor 把链路分成两段同时监测,一旦某段出现异常,立刻能定位到具体是哪一段。

你的设备
路由器
互联网

使用界面

三步配置,不用碰命令行

  • 1
    路由器地址留空自动检测,用来判断是不是家里 WiFi 的问题。
  • 2
    外网目标默认两个独立公共 DNS,交叉验证避免误判。
  • 3
    运行设置采样间隔和测试时长,一键开始监测。
1路由器地址
留空自动检测,例如 192.168.1.1
2外网目标
223.5.5.5 → 阿里DNS
119.29.29.29 → 腾讯DNS
开始监测

输出结果

结论 + 曲线图,直接能拿去报修

  • 直接给结论不只是给数据,而是告诉你问题出在哪一段、该怎么办。
  • 交互曲线图路由器和外网延迟对比,异常一眼看出来。
  • 一份可发送的报告独立 HTML 文件,直接发给运营商客服做证据。

问题在光猫之后的外部线路

外网连续出现 3 段整体超时(平均约 13 秒),期间路由器段始终正常,可以拿这份报告找运营商报修。

路由器0.0%5.2 ms
外网 阿里DNS4.1%210 ms
外网 腾讯DNS3.8%198 ms
查看完整报告 ↗再测一次

特点

为普通家庭设计,不是又一个专业级工具

零依赖

只用 Python 标准库,不用装任何第三方包。

交叉验证

默认测两个独立公共 DNS,避免单个目标自己抽风被误判成你家网络的问题。

自动识别规律

区分"固定周期跳高"(多是设备后台任务)和"连续整段掉线"(多是线路掉线重拨)。

本地网页界面

开始/停止按钮 + 实时曲线,不用碰命令行。

断线不丢进度

网页刷新或关掉标签页,后台继续记录,重新打开自动接上。

数据不上传

完全在本机运行,所有记录只保存在你自己电脑上。

常见问题

大家常问的几个问题

为什么家里网络会偶尔卡顿,但测速却显示正常?

测速工具测的是那一瞬间的带宽,而卡顿往往是几秒到十几秒的短暂掉线或延迟飙高,两次测速之间就恢复了,普通测速工具根本抓不到。Network Doctor 靠长时间连续监测,能抓到这种偶发问题。

怎么判断卡顿是家里 WiFi 的问题,还是运营商线路的问题?

同时测"设备到路由器"和"设备到外网"两段延迟。如果只有外网那段跳高、路由器一直稳定,问题基本在光猫之后(运营商线路);如果连路由器都跳高或丢包,问题在你家 WiFi/内网。

为什么要同时测两个外网目标,而不是一个?

如果只测一个目标,万一那个目标自己抽风或屏蔽了 ping,会被误判成自家网络有问题。两个互不相关的目标同时都测出异常,才更可信是你家线路的事,这也是为什么默认用两家独立 DNS 服务商。

需要一直开着电脑跑吗?

只在监测期间需要。建议至少跑 10 分钟,偶发问题建议跑 30 分钟以上、覆盖平时会卡的时段;跑完生成报告后就可以关掉。

我的网络数据会被上传到哪里吗?

不会。Network Doctor 完全在你自己电脑上运行,所有 ping 记录和报告只保存在本地磁盘,不会联网上传任何数据。

支持 Windows 吗?

目前只测试过 macOS 和 Linux(依赖系统自带 ping 命令的输出格式)。Windows 的 ping 输出格式不同,还没适配,欢迎在 GitHub 上提交兼容性改动。

开始使用

三分钟跑起来

  1. 下载代码 — clone 这个仓库到你的电脑(macOS / Linux,需要 Python 3.7+,系统自带即可)
  2. 启动 — macOS 双击"启动网络监测.command",或在终端运行 python3 server.py,会自动打开浏览器
  3. 开始监测 — 网页里点"开始监测",建议至少跑 10 分钟,偶发卡顿建议更久
  4. 看结果 — 停止后自动生成结论和曲线图,也能直接拿这份报告去找运营商报修
git clone https://github.com/QJQA/netdoctor.git
cd netdoctor
python3 server.py