在具有多个网络接口的主机上,哪个接口或 DNS 服务器用于解析本地计算机(Windows)的主机名?

在具有多个网络接口的主机上,哪个接口或 DNS 服务器用于解析本地计算机(Windows)的主机名?

我正在尝试回答以下问题:如果一台具有多个网络接口、网关和 DNS 服务器(例如,以太网适配器接口和 VPN 连接接口)的计算机尝试与自身通信,但不是通过“localhost”,而是通过其自己的(本地或合格)主机名,会发生什么情况。将使用哪个接口(或者更确切地说,哪个接口的 IP 地址)?

问题的背景是,在这种情况下,有时会使用错误的接口(通常是“错误的”VPN),如果 VPN 连接中断,这会导致我们的软件出现问题。对于这些情况,我想知道如何影响名称解析,以便首选以太网适配器的 IP。

我尝试过更改不同接口的路由度量,但这并没有给我带来任何明显可观察的行为。在我进行该实验的一台笔记本电脑(属于 AD 的一部分)上,到 VPN 接口的链路本地 IP 的路由度量和到以太网适配器 IP 的路由最初具有相同的度量,例如,“route print”将显示这两条路由(当然还有更多):

Active Routes:
Network Destination    Netmask          Gateway     Interface  Metric


      1.2.3.4          255.255.255.255  On-link     1.2.3.4    276 
      2.3.4.5          255.255.255.255  On-link     2.3.4.5    276

假设 1.2.3.4 是 VPN 接口的 IP,2.3.4.5 是网络适配器的 IP。当我使用本地或合格主机名 ping 计算机时,它最初会解析 VPN 适配器的 IP。因此,我尝试降低或增加一个或另一个接口的指标。不幸的是,我没有得到明显可观察到的行为,但我突然得到了错误。如果 VPN IP 已解析,ping 将失败并出现错误,错误消息将指示主机 2.3.4.5(以太网 IP!)响应“目标主机不可访问”:

C:\Users\me>ping myhost

Pinging myhost.my.company.domain [1.2.3.4] with 32 bytes of data:
Reply from 2.3.4.5: Destination host unreachable 

所以我的猜测是,既然 VPN IP 被解析了,那么就使用了 VPN 的网关,而 VPN 当然不知道另一个 IP。

下一次 ping 总是能解析以太网适配器的 IP,并能正常工作

C:\Users\me>ping myhost

Pinging myhost.my.company.domain [1.2.3.4] with 32 bytes of data:
Reply from 1.2.3.4: bytes=32 time<1ms TTL=128
[...]

即使在将指标重新设置为其原始(相同)值后,这种情况仍然会发生。我突然意识到,更改本地 IP 的路由可能走错了方向,但我可能应该更改 DNS 服务器的路由(或以其他方式更改 DNS 服务器优先级),但此时我决定停止实验,先开始阅读,以免弄乱我的配置。看来我的 Google foo 今天很糟糕,所以我最终在这里发帖。

任何帮助(或指向正确文档的指针)都值得感激。更改 hosts 文件可能可以满足我的要求,但我更喜欢更便携的解决方案(最重要的是,我想了解发生了什么!)。

答案1

除了路由指标之外,Windows 还有网络连接优先级的设置。

要更改连接优先级

  • Network and Sharing Center>Adapter Settings
  • 按下Alt并从菜单中选择Advanced>Advanced Settings
  • Adapter and Bindings选项卡中将首选连接重新排序到顶部

然后改变接口指标,您的首选路线具有较低的度量。

  • Ethernet adapter> Properties> TCP/IPv4>Properties
  • General>Advanced
  • 取消选中Automatic metric
  • 增加价值Interface metric

刷新路由表,通过打开窗口cmd并输入以下内容进行操作:

route /f

然后重启Windows,以确保度量标准生效。应重建路由表并将度量标准分配给路由。

此时,如果您仍然有问题,请检查您的IPv6指标。

如果接口在重新启动时恢复为自动,则可能必须添加持久路由:

route add -p [destination] [mask] [gateway] [metric] if [interface]

相关内容