我们为静态 IP 地址块运行了几个named
DNS 服务器。当我们在服务器上更改 IP 地址或 DNS 名称时,我们可以看到它很快传播到网络中。
但是,我们正在进行一些重大的静态 IP 地址更改,并且我们实际名称服务器的外部静态 IP 地址也在更改。如果我更改名称服务器上的名称服务器的 IP 地址,这些更改是否会像任何其他更改一样传播到互联网?
这个问题听起来有点愚蠢,但似乎如果名称服务器的 IP 地址发生变化,其他服务器就无法连接到该名称服务器来确定这些变化。有道理吗?有点像先有鸡还是先有蛋的问题。我还需要做什么吗,还是说这些变化需要时间才能显现出来?
答案1
您必须使用新的名称服务器 IP 来更新您的注册商(您注册域名的地方)。例如,如果您使用 GoDaddy 注册了 bigdomain.com,则必须告诉 GoDaddy 您的新名称服务器 IP 地址,以便他们可以更新上游服务器。
答案2
您只需要让现有名称服务器和新名称服务器同时运行一段时间即可。您需要设置新名称服务器,然后进行切换,并让现有名称服务器运行一段时间。
DNS 更新传播所需的时间与记录的 TTL(生存时间)有关。单个记录和整个域都有 TTL 条目。您需要慢慢降低 TTL,直到您开始进行这些重大更改,然后再开始将其重新增加。请注意,世界各地的 ISP DNS 服务器往往会在他们认为合适的时间内缓存 DNS 结果,并且并不总是考虑您的 TTL。
答案3
假设您的域名是example.com
。您描述了更改您权威性例如www.example.com
。TTL 过期后,互联网上的其他名称服务器将再次查询您的权威名称服务器并获取名称指向的新 IP 地址。
那么谁能权威地说明名称服务器(记录NS
,类似于A
地址记录)的作用example.com
?是 TLD 名称服务器.com
。这些条目来自您向注册商列出的信息(如 @peelman 所述)。
您可以使用以下命令查找部分信息
dig in ns example.com @8.8.8.8
dig in ns example.com @8.8.8.8 +trace
其中 8.8.8.8 之一Google 公共名称服务器(如果您选择,也可以是其他的)并且example.com
是您的域名。需要注意的一点是 NS 记录的 TTL,它将告诉您应保持现有名称服务器正常运行的最短时间(以秒为单位),以避免因缓存而导致不一致。