我想重定向从 到 的传出流量(无论是来自本地主机还是其他地方,因为机器是网关192.168.0.2:80
)localhost:80
。
我尝试在 nat 表中设置此规则:
-A PREROUTING -p tcp -d 192.168.0.2 --dport 80 -j DNAT --to-destination 127.0.0.1:80
当我输入时,我最终得到以下规则iptables -t nat -L
:
DNAT tcp -- anywhere 192.168.0.2 tcp dpt:http to:127.0.0.1:80
但这似乎不起作用。我究竟做错了什么 ?
答案1
在较新的内核上,这可以通过启用“route_localnet”来实现
sysctl -w net.ipv4.conf.all.route_localnet=1
答案2
尝试仔细检查您的环回 IP 地址 (127.0.0.1) 是否设置为可到达localhost
。对两者进行 Ping,以确保它们都得到良好的响应:
Chain FORWARD (policy ACCEPT)
target prot opt source destination
查看你的 iptables:
sudo iptables -L -n
尝试添加此规则
iptables -t nat -A OUTPUT -p tcp --dport 80 -d 192.168.0.2 -j DNAT --to-destination 127.0.0.1:80