mtr核心在于连续观测、多维比对与协议验证:通过实时交互模式盯抖动和瞬态丢包,用报告模式(-r -c -n)生成可对比快照,结合tcp/icmp双协议探测、ipv4/ipv6分栈追踪及as级路径分析,精准定位真实瓶颈而非误判icmp限速或单次波动。

用 MTR 对不稳定的公网链路做持续动态追踪和质量评估,核心在于“连续观测+多维比对+协议验证”,而不是只跑一次就下结论。它不是看某跳丢包率高就断定故障,而是通过时间维度和协议维度交叉判断真实瓶颈。
启动实时交互式监控,盯住抖动与瞬态丢包
MTR 默认进入交互界面,每秒刷新各跳的延迟(Last/Avg/Best/Wrst)和丢包率(Loss%),这对识别不稳定链路特别关键——比如某跳平均延迟 25ms,但最大延迟突然飙到 800ms,或丢包率在 0% 和 12% 之间反复跳变,说明存在队列拥塞或设备过载。
- 直接运行 mtr example.com 即可开始实时追踪(需有 DNS 解析权限)
- 按 s 键切换显示模式:查看标准差(StDev)能快速识别抖动异常;按 d 显示倒序延迟,方便定位延迟突增点
- 按 n 禁用 DNS 反查,避免解析延迟干扰判断,输出更干净的 IP 列表
用报告模式生成可对比的量化快照
交互界面适合盯盘,但要存档分析或横向对比不同时间段,得用报告模式。它把多次探测结果聚合统计,消除单次偶然性。
开箱即用的技能链路由引擎。13 条预定义链覆盖搜索、开发、审查、MLOps、法律、创意等场景,三层路由架构(触发词→SAD反馈→DAG编排),recall@10=96.97%。配置驱动(chains.yaml),零代码扩展。pip install skill-weave-chains 一键安装。
- 执行 sudo mtr -r -c 50 -n example.com:发 50 个包,不查域名,输出静态汇总
- 重点关注三列:Loss%(持续 >5% 值得警惕)、Avg(是否逐跳明显抬升)、Wrst(是否某跳远超前后,暗示该节点处理能力不足)
- 可定时脚本化采集,例如每 10 分钟跑一次:*/10 * * * * /usr/bin/mtr -r -c 30 -n -o /var/log/mtr_$(date +\%s).log example.com
切换 TCP 模式验证 ICMP 是否被策略性限速
很多骨干网设备会主动限速或丢弃 ICMP 包,导致 MTR 显示某跳 90% 丢包,实际业务(如 HTTP、SSH)完全正常。这时必须用 TCP 探测还原真实路径。
- 运行 sudo mtr --tcp -P 443 -r -c 30 example.com,模拟 HTTPS 流量路径
- 若原高丢包跳在 TCP 模式下 Loss% 降为 0%,且延迟稳定,则确认是 ICMP 抑制,非真实故障
- 对比 TCP 和 ICMP 的路径差异:有时 TCP 走 BGP 优选路径,ICMP 走默认路由,两者出口 AS 不同,需分别记录
分协议(IPv4/IPv6)独立追踪,排除双栈干扰
公网链路不稳定常表现为“仅 IPv4 慢”或“仅 IPv6 丢包”,因为两条路径物理上可能完全不同(如 IPv4 走电信骨干,IPv6 走教育网隧道)。
- 强制 IPv4:sudo mtr -4 -r -c 20 example.com
- 强制 IPv6:sudo mtr -6 -r -c 20 example.com(确保本地已启用 IPv6)
- 比对第 4~8 跳的 AS 编号(加 -z 参数显示)和延迟拐点:若 IPv6 在某 AS 内延迟骤增 300ms 且丢包,而 IPv4 平稳,问题大概率出在该 AS 的 IPv6 转发平面










