多宿主 Windows Server 2012R2 在两个接口上拆分网络流量

多宿主 Windows Server 2012R2 在两个接口上拆分网络流量

总结:多宿主 Windows Server 2012R2 似乎使用两个接口来传输到特定网络的流量 - 路由表看起来不错,tracert 的行为符合预期。当到此网络的所有其他路由都被删除时,流量运行良好,因此连接本身没有问题。


我们有一台备份服务器(Veeam,Windows Server 2012R2),它连接到 2 个不同的子网。基本网络示意图如下。该服务器在 VLAN1(服务器 VLAN)中有一个 IP,在 VMWare 管理 VLAN2 中还有一个附加 IP。我们添加了两个适配器,因为我们想防止通过只有 1G 连接的网关路由流量。VLAN1 上的 NIC 设置了默认网关,VLAN2 上的 NIC 没有设置默认网关。

上周,我们在系统中添加了一个新的 CoreSwitch,并将 ESX 和备份系统的连接移至此新交换机(10G 光纤和铜缆)。从那时起,我们就出现了奇怪的现象:从备份服务器到 VLAN2 的所有流量(不仅是备份,还有简单的网络文件复制流量)都分布在两个网络上 - 我在任务管理器中看到两个网卡(约 300mbit)上的传出流量。BackupProxy 上的 Wireshark 显示,端口 445 上有来自备份服务器两个网卡的数据包(文件复制测试)。交换机监控显示两个接口上的流量,VLAN1 接口上的流量也将进入防火墙。

路由表看起来不错。当我从备份服务器执行 tracert 时,一切看起来都正常。流量没有被路由。但备份数据(两个方向)和文件副本将通过 VLAN1 接口路由。我还尝试设置具有低度量的手动永久路由,但没有帮助。

VLAN2 中的两个服务器之间的连接正常 - 如果我删除 BackupProxy 上的网关,所有流量都会通过 VLAN2 并且不会被路由。但这样我就会失去与服务器的连接(Windows 更新、监控......),所以这不是解决方案。

我迄今为止尝试过的概述:

  • 在备份服务器上为 VLAN2 nic 添加了默认网关 - 没有帮助。
  • 删除了 BackupProxy 上 nic 的默认网关 - 有效,但没有解决方案。
  • 手动添加 VLAN2 流量的永久路由 - 没有帮助。
  • 重新启动所有服务器-没有帮助。
  • 再三检查了交换机上的 VLAN 配置,一切看起来都很好。
  • 在所有服务器上禁用 IPv6、LMHOSTS 查找和 TCP/IP 上的 NetBIOS(在一些可能的解决方案中建议) - 没有帮助。

编辑:做了更多测试,因为我们还在 VLAN1 网卡的备份服务器中添加了新的 10G 卡(与已用于 VLAN2 网卡的 10G 卡型号完全相同)。因此,之前 VLAN1 上的所有流量都是 1G,现在都是 10G。问题似乎与此网卡或 10G 有关 - 每次我在 10G 交换机端口上使用新的 10G 卡时,问题就开始了。10G 网卡在 1G 交换机端口上,1G 网卡在 10G 交换机端口上,1G 网卡在 1G 交换机端口上 - 没有问题。

在此处输入图片描述

编辑 2:做了一些研究,发现此论坛条目- 这个问题听起来和我的问题很相似。在与 Windows 支持部门进行了大量工作之后,一位 MS TCP/IP 工程师确认该行为“是故意设计的,符合 RFC 的规定”。微软建议创建一条防火墙规则来阻止通过错误接口流向另一个子网的传出流量。我试过这个,当从此服务器启动工作负载时,它可以正常工作。但是当我将某些内容从另一台服务器复制到此服务器时,它仍然会被路由,尽管它不应该被路由。当创建传入规则来阻止错误路由的流量时,一切都会停止工作。有什么想法可以让我得到我想要的路由吗?

相关内容