所以我在这个问题上遇到了这个问题
traceroute some-server.abc.com
返回***多行,最后达到最大跳数限制。
做traceroute -T some-server.abc.com工作得很好。 我检查了手册页,默认情况下, traceroute使用UDP协议,-T强制它使用TCP探测包。
什么可能是这种行为的可能原因。 另外请注意, ping可以正常使用这台主机。
从traceroute Wikipedia页面引用:
在类Unix操作系统上,traceroute实用程序默认使用用户数据报协议(UDP)数据报,目标端口号范围从33434到33534. traceroute实用程序通常可以使用ICMP Echo Request(types8)数据包,就像Windows tracert工具一样,或者使用TCP SYN数据包。[1] [2] 如果一个networking有一个防火墙,同时运行Windows和类Unix系统,则必须启用多个协议才能通过防火墙入站,以便跟踪路由工作并接收回复。
traceroute UDP数据包不通过的最可能的原因是防火墙。