浏览器应该使用哪个TTL属性来尊重您使用CNAME记录的位置?

时间:2015-05-05 05:41:54

标签: dns server ttl

我们有一个域名有CNAME记录的应用程序。然后该域名具有A记录。如果这两个记录具有不同的TTL属性会发生什么?例如。

NAME                   TYPE   VALUE                TTL
----------------------------------------------------------------------
bar.example.com        CNAME  foo.example.com      3600 (60min)
foo.example.com        A      192.0.2.23           30   (30sec) 

在这个示例中,如果我点击bar.example.com,在浏览器上缓存IP地址需要多长时间?我注意到在Chrome中它将缓存IP地址长达30秒,但我想不同的浏览器可能有不同的实现。我想知道是否有一个标准的方法应该实现,或者是否有任何浏览器将使用60分钟的记录。我似乎无法找到任何关于此的文件。

1 个答案:

答案 0 :(得分:1)

CNAME资源记录没有特殊的TTL处理。在一个完美的世界中,浏览器应该根据其TTL记住每条记录。

也就是说,如果发布了指向bar.example.com的{​​{1}}的新CNAME,则浏览器仍然可以使用指向baz.example.com的旧CNAME最多3600秒。在任何时候,它都无法记住与名称foo.example.com相关联的IP地址超过30秒。

虽然我没有尝试检查,但我怀疑许多实现并不那么挑剔,我的猜测是,通常使用整个foo.example.com的最终A记录的TTL - > bar.example.com步骤。