Windows 记住旧的 DNS 后缀

Windows 记住旧的 DNS 后缀

购买后,我刚刚将本地网络的 DNS 域从 更改home.local为。我在 BIND 和 DHCP 服务器中进行了所有必要的更改,网络上的 Linux 客户端现在已启用,并且似乎按预期运行。mydomain.localmydomain.comdomain mydomain.local/etc/resolv.conf

但是,Windows 计算机(Win 8.1,未加入域)似乎仍在其 DNS 后缀搜索列表中保留该home.local域。我已经释放了租约,删除了网络配置文件,扫描了注册表,在整个 dns/dhcp 服务器中 grep:查找旧域的出现,重新启动了所有内容……但 Windows 计算机仍在继续搜索home.local

ipconfig /all受影响机器的输出:

Windows IP Configuration

  Host Name . . . . . . . . . . . . : MY-MACHINE
  Primary Dns Suffix  . . . . . . . :
  Node Type . . . . . . . . . . . . : Hybrid
  IP Routing Enabled. . . . . . . . : No
  WINS Proxy Enabled. . . . . . . . : No
  DNS Suffix Search List. . . . . . : home.local

Ethernet adapter Ethernet:

  Connection-specific DNS Suffix  . : mydomain.local
  Description . . . . . . . . . . . : Realtek PCIe GBE Family Controller
  Physical Address. . . . . . . . . : 00-11-22-33-44-55
  DHCP Enabled. . . . . . . . . . . : Yes
  Autoconfiguration Enabled . . . . : Yes
  Link-local IPv6 Address . . . . . : fe80::1234:1234:1234:1234%3(Preferred)
  IPv4 Address. . . . . . . . . . . : 192.168.0.97(Preferred)
  Subnet Mask . . . . . . . . . . . : 255.255.255.0
  Lease Obtained. . . . . . . . . . : den 24 januari 2015 19:42:25
  Lease Expires . . . . . . . . . . : den 25 januari 2015 19:43:27
  Default Gateway . . . . . . . . . : fe80::1111:2222:3333:4444%3
                                      192.168.0.1
  DHCP Server . . . . . . . . . . . : 192.168.0.10
  DHCPv6 IAID . . . . . . . . . . . : 12312312
  DHCPv6 Client DUID. . . . . . . . : 00-11-22-33-44-55-66-77-88-99-AA-BB-CC-DD

  DNS Servers . . . . . . . . . . . : 192.168.0.10
  NetBIOS over Tcpip. . . . . . . . : Enabled
  Connection-specific DNS Suffix Search List :
                                      home.local

编辑

请注意,连接特定的 DNS 后缀是正确的,但是后缀搜索列表是错误的,连接特定的和一般的 IP 配置都是错误的。

WMI 查询显示相同 - 连接的后缀是正确的,但它没有添加到搜索列表中,而是似乎重复使用了与以前相同的后缀。可能是因为服务器相同所以它记住了这一点?

答案1

听上去像DNS缓存问题。要解决此问题,请cmd以管理员身份运行并执行

ipconfig /flushdns

甚至(尽管这种/allcompartments转变似乎有些过度)

ipconfig /allcompartments /flushdns

进一步提示:ipconfig /?

清除地址解析协议缓存也可能有帮助:

arp -d

编辑根据其他人的建议:可以在下一个注册表项中DNS Suffix Search List找到组策略的值:SearchList

HKLM\Software\Policies\Microsoft\Windows NT\DNSClient

编辑2下一个 CLI 命令的输出是什么?是否列出了不需要的 DNS 后缀?

wmic path Win32_NetworkAdapterConfiguration get caption, DNSDomainSuffixSearchOrder
wmic path Win32_NetworkAdapterConfiguration get caption, DNSDomain

编辑3检查值NameServerSearchList进入下一个注册表项:

 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

在下面接下来的注册表项(即在每个与接口相关的子项中):

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TCPIP6\Parameters\Interfaces

要使更改生效:重新启动计算机。


编辑4检查下一个模式的所有键中的类型NameServerList的所有值REG_MULTI_SZ

HKLM\SYSTEM\CurrentControlSet\Services\NetBT\Parameters\Interfaces\Tcpip_{interface_CLSID}

下一个PowerShell代码应该设置 DNS 后缀搜索顺序。此处被盗因为我不太擅长 PS。

#First store the suffixes to set in a variable
$suffixes = 'mydomain.local'

#Since this is a static method, get a class object and then call the method. 
$class = [wmiclass]'Win32_NetworkAdapterConfiguration'
$class.SetDNSSuffixSearchOrder($suffixes)

最后的手段:禁用系统还原,重新启动,检查wmic 上面提到的......

答案2

  • 转到以太网连接
  • 单击“属性”
  • 双击 Internet 协议版本 4 (TCP/IPv4)
  • 单击“高级”
  • 单击 DNS 选项卡
  • 删除 home.local

答案3

可能正在推送 GPO,请检查组策略...计算机配置 - 策略 - 管理模板 - 网络 - DNS 客户端。

您将在此处找到 DNS 后缀搜索及其设置。如果您仍然遇到问题,请导航至以下链接更多信息。

答案4

对于我们来说,问题在于我们的 DHCP 服务器有一个范围选项,该选项使用“015 DNS 域名”选项设置了错误的 DNS 后缀。我纠正了这个问题并重新启动了受影响的计算机后,它就选择了正确的 DNS 后缀。

相关内容