使用具有两个NIC的Linux机箱在两个子网之间进行路由

前端之家收集整理的这篇文章主要介绍了使用具有两个NIC的Linux机箱在两个子网之间进行路由前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个带有两个网卡的 Linux机箱,每个网卡都连接到不同的局域网:

>网络A:192.168.1.0 255.255.255.0
>网络B:192.168.2.0 255.255.255.0

路由器是:

> 192.168.1.1
> 192.168.2.1

Linux NIC是:

> 192.168.1.2
> 192.168.2.2

我希望网络A中的所有主机能够ping通网络B中的所有主机,反之亦然.

到目前为止我做了什么:

在Linux机器上:sudo sysctl -w net.ipv4.ip_forward = 1

在192.168.1.1:route add 192.168.2.0 255.255.255.0 gw 1​​92.168.1.2

在192.168.2.1:route add 192.168.1.0 255.255.255.0 gw 1​​92.168.2.2

我尝试了两个不同的Linux发行版(Zentyal和Ubuntu)并没有任何工作.

网络A中的主机只能ping 192.168.2.2,但不能ping网络B中的任何其他主机,反之亦然.我究竟做错了什么?

解决方法

您应该设置以下静态路由:

在192.168.1.1路由器上:

192.168.2.0/24 next hop 192.168.1.2

在192.168.2.1路由器上:

192.168.1.0/24 next hop 192.168.2.2

这样,这些网络中的其他计算机将数据包发送到其默认网关(.1),然后使用其静态路由表条目将数据包转发到Linux机箱,然后将该数据包转发到另一个网络.

猜你在找的Linux相关文章