ubuntu 作为多端口路由器

ubuntu 作为多端口路由器

如果我有一个 4 个(或更多)以太网端口的 Linux 机器,如何将其设置为路由器来处理 4 个 C 类子网?例如,eth0 => 192.168.1.0/24,eth1 => 192.168.2.0/24,eth2 => 192.168.3.0/24,eth3 => 192.168.4.0/24,这 4 个子网内的每台客户端机器都可以互相通信。

有什么建议脚本吗?

答案1

根据您的接口设置,您需要让内核执行网络地址转换以跨这些子网路由数据包。首先尝试以下操作:

# iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 192.168.2.0/24 -j SNAT --to 192.168.2.1
# iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -d 192.168.1.0/24 -j SNAT --to 192.168.1.1

192.168.2.1eth1 的 IP 地址和子网的默认网关在哪里192.168.2.0/24192.168.1.1一样的。

并确保您已net.ipv4.ip_forward=1输入/etc/sysctl.conf。然后运行sysctl -p以使更改生效。

相关内容