首页 / 文章

traceroute 与 MTR 怎么看:定位网络慢和丢包出在哪一跳

发布于 4 分钟阅读traceroute MTR 路由追踪 丢包

摘要讲清路由追踪原理、tracert/traceroute/MTR 命令用法,以及判断真假丢包的四条规则,附给服务商提交证据的清单,并说明和网页 Ping 测试如何配合。

网页卡、视频转圈、游戏掉线,打开 Ping 测试一看,延迟又高又抖。可你想知道的是:问题到底出在哪一段线路上? 这时候就要用路由追踪工具:traceroute 和 MTR。

这篇文章讲它们的原理、命令怎么用,以及最关键的部分:怎么读结果、哪些现象是真问题、哪些是假警报。

路由追踪的原理

数据从你的电脑到目标服务器,要经过很多个路由器,每一个叫"一跳"。traceroute 的做法是:

  1. 发出一批数据包,把 TTL(生存时间)设为 1,第一个路由器收到后 TTL 减到 0,会丢弃并返回一个"超时"通知,你就知道了第一跳的地址和往返时间;
  2. 把 TTL 设为 2,同理得到第二跳;
  3. 依次增加,直到到达目标。

所以 traceroute 能列出路径上每一跳的地址和延迟。注意它只显示去程的路径,回程路径可能完全不同。

命令怎么用

Windows:

tracert example.com
pathping example.com

pathping 会在追踪之后统计每一跳的丢包,耗时较长。

Linux / macOS:

traceroute example.com

Linux 的 traceroute 默认用 UDP 探测包,Windows 的 tracert 用 ICMP。有些网络会拦截其中一种,所以结果显示不全时,可以换协议再试,比如 Linux 上用 traceroute -I 走 ICMP,或 traceroute -T -p 443 走 TCP。

MTR(推荐): MTR 把 ping 和 traceroute 合在一起,持续探测并统计每一跳的丢包和延迟,结果比一次性的 traceroute 可靠得多。

mtr -rwzbc 100 example.com

参数含义:-r 报告模式、-w 宽输出、-z 显示 AS 号、-b 同时显示 IP 和主机名、-c 100 探测 100 轮。Windows 上可以用 WinMTR 这类图形工具。

怎么读结果:几个关键的字段

MTR 报告里常见这几列:

判断真假问题的四条规则

1. 看最后一跳,别只看中间。 真正影响你的是到达目标的整体质量。如果最后一跳没有丢包、延迟正常,中间某一跳显示的丢包通常可以忽略。

2. 中间跳丢包、后面不丢,是假警报。 很多路由器会把"回复探测包"的优先级调得很低,或限制回复速率,所以中间跳显示高丢包,但转发真实流量没问题。判断依据是:真正的丢包会一直延续到后面所有的跳,包括最后一跳。

3. 星号 * 不等于线路断了。 星号表示在超时时间内没收到回复,可能是该路由器配置为不回复,或防火墙过滤了探测包。如果后面的跳依然正常响应,说明流量是通的。

4. 延迟突增要看位置。 如果某一跳开始延迟明显升高,并且之后所有跳都保持在高位,那这里很可能是真正的瓶颈或长距离链路。如果只有中间某一跳高、后面又降下来,则多半是该设备处理探测包慢,不影响你。

常见的几种现象与解读

把结果交给服务商时要带什么

想让对方认真处理,不要只说"网很卡"。要带上:

和 ipscoper 的 Ping 测试怎么配合

浏览器没办法发 ICMP 包,所以 ipscoper Ping 测试测的是 HTTP 往返延迟,包含 DNS、TCP 和 TLS 耗时。它适合做第一步判断:到某些服务的整体延迟、抖动、是否不可达。判断好坏的标准见《Ping 多少算正常》。一旦发现问题,再用 traceroute 或 MTR 去定位具体哪一段。这两者是接力关系,不是替代关系。

小结

读路由追踪结果,核心是三点:看最后一跳、看问题是否一直延续到后面、别被中间跳的丢包和星号吓到。掌握这几条,你就能区分真正的线路问题和设备的"假警报",也能给服务商提供有用的证据。如果你的问题发生在使用特定服务时,可以先按《AI 服务总被要求验证或限制?先自查 IP 与网络环境》里的步骤把"被限制"和"网络差"分开。

延伸阅读

ipscoper 编辑部 · 关于我们 · 评分方法

现在就检测你的 IP 与浏览器环境
免费查询 IP 归属地与风控值,检测浏览器指纹泄漏,测试网络延迟。无需注册。

← 返回文章列表