![ddwrt 不会从外部请求中中继外部 IP 地址](https://linux22.com/image/1354008/ddwrt%20%E4%B8%8D%E4%BC%9A%E4%BB%8E%E5%A4%96%E9%83%A8%E8%AF%B7%E6%B1%82%E4%B8%AD%E4%B8%AD%E7%BB%A7%E5%A4%96%E9%83%A8%20IP%20%E5%9C%B0%E5%9D%80.png)
我遇到一个问题,所有外部请求都被记录或解释为来自路由器,因为日志显示的是路由器 IP,而不是原始客户端 IP。我正在尝试找出外部请求在哪里/为什么/如何被伪装成路由器的内部 IP 地址?!?!
我使用的是 DD-WRT v24-sp2 (06/08/12) std 版本的 dlink 路由器。我的配置文件中也有一些防火墙规则,因为我使用路由器的 wifi 连接,并且有 2 个独立的 WLAN。
iptables -t nat -I POSTROUTING -o `get_wanface` -j SNAT --to `nvram 获取 wan_ipaddr` iptables -I FORWARD -i br1 -m state --state NEW -j ACCEPT iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu iptables -I FORWARD -i br0 -o br1 -m state --state NEW -j DROP iptables -I FORWARD -i br1 -d `nvram 获取 lan_ipaddr`/`nvram 获取 lan_netmask` -m state --state NEW -j DROP iptables -t nat -I POSTROUTING -o br0 -j SNAT --到`nvram 获取 lan_ipaddr` iptables -I 输入 -i br1 -m 状态 --状态新 -j DROP iptables -I 输入 -i br1 -p udp --dport 67 -j 接受 iptables -I 输入 -i br1 -p udp --dport 53 -j 接受 iptables -I 输入 -i br1 -p tcp --dport 53 -j 接受
我怀疑它们是不是我问题的根源。如果有人遇到过类似的问题,请分享经验。提前谢谢。
答案1
你的问题在于规则
iptables -t nat -I POSTROUTING -o br0 -j SNAT --到`nvram 获取 lan_ipaddr`
此规则正在重写离开 br0(即您的一个 WIFI 接口)的数据包,大概是使用路由器的地址。
我不完全确定这条规则想要实现什么?我想你可以把它注释掉,然后一切就会按预期进行。