我有一个很奇怪的问题。有到特定域的邮件传递问题。仔细查看后,我意识到该域的 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
这恰好是相关域的名称服务器。多个讨论线程和一个MS 知识库已指出禁用 EDNS。我已通过“dnscmd /config /enableednsprobes 0”完成此操作,但仍未解决问题。
更多信息:
我添加了一个显示 DNS 查询的 wireshark 摘录 ( txt )。澄清一下,内网是2.0.0.0/22网络是内网(我没设置,这么设置很傻)。内部 DNS 服务器为 2.0.0.10。
据我所知,这是正在发生的事情:
- 内部 DNS 服务器从其 NS 记录 (ns2.webhostingstar.com) 请求 foodmix.net 的 A 记录,但未收到任何响应
- 内部 DNS 服务器在同一事务 ID 下发送另一个请求。它从其他 NS 记录 (ns.webhostingstar.com) 请求 foodmix.net 的 A 记录,但未收到任何响应
- 内部 DNS 服务器根据新的事务 ID 发送请求。它从名称服务器 192.31.80.30 (d.gtld-servers.net) 请求 foodmix.net 的 A 记录。
- 它从 192.31.80.30 收到没有记录的响应,只是列出了权威的 NS 服务器。
好吧,很抱歉让你们都白费力气了。再运行几个 Wireshark 会话,发现 ns.webhostingstar.com 和 ns2.webhostingstar.com 没有发送任何回复。所以我强迫我们的 DNS 服务器离开我们的不同的互联网连接并且它起作用了。据我所知,名称服务器阻止了我们来自某些 IP 的请求。我已经联系了运行服务器的人员,他们将看看是否可以最终解决这个问题。
更新
经过多次测试,我们意识到问题在于不知何故从他们的网络发送给我们的流量被丢弃了。事实证明,他们从某个地方的 IANA 那里得到了一份过时的文件,其中列出了所有保留的网络,并阻止了这些网络的流量。我们的公共 IP 地址属于这些范围之一,尽管它已经分配了一段时间。他们只是使用了一个过时的列表。
如果您尝试在 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 记录。
根据 DavidB http://blacka.com/david/2006/12/04/dns-dname-is-almost-useless/ dnames 用于为整棵树起别名。这可能类似于 @foodmix.net 记录或 *.foodmix.net
从 isc 下载绑定 dns 服务器包:Bind-9.9.1-P1。运行 BIND-Install.exe 并仅安装工具(取消选中其他框)。这将使您可以使用 dig 而不是 nslookup。如果这样做
dig +trace foodmix.net
,您将可能能够收集到正在发生的事情。