很多openwrt固件都可能因为docker导致NAT回环失效,所以其他openwrt如果出现相似问题也可以参考。

NAT回环是端口在端口映射中的一个参数,如图:


如果不开启NAT回环,那么你做了端口映射,只能在外网通过域名访问,但内网无法访问,原因就在于nat回环没有生效。

该问题和默认的网桥防火墙有关,其实不是NAT loopback不起作用,而是bridge防火墙给阻挡了回流的流量。如已经编译可以在/etc/sysctl.conf 和/etc/sysctl.d/11-br-netfilter.conf 修改:

net.bridge.bridge-nf-call-arptables=0
net.bridge.bridge-nf-call-ip6tables=0
net.bridge.bridge-nf-call-iptables=0

然后sysctl -p, 即可使用NAT loopback