我得到的跟踪路由结果如下:
HOST: local Loss% Snt Last Avg Best Wrst StDev
1.|-- 10.0.1.1 0.0% 10 1.2 10.2 1.1 32.1 10.9
2.|-- 111.111.11.21 0.0% 10 3.4 47.6 2.6 331.0 102.6
3.|-- bt-128-389.bta.net.cn 0.0% 10 4.5 11.9 4.5 25.9 7.4
4.|-- 124.65.28.229 0.0% 10 7.7 12.1 4.1 35.8 9.5
5.|-- 152.75.194.93 0.0% 10 11.0 17.3 6.2 35.7 10.3
6.|-- 219.111.6.110 0.0% 10 44.4 46.8 39.4 55.8 5.1
7.|-- 119.138.23.25 0.0% 10 56.4 68.2 51.1 110.3 19.5
8.|-- 212.111.96.222 0.0% 10 54.0 65.8 54.0 88.6 13.2
9.|-- 189.158.97.242 0.0% 10 61.3 71.2 51.5 98.4 18.1
10.|-- 231.158.40.102 10.0% 10 54.4 67.4 47.0 93.8 16.8
11.|-- 118.188.104.14 0.0% 10 54.0 66.7 45.6 103.6 19.7
12.|-- 116.151.36.153 0.0% 10 61.4 68.9 50.2 103.9 15.9
13.|-- ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
14.|-- 57.30.49.32 10.0% 10 54.5 68.9 46.2 102.1 20.1
我不明白:
- 为什么第 3-5 跳的平均连接时间比第 2 跳短?(因为第 3-5 跳距离较远,为什么连接它们比第 2 跳更快?)
- 在跳 13 处,如果该跳丢弃所有数据包,那么我最终如何连接到跳 14?(这是否意味着跳 13 不响应 ICMP,但仍将数据包转发到跳 14?)
答案1
首先您需要了解 tracert 的工作原理。
tracert
向目的地发送单个数据包,并增加生存时间。每个路由器都会减少 TTL,当它达到 0 时,路由器通常会向主机发送回一个 ICMP TTL 超出消息。因此,为了测试第一跳,TTL 为 1(路由器减少它并立即发回一个超出的 TTL)),第二跳使用 2,依此类推。
因此,对于跳 13,设备配置为不发送 TTL 超出消息。tracert
只需等待直到达到超时,增加 TTL,然后尝试后续跳。
至于您的时间差异,请注意,平均值较高,因为“最差”值高达 331 毫秒,而“最佳”值仅为 2.6,标准偏差很大,这表明您的“平均值”基于差异很大的数字(例如 2.6 和 331)。我想说第二跳只是差了半秒。