Skip to content

路由追踪 — 路径探测

路由追踪探测数据包从本机到目标所经过的每一跳(路由器),用于定位网络路径中的延迟和丢包点。

UDP 路由追踪

使用系统 traceroute 命令,默认发送 UDP 探测包。

参数说明

参数类型必填默认值说明
目标 (target)stringIP 地址或域名
最大跳数 (max_hops)integer30TTL 最大值(1-255)
超时 (timeout)integer5每跳超时时间(秒)

结果解读

traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
 1  192.168.1.1 (192.168.1.1)  1.234 ms  1.100 ms  1.050 ms
 2  10.0.0.1 (10.0.0.1)  5.678 ms  5.500 ms  5.400 ms
 3  * * *
 4  72.14.215.120 (72.14.215.120)  15.200 ms  15.100 ms  14.900 ms
 5  8.8.8.8 (8.8.8.8)  12.345 ms  12.200 ms  12.100 ms
现象含义
* * *该跳无响应(路由器禁用 ICMP TTL 超时回复或防火墙拦截)
延迟突增该跳可能存在拥塞或跨运营商链路
一直 * * * 后到达目标中间节点限制 ICMP,不影响实际通信
停在某跳后无法到达目标该跳之后路由不可达或目标防火墙丢弃包

TCP 路由追踪

使用 traceroute -T(TCP SYN 包),能穿透更多屏蔽 UDP 的防火墙。

参数说明

参数类型必填默认值说明
目标 (target)stringIP 地址或域名
端口 (port)integer(系统默认)目标端口(1-65535)
最大跳数 (max_hops)integer30TTL 最大值(1-255)
超时 (timeout)integer5每跳超时时间(秒)

结果解读

与 UDP 模式类似,但使用 TCP SYN 探测。适合以下场景:

  • 目标防火墙屏蔽 ICMP
  • 需要验证到指定端口的路径
  • UDP traceroute 被中间网络设备限流

判断标准

  • 完整路径可达 → 最后一跳为目标 IP,各跳延迟平稳
  • 某跳延迟突增 → 该跳是瓶颈,可能存在 congestion
  • 中间多跳无响应 → 路由器不回复 ICMP TTL-exceeded(正常现象,看最后一跳是否可达)
  • 目标不可达 → 在中间某跳后不再有回应,且未到达目标

注意事项

  • 需要系统安装 traceroute 命令
  • 需要 CAP_NET_RAW 权限
  • UDP 模式受防火墙影响较大,TCP 模式兼容性更好