伙计们,我在 centos 上遇到了 NAT 问题。在我的实验室中,Centos 配置为路由器。我想运行我的本地系统 (例如:192.168.1.45)实时 IP 上的 Apache 服务器(例如 112.100.4.34)。
另一个用户已经完成了此操作,但我无法做到。
答案1
这可以通过后路由表和伪装来完成:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
先前的规则将对通过 eth0 接口的所有流量进行 nat,并更改源地址(如果该接口是具有公共 IP 地址的接口)。如果您想对单个 IP 进行 nat:
iptables -t nat -A POSTROUTING -src 192.168.1.45 -o eth0 -j SNAT --to 112.100.4.34
如果您想要持久保留先前的规则,请将删除前缀的规则添加到您的 centos 文件iptables
中。/etc/sysconfig/iptables
要了解 iptables 规则的详细信息,请阅读这里