mtr命令
mtr 是一个强大的网络诊断工具,它的名字是 My Traceroute 的缩写。它结合了 ping 和 traceroute 两个经典命令的功能,能够实时地、持续地显示数据包从你的计算机到目标主机所经过的网络路径,并提供每一段路径的延迟、丢包等详细统计信息。
🧰 一、mtr 的核心功能
🖼️ 二、举个生活化的比喻
想象你要寄一封信从 天津 到 广州:
ping就像:信能不能送到?来回要多久?traceroute就像:查一次物流记录,看信经过了哪些中转站(北京→郑州→长沙)。mtr就像:实时监控物流系统,持续观察每一段路程的运输时间、是否有包裹丢失、哪个中转站总是延误。
📋 三、你刚才的 mtr 输出解读(简化版)
Host Loss% Snt Last Avg Best Wrst StDev
1. _gateway 0.0% 55 0.5 0.4 0.4 0.7 0.1 → 本地网关,正常
2. 192.168.18.1 0.0% 55 0.9 0.9 0.7 1.9 0.2 → 内网设备,正常
3. dns1.online.tj.cn 21.8% 55 4.3 7.0 2.5 42.0 6.8 → 天津联通节点,开始丢包
...
7. 219.158.112.137 5.5% 55 5.9 7.5 5.2 28.1 4.3 → 电信骨干网,稍好
8. 202.96.12.2 85.5% 55 6.0 6.1 5.5 7.4 0.6 → 江苏电信,严重丢包
...
17. ecs-...hwclouds-dns.com 0.0% 54 9.6 9.5 8.6 15.1 1.2 → ✅ 最终到达目标,且无丢包
➡️ 结论:虽然中间很多“中转站”报告包裹丢失(可能是它们不回复探测),但最终信还是送到了,说明网络是通的,只是中间路径质量较差或设备不响应探测。
▶️ 四、如何使用 mtr
基本语法:
mtr [选项] 目标地址
常用示例:
# 基本用法
mtr google.com
# 只显示 IP,不解析域名
mtr -n google.com
# 使用 TCP 协议测试(绕过 ICMP 限制)
mtr --tcp --port 443 google.com
# 限制探测次数后自动退出(适合脚本)
mtr -c 10 google.com
⚠️ 五、注意事项
mtr默认使用 ICMP 包,有些网络设备会限制或屏蔽 ICMP,导致“假丢包”。中间某些路由器可能不返回超时消息,所以看到
(waiting for reply)并不一定代表网络不通。最终能到达目标且无丢包(如你的第17跳),通常说明网络是可达的。
✅ 总结
mtr是一个比ping和traceroute更强大、更直观的网络诊断工具,特别适合用来:
排查网络延迟或丢包问题
定位是本地、运营商还是对方服务器的问题
判断网络链路的稳定性
如果你遇到“网络慢”、“连不上服务器”等问题,运行一个 mtr 往往能快速找到问题出在哪一段。
pathping 是 Windows 系统内置的一个强大的网络诊断命令,它结合了 ping 和 tracert(即 Linux 下的 traceroute)的功能,专门用于分析数据包从源主机到目标主机所经过的路径,并精确统计每一跳的网络延迟和丢包情况。
你可以把它理解为 Windows 版的 mtr(My Traceroute),但它是分阶段运行的,更加严谨。
Pathping命令
🧰 一、pathping 的核心功能
▶️ 二、pathping 的工作原理(两阶段)
🔹 第一阶段:路由发现(类似 tracert)
pathping首先执行一次路径追踪,确定从你到目标主机的所有中间节点(路由器)。它通过递增 TTL(Time to Live)值来发现每一跳的 IP 地址。
🔹 第二阶段:持续探测(类似 ping 的增强版)
在确定路径后,
pathping会向每一跳发送大量 ICMP 请求包(默认持续 250 秒)。收集每个节点的响应情况,计算:
每一跳的平均延迟
每一跳的丢包率
最终生成一份详细的报告。
📋 三、pathping 输出示例解析
C:\> pathping www.baidu.com
Tracing route to www.a.shifen.com [110.242.68.66]
over a maximum of 30 hops:
0 PC-LOCAL
1 192.168.1.1
2 10.10.0.1
3 123.123.123.123
4 202.97.33.14
5 202.97.8.1
6 202.97.9.1
7 110.242.68.66
Computing statistics for 250 seconds...
Source to Here This
Hop RTT Lost/Sent = Pct Node
0 PC-LOCAL
0/ 100 = 0% |
1 1ms 0/ 100 = 0% | 192.168.1.1
2 2ms 0/ 100 = 0% | 10.10.0.1
3 5ms 2/ 100 = 2% | 123.123.123.123
4 10ms 15/ 100 = 15% | 202.97.33.14
5 12ms 85/ 100 = 85% | 202.97.8.1
6 13ms 0/ 100 = 0% | 202.97.9.1
7 14ms 0/ 100 = 0% | 110.242.68.66
Trace complete.
🔍 输出解读:
✅ 关键判断:
第 1~2 跳:本地网络,延迟低、无丢包 ✅
第 3 跳:开始轻微丢包(2%)⚠️
第 4 跳:丢包 15%,网络质量下降 ⚠️
第 5 跳:丢包高达 85%! ❌ 问题极可能出在这里(可能是运营商节点拥塞或限速)
第 6~7 跳:恢复正常 → 说明目标服务器本身没问题
🛠️ 四、常用 pathping 命令参数
示例:快速不解析域名的测试
pathping -n -h 20 -q 50 www.google.com
⚠️ 五、注意事项
运行时间较长
pathping默认会运行 250 秒(约4分钟),因为它要收集足够数据。耐心等待最终报告。需要管理员权限
某些情况下需要以“管理员身份运行命令提示符”才能使用。ICMP 可能被屏蔽
有些路由器或防火墙会屏蔽 ICMP 包,导致“假丢包”或无法显示某些节点。仅限 Windows
pathping是 Windows 特有的命令,Linux/Unix 系统使用mtr实现类似功能。
✅ 六、适用场景(什么时候用 pathping?)
🔄 七、与 mtr / ping / tracert 对比
✅ 总结
pathping是 Windows 下最强大的网络路径分析工具之一,特别适合:🔹 排查网络延迟高、卡顿、丢包问题
🔹 定位是本地、运营商还是对方服务器的问题
🔹 生成专业级网络诊断报告
📌 使用建议:
遇到网络问题时,先
ping看是否通;再用
tracert看路径;最后用
pathping做深入分析,找出具体哪一跳有问题。
如果你在 Windows 上想深入了解网络质量,pathping 是必学命令!