我在 MacOS 和 Windows 主机上运行了几个 VMWare(Workstation 16)和 VirtualBox VM。我需要以透明的方式通过我的 VPN 提供商 Nord 路由它们的流量,而 VM 对此一无所知(例如,通过在虚拟机内配置 VPN)。
为了实现这一点,我完成了以下步骤:
但是,我不确定接下来该怎么做,即使用 IP 规则通过创建的网络接口路由来自虚拟机的所有流量,还是通过另一个桥接接口路由。我希望能够为虚拟机提供一个到 tun2socks 接口的桥接适配器,但这在 VirtualBox 的 VM Ware 中没有出现。您能指导我如何在 Windows 和 Mac 上实现这一点吗?此外,如果您能就这是否是最有效的方法提出任何意见和建议,我将不胜感激。
答案1
为了解决这个问题,我设置了一个虚拟机作为其他虚拟机的虚拟路由器。主要思路如下:
在 VM Ware 或 VirtualBox 中创建一个 LAN 网络(在 VM Ware 中称为 LAN 段,在 VirtualBox 中称为内部网络),并将所有机器(虚拟路由器和您希望由其处理的虚拟机)放入其中。这样,所有机器都将有一个以太网适配器,它们可以通过该适配器进行通信(就像它们通过交换机连接一样)。此适配器不提供互联网访问。
为虚拟路由器提供额外的 NAT 网络适配器,以便它可以通过它访问互联网。
配置虚拟路由器以将其所有流量路由到 VPN 提供商的服务器,并作为其他虚拟机的路由器。
使用此设置,我尝试了 3 种不同的配置(记录在这里)。对于大多数人来说,最简单、最方便的方法可能是配置普富思VM 作为虚拟路由器。