这是我的traceroute的结果
traceroute www.google.com traceroute to www.google.com (216.58.211.228), 30 hops max, 60 byte packets 1 192.168.1.1 (192.168.1.1) 1.061 ms 1.709 ms 2.262 ms 2 * * * 3 10.103.5.41 (10.103.5.41) 41.594 ms 43.136 ms 44.617 ms 4 172.29.24.33 (172.29.24.33) 50.849 ms 51.574 ms 52.316 ms
命令traceroute中有* * *是什么意思? 你怎么能应付这种情况?
这意味着受影响的主机(在您的示例中,第二个)没有回复traceroute。 由于traceroute默认使用UDP端口,因此可以使用“-I”选项将发现协议更改为使用ICMP / PING。 除此之外,你什么也做不了。
这意味着一个TTL调整的数据包没有返回一个合适的ICMP TTL超出数据包 ,或者这些数据包在回程中丢失,在给定的时间内跟踪路由等待它们。 这可能意味着,在路上的主机不能正确生成它们,如果有的话。
关于这一点,你无能为力。 您可以更改协议traceroute用于发现(如shodanshok所述),或增加超时(例如traceroute -w 15 )。 也尝试减less发送的请求数量( -N 5 )。
PS你也可以尝试使用一些工具来利用RECORD_ROUTE,例如hping3 。 但是我无法给你更多的细节,因为我从来没有能够使用它。