CentOS多网卡和静态路由

我正在设置一个带有3个NIC和静态路由的CentOS。 eth0的IP地址为192.168.10.2,GW为192.168.10.1,eth1的IP地址为192.168.20.2,GW为192.168.20.1,eth2的IP地址为192.168.10.3,GW为192.168.10.1。

我想接受来自其他机器的eth1stream量(我已经将eth1设置为这些客户机的网关),并通过eth2发送给路由器,反之亦然(反向path)。

添加到系统的路由

ip route add default via 192.168.10.3 dev eth1 proto static metric 1024 

现在我面临的问题就像eth1上收到的stream量,而不是eth2。 它看起来像通过eth0。

我现在不想使用NAT或IPTABLES,是否可以将eth1的stream量路由到eth2,反之亦然。

您可以打开IP转发

echo 1> / proc / sys / net / ipv4 / ip_forwarding

但这只是事实的一半。 不使用NAT意味着所有主机都需要知道哪个路由器(网关)正在为哪个networking提供服务。 例如192.168.10.0/24中的一台机器,比如说192.168.10.25,希望与192.168.20.0/24中的一台机器连接,比如192.168.20.25,在一个networking中使用192.168.10.3,在另一个networking中使用192.168.20.2。 机器192.168.10.25需要这个路由

路由add -net 192.168.20.0 netmask 255.255.255.0 gw 1​​92.168.10.3

和机器192.168.20.25需要

路由add -net 192.168.10.0 netmask 255.255.255.0 gw 1​​92.168.20.2

或者,您可以使用NAT和IPTables

echo 1> / proc / sys / net / ipv4 / ip_forward

iptables –flush

iptables -t nat –flush

iptables -t mangle –flush

iptables -A INPUT -i lo -j ACCEPT

iptables -A OUTPUT -o lo -j ACCEPT

iptables – 政策INPUT ACCEPT

iptables –policy OUTPUT ACCEPT

iptables –policy FORWARD ACCEPT

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

这样你只需要configuration路由器(假设有路由)。