将Windows后面的访客虚拟机路由到主机上的多个连接的networking

我已经configuration了Hyper-Vangular色的Windows Server 2016。 主机连接到两个networking

  • 10.101.8.0/22 link-local only network)
  • 10.13.80.0/24连网)

我创build了一个NATnetworking172.16.0.0/16和一些内部的vSwitch,以便客人通过NAT进行通信。 每个虚拟机只有一个networking接口连接到一个提供到NATnetworking接口的vSwitch。 他们的IP地址和DNS服务器是手动设置的。 每个访客从每个连接的networking添加一个DNS服务器。

从Linux后面的NAT客户端,我可以同时到达连接到主机的两个networking,没问题。 Server 2016pipe理操作系统也可以连接到两个networking,没问题。 但是,主要的问题在于Windows客户端似乎只能在任何给定的时间与主机上的两个networking之一进行通信,并且在他们之间切换似乎是不确定的

例如,在Linux(RHEL 7)上,我可以同时与两个networking上的主机进行通信。 但是,在Windows客户机上(使用Windows 8.1和Server 2016 guest虚拟机进行testing),我只能在任何给定时间访问连接到主机的两个networking之一。 连接目的地为一个networking将正常工作,而连接另一个将永远超时。

具有连接性的networking也似乎偶尔会“切换”。 如果我在没有连通性的情况下对networking上的一个目的地执行tracert ,它会挂起很长一段时间(30s到一两分钟),但最终会获得连通性。 对我来说,看起来只是我碰巧连接的networking的掷骰子。 但是,当这个“切换”发生时,连接将会丢失到另一个networking。 当连接经常使用时,活跃的networking连接似乎相对稳定…

我曾尝试更改连接DNS后缀设置,并尝试启用/禁用NetBIOS。 我已经检查了客人和主人的路由表,没有什么似乎是错误的。 不确定要从这里排除故障。 我没有在pipe理操作系统上运行任何dhcp / routingangular色。

我能够通过在本地networking中增加一个专用于stream量的第二个networking接口,删除默认路由并手动添加一个新的“默认”路由来使用特定的接口和另一个路由dept.localnetworking。

我执行了下面的命令,其中172.16.1.1是虚拟交换机的IP, if 4用于默认路由, if 7用于dept.localnetworking。

 route delete 0.0.0.0 route add -p 0.0.0.0 mask 0.0.0.0 172.16.1.1 metric 200 if 4 route add -p 10.101.8.0 mask 255.255.252.0 172.16.1.1 metric 100 if 7 

然而,我仍然不清楚为什么在通过相同的接口路由时stream量不起作用,即使网关是相同的,并且为什么它不是Linux上的问题。 如果有人能向我解释这个和/或提供一个不需要第二个界面的更好的解决scheme,我会很乐意接受答案。