我想将传入的外部流量重定向到侦听 127.0.0.1 的服务。重定向很简单 - 只需:
iptables -t nat -A PREROUTING \
-d local_ip --dport 80 \
-j DNAT --to-destination 127.0.0.1:port
但这样会使数据包处于打开状态eth0
,并且默认情况下会将其记录为 martian 并丢弃。我可以启用它route_localnet
来eth0
修复此问题,但这会使整个接口暴露给奇怪的路由技巧。
没有的话我该如何正确转发route_localnet
?
答案1
这正确的处理此问题的方法是让应用程序监听正确的接口和/或 IP 地址,而不是 127.0.0.1,并且仅使用 iptables 允许流量,而不是玩奇怪的 NAT 技巧。