tracert的结果怎么看,每一行每一列都是什么意思

网络慢或不通,网管让跑一个 tracert,命令一敲出来几十行数字加星号,完全不知道从哪看起——其实这份输出有固定的"行文结构",会读一行就会读全文。

原因

tracert 的原理是发出探测包并把 TTL(生存跳数)从 1 开始逐跳加一:TTL 耗尽在哪台路由器,那台路由器就回一个"超时"报文,顺带暴露自己的地址,于是每一行就代表去程路径上的一台设备。理解了这一点,输出里的私网地址、星号、忽大忽小的时延就都能解释了,而不是一堆乱码。

分步解决

  1. 先认行结构:每一行依次是跳数、三个以毫秒计的往返时延、该跳的 IP(或解析出来的域名)。三个时延是这一跳发了三次探测各自的花费;某个位置是星号,表示那一次探测没等到回应。
  2. 认出内网地址,别慌:第一跳通常是 192.168 开头,那是你的网关;中间出现 10、100.64、172.16 到 172.31 开头的地址也正常,那是运营商骨干里路由器的接口地址。中间跳出现私网 IP 不代表走错了,只说明那台路由器用内网地址回的报文。
  3. 星号只代表"这一跳没回话":很多运营商路由器对超时报文限速或干脆不回,但数据照样被它转发。只要星号后面还有新的一跳出现,路径就是通的,别急着断网重连。
  4. 看时延拐点定位瓶颈:找到"从哪一行开始时延明显抬升且之后一直保持高位"。前几跳就高,问题在内网或接入侧;中间段抬升,多半在运营商网内;最后几跳才高,是对端服务器或它的出口。时延偶尔一行变小不用惊讶,回程路由和去程可能走不同路径,行号不等于累计距离。
  5. 用最后一行下结论:最后一行是不是目标 IP、时延是否在合理范围,才是判断通断的依据。中间再难看,终点正常到达,链路就是健康的。

预防

在网速正常的日子跑一次 tracert 存下来当基线,故障时对比"多了哪一跳、时延从哪变了",定位效率高很多;跑命令时加参数 -d 跳过域名反解析,输出更快也更干净;把基线一并留给运营商,报障时直接指出劣化的跳段,比一句"网很卡"有效得多。