为什么 traceroute 会失败?

为什么 traceroute 会失败?

假设我跟踪路由到地址 A:24.205.224.36

跟踪路由的开始部分如下所示:

$ traceroute -d 24.205.224.36
traceroute to 24.205.224.36 (24.205.224.36), 64 hops max, 52 byte packets
 1  192.168.1.1 (192.168.1.1)  4.799 ms  12.566 ms  0.766 ms
 2  10.101.58.1 (10.101.58.1)  8.915 ms  7.186 ms  8.070 ms
 3  dtr01thdlor-tge-0-1-0-1.thdl.or.charter.com (96.34.105.152)  8.810 ms  9.118 ms  14.246 ms
 4  acr01thdlor-tge-3-1.thdl.or.charter.com (96.34.104.235)  7.578 ms  7.420 ms  7.702 ms

但当我尝试跟踪路由到地址 B:192.168.1.1 时,我得到的只是 * * *:

 $ traceroute -d 192.168.1.1
 traceroute to 192.168.1.1 (192.168.1.1), 64 hops max, 52 byte packets
 1  * * *
 2  * * *

尽管地址 B 位于通向地址 A 的路径上,但情况仍然如此。

为什么 A 在去往 B 的路上可达,但却无法直接到达?

令人困惑。

这是我正在使用的 traceroute 版本:

$ traceroute -v
Version 1.4a12+Darwin
Usage: traceroute [-adDeFInrSvx] [-A as_server] [-f first_ttl] [-g gateway] [-i iface]
[-M first_ttl] [-m max_ttl] [-p port] [-P proto] [-q nqueries] [-s src_addr]
[-t tos] [-w waittime] [-z pausemsecs] host [packetlen]

答案1

我认为这取决于您的默认网关/第一跳的设备。使用traceroute -I 192.168.1.1ICMP 而不是默认的 UDP。那么它可能会起作用。

相关内容