为什么我可以看到记录存在,但 DNS 服务器却返回 NXDOMAIN?(存根区域)

为什么我可以看到记录存在,但 DNS 服务器却返回 NXDOMAIN?(存根区域)

我的 DNS 数据库中有两个存根区域(均为 AD 集成区域)。我们将它们称为 foo.org 和 bar.org。我这边的所有 DNS 服务器都是 Server 2003 R2。

foo.org 区域文件包含以下内容(出于安全考虑,主机名已更改):

foo.org.        NS      ns1.foo.org.
foo.org.        NS      ns2.foo.org.
foo.org.        NS      ns3.foo.org.
foo.org.        SOA     [2010033275], ns.foo.org, admin.foo.org
ns.foo.org.     A       192.168.0.1
ns1.foo.org.    A       192.168.1.1
ns2.foo.org.    A       192.168.1.2
ns3.foo.org.    A       192.168.1.3

bar.org. 区域如下:

bar.org.        NS      ns1.foo.org.
bar.org.        NS      ns2.foo.org.
bar.org.        NS      ns3.foo.org.
bar.org.        SOA     [2010011842], ns.foo.org, admin.foo.org

我们遇到的主要问题是,对 bar.org 区域中的 A 记录的请求经常返回 SERVFAIL。进一步研究后,我发现对“ns1.foo.org. A”的请求返回了 NXDOMAIN。我认为这是导致在 bar.org 区域中查询失败的原因。

对我来说无法理解的是,为什么当我看到该记录存在于区域数据库中时,“ns1.foo.org A”的请求会导致 NXDOMAIN 响应。

答案1

尝试捕获网络流量,或查看执行查询时的防火墙日志。如果查询转到公共根服务器,.local tld 可能会产生“NXDOMAIN”结果。

如果您需要更多帮助,请提供手动查找(例如使用 nslookup 或 dig)的日志或截屏/输出

答案2

据我所知,在当前情况下我们不应该使用存根区域,我计划改用条件转发器。

微软有一篇关于存根区域和条件转发器使用的文章,网址为http://technet.microsoft.com/en-us/library/cc780434(v=ws.10).aspx

在本文中,它指出“在您希望独立网络中的 DNS 客户端能够解析彼此的名称而无需查询 Internet 上的 DNS 服务器的情况下,例如在公司合并的情况下...”

文章继续说道“当您希望托管父区域的 DNS 服务器能够了解其子区域之一的权威 DNS 服务器时,可以使用存根区域。”

相关内容