如果 ip 与一组 ip 不匹配,则 Ipatables 规则转为 NAT。

如果 ip 与一组 ip 不匹配,则 Ipatables 规则转为 NAT。

我有两台服务器 192.168.0.153 和 192.168.0.200,我希望将所有传入流量发送到服务器 192.168.0.153:80 到 192.168.0.200:80

这可以使用 NAT 表来实现,但是,如果到服务器 192.168.0.153:80 的流量来自 192.168.0.140、192.168.0.142 或 192.168.0.143,我不希望进行 NAT,其余到服务器 192.168.0.153:80 的所有传入连接都应被映射为 192.168.0.200:80

我如何使用 iptables 实现这一点?谢谢。

答案1

首先,让来自三个授权 IP 的连接转到 .153。
然后,对其他 IP 进行 DNAT。

iptables -t nat -A PREROUTING -s 192.168.0.140,192.168.0.142,192.168.0.143 -d 192.168.0.153 -p tcp --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -d 192.168.0.153 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.200

相关内容