下面举个例子还帮助你了解TTL是什么意思。假如:
有这样一个域名www.yudouyudou.com,对应IP地址为1.1.1.1,把它的TTL设为3600秒,这条记录存储在一台DNS服务器上。
现在有一个用户在访问www.yudouyudou.com时,网络服务商的DNS就会试图为用户解析www.yudouyudou.com,当然网络服务商这台DNS服务器并没有包含www.yudouyudou.com这条信息,因此无法立即解析,但是通过全球DNS的递归查询后,最终定位到www.yudouyudou.com这台DNS服务器对应的IP地址为1.1.1.1并将结果告诉告诉网络服务商的DNS服务器,然后再由 网络服务商告诉用户结果。
网络服务商为了以后加快对www.yudouyudou.com这条记录的解析,就将刚才的1.1.1.1结果保留一段时间,这段时间就是TTL值,在这段时间内如果用户又有对www.yudouyudou.com这条记录的解析请求,它就直接告诉用户IP地址为1.1.1.1,当TTL到期则又会重复上面的过程。
TTL值设置多少合适
TTL是域名解析的生命周期,对于用户来说,每一次访问网站A,不会每次都到DNS进行域名解析,而是只有第一次访问时才到DNS进行解析,然后解析的结果会缓存到当地的递归DNS服务器上,当使用该递归服务器的第二个访问网站A时,递归服务器会直接返回解析结果,而不会再向DNS请求解析,所以这个时候如果您在DNS修改了解析结果,那么第二个访问者收到的解析也是修改前的结果,因为那是递归服务器告诉它的。那么多久之后递归服务器才会更新这个解析结果呢?那就是TTL来决定的。
如此看来,那我把TTL设置为非常小,比如1秒,岂不是最好,这样我修改了解析那么对于用户来说立即就可以生效。答案是否定的,如果TTL设置为1秒,那么就意味着几乎每次用户的解析,递归服务器都需要向DNS进行解析请求,这样所耗费的时间就会增加很多,而且权威服务器的解析因为要判断用户的来源进行智能解析,比起来直接使用缓存回答耗费的时间会更长,而且失败率也会更高,因此这对用户的访问体验和解析稳定性都有损害。
所以TTL大了,修改解析后等待生效的时间就会越长,TTL小了,域名解析的稳定性和解析速度就会受到影响,那么TTL多少合适,就要根据具体的网站来定了,没有统一的标准答案。
下面给出一些常见网站类型的推荐值,您可以按照以下建议进行TTL设置:
资源均来自第三方,谨慎下载,前往第三方网站下载