8

我有 4 台 linux (CentOS) 机器的实验设置:

在此处输入图像描述

所有 4 台机器都使用不同的网络在内部连接,并且可以相互 ping 对方直接连接的接口。但是只有 PC4 可以访问互联网。

我正在尝试设置允许 PC1 能够通过 PC4 访问 Internet 的 iptable 规则,但我不知道该怎么做。

我尝试在 PC2、PC3 和 PC4 的传出接口上添加 NAT:

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

但是,这不起作用,你能告诉我如何在这样的设置中让 PC1 访问 10.0.0.1 网络吗?

4

1 回答 1

17

启用 IP 转发。

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

永久设置编辑/etc/sysctl.conf并设置01

net.ipv4.ip_forward = 1

要启用在 sysctl.conf 中所做的更改,您需要运行命令

sysctl -p /etc/sysctl.conf

NAT 的 iptables 规则

# /sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# /sbin/iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
# /sbin/iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
于 2013-02-14T16:56:32.810 回答