CNAME记录需要时间传播吗?


23

通常,当我更新DNS(“ A”记录)时,我将允许较长的时间将更改传播到整个根名称服务器。

我是否需要为CNAME记录的更新和更改留出相同的余地?



@MichaelHampton -真的,如果我们改变an A recordDNS records该问题的标题。这两个问题都不是关于A记录的。[更新]我已经提交了该修改。
Henk Langeveld

Answers:


31

不,您不会,因为DNS记录不会传播。您需要做的是根据相关记录的TTL使所有缓存的记录过期。

如果这是新记录,则不会发生缓存,因此新记录应该可用并应立即解决。

此外,根服务器(第一级;。)不托管DNS区域或任何第三级域名的记录。根服务器知道哪些名称服务器负责gTLD区域(第二级; .com,.edu等),后者又知道哪些名称服务器负责您的区域(第三级; yourcompany),而该名称服务器又负责您的区域文件的副本。除名称服务器外,没有其他DNS服务器保存您的区域文件或DNS记录的副本。


  1. 通讯

  2. 你的公司


很高兴为您提供帮助
joeqwerty 2012年

@Jaryd,请特别注意第一句话。周围太多的人根本不理解这一点。
约翰·加迪尼尔

1
@JohnGardeniers,谢谢您,是的!这对我来说是答案的一个特别有启发性的部分:)我感谢这一课。
Jaryd Malbin

3

[ 编辑 -看来我误解了问题]

区域数据“传播”有两种方式。根服务器不(直接)参与。它们允许其他计算机找到您的服务器,从而找到您的区域数据。但是,其他系统会先检查根服务器和tld服务器,然后再确定您的服务器。

这是你的数据是如何传播。

首先,将数据推送到权威服务器,其中一些可能使用(增量)区域传输来相互更新。这可能要花费REFRESH区域的时间才能完成。

其次,在区域中的每个记录,包括什么,包括ACNAME记录,可能是你的权威服务器和所有客户端之间的任何缓存。

数据缓存多长时间应取决于记录的个人TTL(生存时间)。从理论上讲,缓存条目超时所需的时间不应超过区域刷新和记录的ttl之和。但是,那里有很多不同的软件。Google dns ttl bugsfor-我所做的最后一次计数约为850k。

但是您可以让www.example.com的CNAME记录指向,例如www-server.dynamic.example.com,并将内部内容的TTL和刷新时间设置为 dynamic.example.com比父项低得多的值。这使运营商可以在需要时将流量快速重定向到其他基础结构。


2
设置更快的TTL仅在DNS缓存服务器没有覆盖或忽略区域文件中设置的TTL的情况下才有用,不幸的是,这比人们想象的要普遍得多。
tacotuesday,2012年

2
并一直在变得越来越普遍。另外,如果TTL大于某个预定义的时间段,则许多系统只会遵循TTL,因此使TTL越短,被忽略的可能性就越大。
约翰·加迪尼尔
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.