如果Router的Gig0/0/0到它的Gig0/0/1,是否只需要一个TTL值?

网络工程 路由器 ip
2021-07-10 02:41:29

我对 TTL 值有疑问。

enter image description here

  1. Router3的Gig0/0/0转Gig0/0/1是否会花费一个TTL?

  2. 如果Router2的Gig0/0/0到Router3的Gig0/0/0,是否需要一个TTL?还是不花钱?

  3. 如果 Router2 loopback0 到 Router2 的 Gig0/0/0,将花费一个 TTL?

  4. 如果Router2 Gig0/0/0到Router6的Gig0/0/0,只需要一个TTL?

2个回答

路由器转发数据包总是递减 TTL 它是 IP 基础的一部分,当路由器在接口上接收到数据包并决定将它从(通常是不同的)接口发送出去时,就会发生这种情况。

在您的示例中,考虑一个从 R2 到 R6 的数据包(可能是 ping),您可以在左侧和右侧两个网络上查看数据包。右边的人会看到一个 TTL 较低的数据包,因为它被 R3 改变了。

在您关于环回接口的示例中,问题是它是否被转发。算法是:

  1. 接收数据包
  2. 检查完整性,如果不好则丢弃
  3. 适合我吗(我的任何 IP 地址?)
  4. 如果是,请适当处理
  5. 如果不是,则递减 TTL
  6. 如果 TTL 为零,则丢弃它
  7. 如果没有,看看是否可以转发到下一跳

例如,如果您使用 lo0 中的源地址和下一跳 R3 从 R2 执行 ping,则不会发生递减,因为数据包不是在 R2 上转发,而是在 R2 上发起。

唯一令人困惑的情况是通过隧道的数据包:外部的传输数据包的TTL总是递减,但内部的有效负载数据包通常不会——它只是有效负载。因为这是一个会造成循环的棘手情况,一些系统也会调整内部有效载荷数据包。

TTL 由路由器递减,因此在您的情况下,它在路由器 3 上的接口之间传递。

不过要回答你的问题:

  1. 是的
  2. 是的