在进行 DNS 查找时(特别是使用 nslookup,出于某种原因,大多数内容都不会受到影响),Windows XP Pro SP3 会针对每个内容使用 DNS 后缀搜索列表。即使是完全合格的域名也是如此。例如,我查找“www.microsoft.com”,但 Windows 实际上要求输入“www.microsoft.com.eondream.com”(eondream.com 是我的主域)。现在我可以通过删除主 DNS 后缀来修复此问题,但在我看来,DNS 后缀搜索列表应该是简短的无效名称(其中点 = 0 或其他内容)。我确信我在 Windows 的某个地方配置不正确,但我不知道在哪里。我已经更改了我能想到或找到的每个选项。
以下是 ipconfig /all 和 nslookup 的输出(启用了调试和 db2)。这是使用静态 IP 和(内部)DNS 服务器。
C:\>ipconfig /all Windows IP 配置 主机名......................:frayedlogic 主 DNS 后缀 . . . . . . . : eondream.com 节点类型....。....。....。....:未知 IP 路由已启用。。。。。。。:否 WINS 代理已启用。。。。。。。:否 DNS 后缀搜索列表。。。。。。:eondream.com 以太网适配器无线网络连接: 连接特定的 DNS 后缀 . : 描述................................:戴尔无线 1390 WLAN 迷你卡 物理地址。。。。。。。。。。。:00-1B-FC-29-EB-6B DHCP 已启用。。。。。。。。。。:否 IP 地址.............................................................: 192.168.13.32 子网掩码.......................................................................................................................: 255.255.255.0 默认网关................:192.168.13.13 DNS 服务器...............: 192.168.19.19
C:\>nslookup 默认服务器:shardik.eondream.com 地址:192.168.19.19 > 设置调试 > 设置 db2 >www.microsoft.com 服务器: shardik.eondream.com 地址:192.168.19.19 ------------ 得到答案: 标头: 操作码 = 查询,id = 2,rcode = 无错误 标题标志:响应、需要递归、递归可用。 问题 = 1,答案 = 1,权威记录 = 0,附加 = 0 问题: www.microsoft.com.eondream.com,类型 = A,类别 = IN 答案: -> www.microsoft.com.eondream.com 互联网地址 = 208.69.36.132 ttl = 0(0 秒) ------------ 非权威答案: 名称:www.microsoft.com.eondream.com 地址:208.69.36.132
(注意:它解析为该 IP 是因为我使用 opendns 服务,这是他们的建议页面或任何你想称呼它的页面)如果我正确读取了 nslookup 输出,那么这不是我的 DNS 服务器的问题,因为 Windows 实际上请求的是错误的域。
答案1
好吧,我不是专家,但这是我发现的:
此注册表项适用于 Windows XP 和 Windows Vista
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows NT\DNSClient]
"AppendToMultiLabelName"=dword:00000000
HKLM\Software\Policies\Microsoft\Windows NT\DNSClient\AppendToMultiLabelName
类型 = DWORD
数据:
- 0(不添加后缀)
- 1(附加后缀)
如果不存在该注册表项,则 Windows XP 中的默认值为 1,Windows Vista 中的默认值为 0。
笔记:此注册表更改及其效果仅适用于ping
命令,不适用于nslookup
工具。这是因为nslookup
包含自己的 DNS 解析器,不依赖于操作系统内置的解析器(DNS 客户端)。无论此处提到的注册表项设置如何,工具发送的 DNS(多标签)查询数据包都nslookup
将附加后缀搜索顺序中列出的域。
答案2
抱歉,我又重新提起一个显然是老问题了,但似乎没有人提出强制使用 fqdn 这个显而易见的答案。只需使用尾随的点即可强制使用顶级查找。因此,在此示例中,查找www.microsoft.com.
。
答案3
我遇到了同样的问题,因为我的域控制器是作为域的一部分安装的,然后又从域中删除了。例如,域cloud
作为子域mydomain.com
每个与 DNS 相关的操作(例如运行)nslookup
都会产生一个带有后缀的地址.mydomain.com
。例如,执行 nslookup 会www.google.com
显示为www.google.com.mydomain.com
。
解决此问题的方法:
- 进入网卡的 IP 设置并点击先进的
- 在DNS标签选择附加这些 DNS 后缀(按顺序)
- 添加两个后缀
.
,mydomain.com
如下所示: - 点击好的
这会立即生效并影响计算机上的所有 NIC。必须对所有域计算机执行此操作。
答案4
查看您的路由器/网关中是否定义了域名。