TTL是Time To Live的缩写,翻译过来就是生存时间,用于DNS解析之中就是指DNS解析记录(DNS缓存)在DNS服务器上的保留时间,在实际的域名解析过程中,用户访问域名后,并不是每次都需要向权威解析服务器去请求最新的解析记录,这样不但会产生比较大的解析时延,同样也会对权威解析服务器造成较大的解析压力,因此在DNS解析的多个环节中都使用了DNS缓存技术用来提高DNS解析的效率,当用户第一次访问域名时,由于DNS服务器中还不存在DNS缓存,所以最终会请求到负责该域名的权威解析服务器,获得该域名的解析记录。
最低的TTL值是0,表示该记录不会被缓存,但是需要注意的是,如果您将TTL设置为零,则可能会导致一些问题,在某些情况下,ISP可能会将零TTL解释为“永不缓存”。
最低的TTL值通常为0,但这意味着数据包或DNS记录将不会被转发,立即被丢弃,在实际情况中,最低使用的TTL值通常是1,因为TTL为1的数据包在离开源主机后,经过第一个路由器就会因为TTL减至0而被丢弃。
以下是一个简单的介绍,展示了不同的TTL值及其含义:
TTL值 | 含义 |
0 | 数据包不会被转发,立即丢弃,DNS记录不会被缓存。 |
1 | 数据包只能通过一个路由器或者DNS记录只被缓存非常短的时间,之后就会被丢弃或重新查询。 |
10 | 数据包可以通过至多10个路由器,或者DNS记录在缓存中保留10个单位时间(通常为秒)。 |
64 | 常见的初始TTL值,如在Linux系统中,数据包可以经过64个网络设备,DNS记录可以被缓存64个单位时间。 |
128 | 常见的Windows系统中的初始TTL值。 |
255 | TTL的最大值,数据包理论上可以经过整个互联网。 |
请注意,介绍中的“单位时间”通常是指秒,但具体时间取决于DNS服务器的配置,实际中很少会设置非常低的TTL值,因为这可能导致网络性能问题和解析延迟。
图片来源于互联网,如侵权请联系管理员。发布者:观察员,转转请注明出处:https://www.kname.net/ask/66278.html