我在工作笔记本电脑上的虚拟机内运行 Ubuntu。我必须在虚拟机主机系统上运行 VPN 软件,并且需要从 Ubuntu 虚拟机内访问 VPN 网络。
我可以将虚拟机的网络接口设置为 NAT,这样就可以解决我的 VPN 连接问题。我可以通过 NAT 接口访问我工作接口内的任何主机。
除了我的 VPN 需求之外,我还希望 LAN 上的主机能够连接到我的 VM。例如,我想在我的 VM 上运行 NFS 服务器,而 LAN 上的另一台主机想要连接到该服务器。(注意 - 我不希望远程 VPN 主机连接到我的 VM)。
为了实现这一点,我为我的虚拟机添加了第二个 Bridge 网络接口。这工作正常,我可以从 LAN 上的任何其他主机访问我的虚拟机。
这问题启用两个接口的原因是 NAT 接口(VPN)不再使用,因此我的 VPN 主机变得无法访问。
我尝试改变 VMWare 设置,使得 NAT 接口为 eth0,桥接接口为 eth1,反之亦然,但没有成功。
我认为我需要对我的路由表做一些事情来告诉 Ubuntu 将任何东西通过 ethX 路由到 192.168.99.255(我的 LAN),其他一切都通过 ethY 路由。
我该如何设置这些规则?我可以通过网络连接 GUI 来执行此操作吗?
路由 -n 的输出如下。192.168.99.0 是桥接接口(LAN),222.0 是 NAT 接口。
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.99.1 0.0.0.0 UG 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0
192.168.99.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0
192.168.222.0 0.0.0.0 255.255.255.0 U 1 0 0 eth1
答案1
在 VMware Workstation 中,转到Edit > Virtual Network Editor
并单击 VMnet8,它应该是您的 NAT 适配器。
然后单击 NAT 设置,这将弹出一个菜单,告诉您您的 NAT 适配器网关是什么(您将需要它)。
一旦你有了这个,你将需要为你的 VPN 子网添加一个静态路由,如下所示:
route add -net 10.1.50.0 netmask 255.0.0.0 gw 192.168.222.2
语法是:
route add -net $WORK-NETWORK netmask $NETMASK gw $NAT-ADAPTER-GW
现在应该可以从虚拟机访问这两个网络。
如果你想添加路由,使其在重启后继续存在,那么你需要编辑/etc/network/interfaces
并添加
# static route
post-up route add -net 10.1.50.0 netmask 255.0.0.0 gw 192.168.222.2 dev eth1