我正在使用 Vagrant 部署大型虚拟网络环境,以测试一些应用程序和网络活动。我使用的是仅主机网络,因此我可以在 Vagrantfile 中定义所有 IP 地址,但我需要用于测试的应用程序之一是无法作为虚拟机运行的外部设备。
因此,我想知道是否可以将传入主机的流量路由到仅主机 LAN。我知道这违背了仅主机网络的理念,但在这种情况下我无法使用桥接网络,因为 Vagrant 无法在桥接客户机接口上设置静态 IP 地址。
我尝试了以下方法:
- 在设备上添加路由,告诉它使用 VirtualBox 主机的外部 IP 地址作为发往仅主机 LAN 的任何流量的网关。
- 在 VirtualBox 主机上启用 IP 转发
- 在 VirtualBox 主机上添加路由,以将任何发往仅主机 LAN 的流量转发到 vboxnet0 接口。
- 尝试从外部设备 ping 主机专用 LAN 上的其中一个 VirtualBox 客户机 - 没有成功。
有什么想法这是否可能?
编辑:
值得注意的是,我可以从外部设备 ping VirtualBox 主机(接口 vboxnet0)上的主机专用接口的 IP 地址。
答案1
原来我忘了一个步骤……我需要向虚拟客户机添加一条路由,告诉它如何通过 VirtualBox 主机上的 vboxnet0 接口的 IP 地址到达我的设备所在的外部 LAN。完成此操作后,我便能够与它进行外部通信。
感谢@Sirex 对我的问题做出足够的评论,让我对此进行更多思考!