如果一台机器可以通过两个networking接口访问,Windows将使用哪一个接口?

例如,考虑应用程序服务器和存储服务器。

  • 两台服务器都运行需要被每个人访问的服务,所以他们连接到“公共”networking
  • 应用程序服务器在存储服务器上具有较高的IO,因此专用的第二个networking仅连接其中的两个。

鉴于

  • 这两台机器都是Windows
  • 可以通过两个networking接口访问同一台机器
  • 连接是由机器名称而不是IP地址

Windows将使用哪个连接?


奖金问题:如果一台机器连接到两个独立的networking,两个同名的服务器分别存在,怎么办?

如果这是我的networking,我不打算让Windows决定。 我要给专用的服务器 – 服务器networking上不同的DNS名称(可能是应用程序专用的和存储专用的)上的接口,并明确地configuration需要在服务器之间通话的服务以使用专用名称(或IP地址,如果某些原因,我不能使用DNS名称 – 如\\ dedicated.storage.ip.address \ sharename)

如果您使用名称而不是IP地址,则无关紧要,您仍然使用IP。 现在Windowsnetworking中的所有通信(几乎全部)都是IP协议的基础,因此所有的IP相关规则都适用

这意味着Windows将使用发起数据包的接口 。 想象一下想要访问服务器上共享的机器。 首先,它将通过DNS(如果您有一个在networking上)或通过其他方式来确定服务器的IP。 (您可能希望在Windowsnetworking中获得有关名称parsing的更多信息)。 然后,只有这样,启动的机器才会尝试使用IP地址联系服务器。)

回答奖金问题:不同计算机(具有不同IP)的两个相同名称应在客户端计算机上生成错误消息。 他们也应该能够连接到查找表中的第一台机器,但行为取决于客户端机器。