![两个虚拟子网之间的路由](https://linux22.com/image/693555/%E4%B8%A4%E4%B8%AA%E8%99%9A%E6%8B%9F%E5%AD%90%E7%BD%91%E4%B9%8B%E9%97%B4%E7%9A%84%E8%B7%AF%E7%94%B1.png)
我需要在 VirtualBox 中创建两个子网(子网 1:192.168.56.0/24 子网 2:192.168.60.0/24)。这两个子网中的计算机需要互相 ping 通。例如,计算机 192.168.56.103 可以 ping 通 192.168.60.5。实现此目的的最佳方法是什么?
提前致谢。
答案1
您需要一个网络之间的路由器,即具有两个网络接口的虚拟机,每个网络一个。假设路由器上的接口分别在 和 上有地址和。192.168.56.1
在上的主机上添加一条路由,如下所示:192.168.60.1
subnet1
subnet2
subnet1
subnet2
ip route add 192.168.60.0/24 via 192.168.56.1
以及所有主机上subnet2
:
ip route add 192.168.56.0/24 via 192.168.60.1
用作路由器的虚拟机可以是一台非常简单的 Linux 机器,内核负责路由,因此不需要用户空间程序。但是,Linux 上的数据包转发默认是禁用的。以下命令可启用转发:
sysctl -w net.ipv4.ip_forward=1
这些命令都不能使设置持久;如何做到这一点取决于 Linux 发行版。