发布网友 发布时间:2022-03-06 18:18
共1个回答
热心网友 时间:2022-03-06 19:47
TTL是 Time To Live的缩写,该字段指定IP包被路由器丢弃之前允许通过的最大网段数量。TTL是IPv4报头的一个8 bit字段。
Time To Live是互联网数据报生命周期上限的指示。它由数据报的发送者设置,并在处理它的路径上的点处减少。如果 Internet 数据报到达其目的地之前生存时间达到零,则 Internet 数据报将被销毁。生存时间可以被认为是自毁时间*。
在Internet 协议下,TTL 是一个 8 位字段。在IPv4 头中,TTL 是20的第 9 个八位字节。在IPv6 头中,它是 40 的第 8 个八位字节。最大 TTL 值为 255,单个八位字节的最大值。推荐的初始值为 64。
可以将生存时间值视为 IP数据报可以在 Internet 系统中存在的时间的上限。TTL 字段由数据报的发送方设置,并由到达目的地的路由上的每个路由器减少。
如果 TTL 字段在数据报到达其目的地之前达到零,则该数据报将被丢弃,并将Internet 控制消息协议(ICMP) 错误数据报 ( 11 - Time Exceeded ) 发送回发送方。
TTL 字段的目的是避免出现无法投递的数据报在 Internet 系统上不断循环,并最终被此类“不朽者”淹没的情况。
理论上,在IPv4下,生存时间以秒为单位,尽管每个通过数据报的主机都必须将 TTL 减少至少一个单位。实际上,TTL 字段在每一跳上减一。为了反映这种做法,该字段在IPv6 中更名为hop limit。
DNS 记录
TTL 也出现在域名系统(DNS) 中,它们由权威名称服务器为特定资源记录设置。当缓存(递归)名称服务器向权威名称服务器查询资源记录时,它会在 TTL 指定的时间(以秒为单位)缓存该记录。
如果存根解析器在 TTL 到期之前查询缓存名称服务器的相同记录,缓存服务器将简单地回复已缓存的资源记录,而不是再次从权威名称服务器检索它。
NXDOMAIN(不存在的域)响应的 TTL 从SOA的 MINIMUM 字段的最小值开始设置记录和 SOA 本身的 TTL,并指示解析器可以缓存否定答案的时间。
更短的 TTL 会导致权威名称服务器上的负载更重,但在更改关键服务(如Web 服务器或MX 记录)的地址时会很有用,因此 DNS 管理员通常会在移动服务之前将其降低,以减少可能的中断。