DNS 的(子)域名问题

DNS 的(子)域名问题

我目前正在运行一个本地 DNS 服务器,该服务器配置了一个域控制器,拥有一堆域,并且这些域具有所有子域的所有通配符条目。我还启用了 WINS 以便于文件浏览。

我目前遇到的问题是这些域和子域在一段时间后似乎无法运行(无法 ping 通它们);但是,当我在客户端计算机上执行 ipconfig -release & -renew 时,我能够在一段时间内再次连接到(子)域。

这可能是因为我已将 Google DNS 设置为除本地域之外的所有域的辅助 DNS 服务器吗?

我在 Windows Server 2008 R2 服务器上运行 DNS 服务器,并在单独的 Windows Server 2003 服务器上运行 IIS,该服务器具有与域关联的实际网站。

我还想指出,我似乎也遇到了同样的问题https://serverfault.com/questions/508571/dns-cache-in-windows-client-not-updating,也许这与这个问题有关?

答案1

DNS 的设计目标是使用单一、全球唯一的命名空间。如果您仅在内部名称服务器上设置了通配符子域,而没有设置来自公共命名空间的委托,则您无法为公共名称服务器配置客户端,并期望它们解析您的内部专用域。

DNS 解析的工作方式是,客户端将其请求发送到名称服务器,只要它得到任何有效响应(即使响应为“没有此名称”),也会使用此响应的数据。仅当最初查询的名称服务器在超时期限内完全没有产生响应时,才会查询其他名称服务器。这也是您可能看到的情况 - 您的客户端开始查询错误的(公共)DNS服务器,其中可以检索的有关您的内部子域的唯一信息是“没有此域”。重新申请IP地址会重置DNS客户端状态,并再次查询内部服务器,返回您名称查询所需的地址。

因此,您应该做的是将 AD 名称服务器配置为仅有的域名服务器,用于域内的所有客户端和服务器。此外,如果您想使用 Google 的域名服务器作为转发器,在 AD DNS 服务器的设置中配置转发器。 还,请阅读文档。您的案例在官方 Technet 文档以及有关 Active Directory 安装的众多操作指南中已明确介绍。

相关内容