$ traceroute -n 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
1 8.8.8.8 3.158 ms 4.246 ms 5.054 ms
2 * * *
3 8.8.8.8 9.121 ms 10.245 ms 9.327 ms
4 8.8.8.8 12.134 ms 13.160 ms 13.144 ms
5 8.8.8.8 9.727 ms 10.938 ms 9.899 ms
6 * * *
7 8.8.8.8 8.138 ms 12.061 ms 11.841 ms
$ traceroute -n --icmp 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
1 8.8.8.8 2.046 ms 1.976 ms 1.962 ms
2 8.8.8.8 9.557 ms 9.547 ms 9.536 ms
$ traceroute -n --udp 8.8.8.8这是默认模式的正确跳数(上面的第一次调用),有正确的时间,但是每跳路由器的IP在哪里?
traceroute 2.1.0
清除了iptable:iptables -F && iptables -F -t nat在路由表中没有什么特殊的内容:
$ ip route
default via 192.168.0.1 dev eth0 proto static
192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.9UPDATE:主机之间的区别在于主机的IP分配是通过来自路由器的DHCP (traceroute工作)还是在客户端配置中静态分配(traceroute中断)。
发布于 2020-07-31 02:19:35
解决这个问题的方法是让NATing路由器通过DHCP将IP分配给客户端,而不是在客户机中设置静态IP配置。
据推测,路由器中的NAT配置在注册到路由器的DHCP服务器的客户端与仅显示在交换机子网上的客户端之间存在某种微妙的差异。我尽力了,但没有找到路由器配置的确切内容,除非客户端使用DHCP,否则不会发生这种情况。我试着通过web接口在路由器的数据库中注册静态客户端,但是没有什么区别。还查看了telnet接口,但是shell中没有iptables,可以在命令和转储中找到任何相关的内容。路由器拥有专有固件。
https://serverfault.com/questions/1027345
复制相似问题