当我们尝试ping到另一个网段的服务器时,我们会看到“TTL过期”消息。 当我们运行tracert时,4个IP地址会无限重复:
14 60 ms 59 ms 60 ms xxx.xxx.xxx.2 15 83 ms 81 ms 82 ms xxx.xxx.xxx.128 16 75 ms 80 ms 81 ms xxx.xxx.xxx.249 17 81 ms 78 ms 80 ms xxx.xxx.xxx.250 18 82 ms 80 ms 77 ms xxx.xxx.xxx.2 19 102 ms 101 ms 100 ms xxx.xxx.xxx.128 20 101 ms 100 ms 98 ms xxx.xxx.xxx.249 21 97 ms 98 ms 99 ms xxx.xxx.xxx.250 ...
排除此错误的基本步骤是什么?
正如上面所有答案中所述,路由循环导致TTL到期。
检查IP地址正在重复的设备上的路由。 在Linux上可以使用
route -n
以root用户身份查看当前的路由表。 在Windows上,你可以去cmd并使用命令
route print
查看当前的路由表。 在Cisco可pipe理交换机上,您可以使用命令
show ip route
在所有四个重复的IP上使用上面的命令,你应该看到哪个路由表是错误的。 所涉及的四个设备/主机中的一个理想情况下应该将stream量路由到您正在使用其他网关ping的目的地。
您的networkingconfiguration中有一个循环路由,请检查相关设备上的路由表。
“TTL过期”与TTL值有关, 它所经过的每一个路由器都会将其降低一个,如果它达到0,则将该数据包返回给发送者。 它防止无限循环,数据包永远循环传播。
IP数据包有一个TTL标志。 每次路由数据包时,这个数值减1。 当值变为0时,路由器丢弃数据包并发送ICMP消息超过传输时间的消息。
这样做是为了防止在networking中存在路由问题时将数据包无限路由。 这是你的情况,你有一个路由循环,使得数据包永远不会到达目的地,并且由于TTL达到0而最终被路由器中的一个丢弃。
在检查四台路由器的路由表时,重点关注路由的networking掩码 ,以及路由器是否能够路由“ classless
”。
在旧的思科,你需要明确地启用这个,否则他们将路由整个有类networking,而不是你的子网。 例如,configuration10.20.30.0/24
会产生一个像10.0.0.0/8
这样的10.0.0.0/8
。
你没有提到协议,但我发现过度使用静态路由导致错误很频繁。 使用dynamic路由协议应该可以很轻松地解决这个问题。
我只想说从第一层开始。 确保路由器处于打开状态,并且连接到networking的端口已经启动。 然后将您的路由从您的ICMP源映射到目标路由器,检查path上每个跃点的路由表。
当ping导致Expired In Transit …短路图 – ISP ==>路由器==>切换==>到PC
如果ISP可以看到他们的设备,那么你可能需要重新启动swich。 如果有效,那么你们都已经成立了。 如果没有,那么你可能需要重新启动路由器。
我得到了同样的错误信息。 我重新启动交换机,一切都恢复了。
祝你好运。
好的,我会和其他人一起报名。 您有一个路由循环,certificate了ICMP Echo请求在同一4个路由器之间保持循环。 检查路由器上的路由表,从xxx250处的路由器开始。
我收到一个TTL expired in transit
消息中TTL expired in transit
问题是DHCP中的错误条目。
有人在DHCP服务器中添加了一个静态IP地址(10.xx11)的主机名,同时主机还租用了一个新的dynamicIP地址(10.xx22)。
Pinging host.example.com [10.xx22] with 32 bytes of data: Reply from 10.xx11: TTL expired in transit. Reply from 10.xx11: TTL expired in transit. Reply from 10.xx11: TTL expired in transit. Reply from 10.xx11: TTL expired in transit. Ping statistics for 10.xx22: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),