只有一个域名没有通过多个位置的 Windows DNS 服务器进行解析,但在其他位置可以解析

只有一个域名没有通过多个位置的 Windows DNS 服务器进行解析,但在其他位置可以解析

我遇到了一个很奇怪的问题。向特定域发送邮件时出现问题。仔细查看后,我发现该域的 DNS 无法通过内部 Windows 2003 SP2 DNS 服务器进行解析。

C:\>nslookup foodmix.net 
Server:  DC.DOMAIN.com
Address:  10.1.1.1

 DNS request timed out.
     timeout was 2 seconds. DNS request timed out.
     timeout was 2 seconds.
 *** Request to DC.DOMAIN.com timed-out

(DC.DOMAIN.com 和 10.1.1.1 是通用值,用于替代实际值)

即使我从 DC.DOMAIN.com 服务器运行此 nslookup,我也会得到相同的结果。但是,所有其他请求都正常工作。我让一位系统管理员朋友在他咨询的几家公司的服务器上尝试了此 DNS 查找(这些服务器也是 Windows 2003 AD 服务器)。奇怪的是一些所有这些人都遇到了同样的问题。但是使用公共 DNS 服务器却没问题。我尝试过清除 DNS 缓存、重启服务器、重启服务等。但都不起作用。

我在 DNS 服务器事件日志中注意到一个可能相关的奇怪事件,其事件 ID 为 5504,其描述如下:

The DNS server encountered an invalid domain name in a packet from 192.33.4.12. The packet will be rejected. The event data contains the DNS packet.

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

在下面的数据部分中,我可以看到以下内容:

ns2.webhostingstar.com

这恰好是所讨论域的名称服务器。几个讨论主题和一个微软知识库已指出禁用 EDNS。我已通过“dnscmd /config /enableednsprobes 0”执行此操作,但问题仍未解决。

更多信息:
我添加了一个 wireshark 摘录(TXT) 显示 DNS 查询。需要澄清的是,内部网络是 2.0.0.0/22 网络是内部网络(我没有设置它,这样设置很愚蠢)。内部 DNS 服务器是 2.0.0.10。

据我所知,发生的情况如下:

  1. 内部 DNS 服务器从其 NS 记录 (ns2.webhostingstar.com) 请求 foodmix.net 的 A 记录,但未收到任何响应
  2. 内部 DNS 服务器使用相同的事务 ID 发送另一个请求。它从其另一个 NS 记录 (ns.webhostingstar.com) 请求 foodmix.net 的 A 记录,但未收到任何响应
  3. 内部 DNS 服务器以新的事务 ID 发送请求。它向名称服务器 192.31.80.30 (d.gtld-servers.net) 请求 foodmix.net 的 A 记录。
  4. 它收到来自 192.31.80.30 的响应,其中没有任何记录,仅列出了权威的 NS 服务器。

答案1

好吧,很抱歉让大家白费力气。我又运行了几次 Wireshark 会话,发现 ns.webhostingstar.com 和 ns2.webhostingstar.com 根本没有发送任何回复。所以我强制我们的 DNS 服务器使用另一个互联网连接,结果成功了。据我所知,名称服务器阻止了来自我们某些 IP 的请求。我已经联系了运行服务器的人,他们会看看能否解决这个问题。

更新
经过多次测试,我们意识到问题在于从他们的网络发送给我们的流量不知何故被丢弃了。原来他们有一个来自 IANA 的过时文件某处列出了所有保留网络,并阻止了到这些网络的流量。我们的公共 IP 地址属于这些范围之一,尽管它是在一段时间前分配的……他们只是使用了一个过时的列表。

答案2

如果您尝试在 Windows 2003 DNS 基础结构中使用的 IP/DNS 信息与公共互联网使用的相同,则使用默认根提示,即在您的示例中:foodmix.net。86399 IN A 204.xyz,那么您不需要为域添加转发器,但是,只要域 foodmix.net 未在活动目录林本身中使用即可。

根据您的事件日志条目,我发现http://support.microsoft.com/kb/920162这表明 Windows 2003 DNS 服务器不支持“DNAME”属性。

因此有几个选项,要么安装 MS 网站上提到的修补程序,要么与您的 DNS 提供商/配置合作并删除 foodmix.net 区域的 DNAME 记录。

根据 DavidBhttp://blacka.com/david/2006/12/04/dns-dname-is-almost-useless/dname 用于为整个树设置别名。这可能类似于 @foodmix.net 记录或 *.foodmix.net

答案3

从 isc 下载 bind dns 服务器包:绑定-9.9.1-P1运行 BIND-Install.exe 并执行仅安装工具(取消选中其他框)。这将允许您使用 dig 而不是 nslookup。如果您这样做,dig +trace foodmix.net您很可能能够了解发生了什么。

相关内容