我们有一个域名有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分钟的记录。我似乎无法找到任何关于此的文件。
答案 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
步骤。