Ping TTL 网络

Ping TTL 网络

假设两台计算机通过路由器(默认网关)连接到同一网络。如果我要 ping 另一台机器,其标准 TTL 为 64(*nix 主机),我会得到 TTL 值为 64 的回复吗?还是由于它经过路由器,所以 TTL 值为 63?

答案1

这取决于它们位于路由器的哪一侧。如果它们都在 LAN 侧(正如您所暗示的那样),那么“路由器”所做的就是交换数据包。这意味着 TTL 将保持不变;64。

如果另一台机器位于不同的网络上,比如路由器的 WAN 端;则 TTL 将减少一。每次路由器决定将数据包路由到哪个网络时,它都会将数据包的 TTL 减少一。响应中生成的数据包也是如此(其 TTL 也应为 64)。

我不是专家,但我认为单个子网中的交换机应该知道所有主机以及如何到达它们。当事先不知道从发送方到目标的路由时,TTL 很有用:这可以阻止数据包在两个路由器之间循环路由或来回反弹。最终,损坏的路径将通过其他机制被识别和修复。

相关内容