权威服务器提供权威的数据,缓存服务器从权威服务器获取数据转发给查询的客户端。
TTL值是在权威服务器设置的,缓存服务器从权威服务器获取数据时得到TTL,这个TTL值会随时间变小,变为0时数据失效,需要从权威服务器重新获取数据。
刚才查了下,google.com的TTL是300秒,baidu.com的TTL是7200秒。
dig google.com a +trace
dig baicu.com a +trace
(google.com和www.google.com是不同的域名,查询结果可能不一样,dig是BIND提供的一种DNS客户端工具)
--------------------------------------------------------
楼主说的DNS应该就是一台缓存服务器,如果没有特别设置(设置缓存时间的范围,内存太小),TTL值是会随时间变小的,可能是当时查询的瞬间降为1分多。
--------------------------------------------------------
关于google为啥要设这么小。。。我是这么猜测的:
权威服务器TTL小的优点就是如果有变动,缓存服务器发现的早;缺点就是会增加上面至少一级权威服务器的负载,因为查询次数变多了。
google.com上面各级权威服务器的TTL最少是172800s,2天,也就是说2天之内关于google.com的查询如果实效了,都会去这一级服务器查询。换句话说,只是增加了google自己的DNS服务器的负担,对再上面的服务器影响不大。算是比较厚道的做法。(www.google.com上面的权威服务器TTL最少86400,和google.com不一样)
---------------------------------------------------------
大体就是介样了,希望对你有帮助
当各地的DNS(LDNS)服务器接受到解析请求时,就会向域名指定的授权DNS服务器发出解析请求从而获得解析记录;该解析记录会在DNS(LDNS)服务器中保存一段时间,这段时间内如果再接到这个域名的解析请求,DNS服务器将不再向授权DNS服务器发出请求,而是直接返回刚才获得的记录;而这个记录在DNS服务器上保留的时间,就是TTL值。 通常情况下域名解析记录是很少更改的。我们可以通过增大域名记录的TTL值让记录在各地DNS服务器中缓存的时间加长,这样在更长的时间段内,我们访问这个网站时,本地ISP的DNS服务器就不需要向域名的NS服务器发出解析请求,而直接从本地缓存中返回域名解析记录,从而提高解析效率。 TTL值是以秒为单位的,通常的默认值都是3600,也就是默认缓存1小时。我们可以根据实际需要把TTL值扩大,例如要缓存一天就设置成86400。 因为DNS记录缓存的问题,新的域名记录在有的地方可能生效了,但在有的地方可能等上一两天甚至更久才生效(部分省份运营商调大了TTL值),这样就会就导致部分用户在一段时间内无法访问网站。 为了尽可能的减小各地的解析时间差,可参考以下步骤执行:登录云解析DNS控制台,在域名解析页面,全部域名页签下,单击域名,进入解析设置页面。选择需要修改的解析记录,单击修改按钮。在修改记录会话框中,点击TTL选项框,进行选择,并单击确认按钮。降低TTL值,意味着解析记录在本地DNS服务器中保留时间缩短,当用户访问站点时,DNS服务器向权威DNS查询的频次会增加,这样可以使得用户可以及时获得最新的IP地址,保障了解析准确性,降低域名被劫持的风险。因此,从理论上讲,TTL值越小,解析准确性就越高。减小TTL值,减少更换空间时的不可访问时间。更换空间肯定会有DNS记录更改的问题,因为TTL缓存的问题,新的域名记录在有的地方可能等上一两天甚至更久才生效。域名TTL值设置的小,各地的ISP域名缓存服务器服务器就会很快的访问你域名的权威DNS解析服务器,尽快把你域名的DNS解析IP返回给查询者。TTL值是DNS解析环节中一个重要的参数,其大小直接影响解析过程的准确性和稳定性,因此在进行DNS解析配置的工作中设置合理的TTL值至关重要。欢迎分享,转载请注明来源:夏雨云
评论列表(0条)