我有一台 Windows 7 Pro 电脑,正在运行一个程序,用于检查我网络中 3 个不同 ISP 的可用性。它只是从每个 ISP ping 同一台主机 (8.8.8.8),并在 ISP 未响应该 ping 时采取一些措施。
为此,我需要为每台计算机配置单独的连接(单独的 NIC)。目前,我唯一能做到的就是使用 Virtualbox 并为该虚拟机分配 3 个虚拟 NIC。所有 NIC 都配置为桥接至单个物理 NIC,该物理 NIC 连接到 3 个 ISP 所连接的物理交换机。
因此,现在这是配置的一个示例:
NIC 1:
IP 192.168.1.1
Gateway 192.168.1.254
NIC 2:
IP 192.168.2.1
Gateway 192.168.2.254
NIC 3:
IP 192.168.3.1
Gateway 192.168.3.254
这允许程序运行与特定地址绑定的 ping 命令:
ping -S 192.168.1.1 8.8.8.8
ping -S 192.168.2.1 8.8.8.8
ping -S 192.168.3.1 8.8.8.8
效果很好。
我正在尝试在不使用 Virtualbox 的情况下,在只有一个物理 NIC 的真实计算机中实现此操作。我的第一个想法是将 3 个 IP 地址与 3 个网关一起添加到该接口。这不管用。当这样做时,Windows 似乎尝试ping
通过单个网关路由来自任何这些命令的流量(无论我在它们上设置了什么指标),并且 3 个ping
命令中只有一个有效。
因此,我一直在疯狂寻找一些本机或第三方解决方案,使我能够向 Windows 7 添加可以“桥接”的虚拟网卡,就像 Virtualbox 将虚拟机的虚拟网卡桥接到单个物理接口一样(也就是说,有 3 个虚拟网卡可以实际访问物理网卡所拥有的网络,而不依赖于该物理网卡的任何路由,并允许它们到达可访问的其他网关),但我还没有找到可以做到这一点的东西。
现在我正要购买 3 个便宜的 USB 转以太网适配器,这样我就可以将它们连接到计算机并为其提供 3 个额外的物理 NIC,但我真的很想找到一种不需要我这样做的解决方案。
我读到 Hyper-V 可用于执行类似操作,但这对 Windows 7 不起作用。
有人能想到在 Windows 7 上实现这一目标的方法吗?
答案1
我认为您想使用 -k 标志而不是 -S 标志。-k 提供您想要用于 ping 的网关的 IP。
ping -k 192.169.1.1 microsoft.com
来源:https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/ping