我有来自三个不同注册商的三个域(例如example.com、example.net、example.org)。使用每个注册商的控制面板单独处理每个域的 DNS 记录。我希望通过将所有 Glue 记录更改为指向单个 DNS 服务器来将所有区域集中到单个服务,例如ns1.example.net
。
我结束的程序是:
- 在新服务器上创建每个区域。
- 将所有记录(、、等)从注册商“复制”
A
到AAAA
等效MX
区域。 - 更改所有域上的粘合记录以指向新服务器
ns1.example.net
但是,我对以下问题感到困扰:
任何
A
来自客户端或解析器的缓存 -Record 查询都不应该成为问题,因为我的 NS 服务器的记录将指向与原始记录相同的 IP。那是对的吗?NS
记录查询呢?客户端或递归 DNS 服务器是否缓存NS
记录查询?如果是这种情况,那么一旦我更改了粘合记录,客户端就有可能尝试查询旧的 DNS 服务器(注册商)。
关于第 2 点,在我看来,如果注册商在我将区域委托给另一台服务器后立即停止响应 DNS 查询……那我就束手无策了。注册服务商是否预见到这种情况并继续提供查询服务,比如说再过 24 小时,从您更改粘合记录开始?
那是对的。
是的,客户端和服务器缓存 NS RR 就像所有其他 RR 一样。
您可能会混淆注册商和 DNS 提供商。例如,我使用 Dyn 作为我的注册商,使用 cloudflare 作为我的 DNS 提供商。如果我要更改注册商,clouldflare DNS 服务器仍会响应对我的域的查询,直到我将其从 cloudflare 的名称服务器中删除。
如果您的注册商和 DNS 提供商相同,您需要询问他们。当您将注册商从他们那里更改时,他们可以立即重新配置他们的名称服务器,并且缓存了 NS RR 的服务器/客户端将无法解析这些域中的 RR。
话虽如此,注册商/DNS 提供商这样做并不好,因此他们可能不会这样做。
另外:如果您要在 mydomain.net (ns1.mydomain.net) 下为 domainA.net、domainB.net、domainC.net 设置 NS 记录,您将不再拥有这些域的粘合记录。你会为 ns1.mydomain.net。这些意味着什么:
dig ns cloudflare.net @192.5.6.30