我们为我们的域名托管 DNS。
两周前,开发人员要求我们设置一个新区域“dev.ourdomain.com”,并在其中放置两个主机记录 my.dev.ourdomain.com 和 admin.dev.ourdomain.com。
我们将区域添加到我们的 DNS 并为主机添加了 A 记录。
现在一周后,一些 DNS 服务器(如 google(8.8.8.8)和 gtei(4.2.2.2))将解析主机,但其他 DNS 服务器(如 OpenDNS(208.67.222.222)和 ATT Uverse(68.94.156.1))无法解析它。
有任何想法吗?
答案1
检查域名的 WHOIS 中列出了哪些名称服务器,然后查询每个服务器以获取该域名的 NS 记录,并确保它们都列出了相同的名称服务器。如果没有,那么您需要修复它们,以便它们都同意哪些服务器是该域名的名称服务器,并且每个列出的名称服务器都有该区域的副本。
答案2
我假设您已经等待了任何相关的 TTL,因此您确信世界各地的缓存中没有“旧”数据。
您应该检查从 TLD 到区域的整个解析链是否存在任何问题。例如,从 .com 开始,向其权威名称服务器索取您域名的 NS 列表。然后向每个服务器索取您子域名的 NS,并向它们索取任何应发布的数据。
有可能某些 DNS 没有发布全部数据,那么实际上您遇到了标题中提到的“复制问题”。或者您可能在某个地方遗漏了一些数据(SOA、NS 等...)
如果使用标准解析器(我会使用挖(例如)可以解析您的主机名,那么问题可能出在另一端。
答案3
您说您在服务器上添加了一个区域,为什么?处理 dev.yourdomain.com 的服务器与处理 yourdomain.com 的服务器不是同一个吗?如果相同的主机管理父级,则不必创建单独的区域文件。您没有提到哪个服务器,所以我假设是 bind,但大多数 dns 服务都支持执行类似以下操作:
dev IN A 1.2.3.4
admin.dev IN A 1.2.3.5
这些条目都出现在主区域文件中。但是,如果您计划在其他地方托管 dev.yourdomain.com 子域的 DNS,那么您需要更复杂一些。按原样设置区域文件,然后添加来自父服务器的引用:
dev IN NS otherns.yourdomain.com.
dev IN NS backupns.yourdomain.com.
至于某些主机无法解析的实际问题,您是否运行过跟踪?一直都是这样吗?他们是否查询相同的 NS 主机?如果您运行多台服务器,您是否验证过多台服务器上的配置?