ルーター(dd-wrt)でiptables
を使用して、LANからWAN上のIP(192.168.10.14)にポート64738でルーターにリクエストを転送したいと思います。これは標準の反対であり(WANからLAN上のIPにリクエストを転送する))、それを機能させることができません。これが機能するはずです(ただし機能しない) )::
root@DD-WRT:~# iptables -t nat -A PREROUTING -p tcp -i vlan0 --dport 64738 -j DNAT --to-destination 192.168.10.14:64738
root@DD-WRT:~# iptables -t nat -A PREROUTING -p udp -i vlan0 --dport 64738 -j DNAT --to-destination 192.168.10.14:64738
root@DD-WRT:~# iptables -A FORWARD -p tcp -d 192.168.10.14 --dport 64738 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
root@DD-WRT:~# iptables -A FORWARD -p udp -d 192.168.10.14 --dport 64738 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
しかし、接続の試み(ここではルーターのIPは192.168.9.2)は失敗します:
# nmap -p 64738 192.168.9.2
Starting Nmap 6.40 ( http://nmap.org ) at 2013-10-05 22:21 EDT
Nmap scan report for rr-netgear.501s.lyndrew.com (192.168.9.2)
Host is up (0.00024s latency).
PORT STATE SERVICE
64738/tcp closed unknown
MAC Address: 4C:60:DE:FF:7E:88 (Netgear)
実際のWAN IPを押すと正常に機能することに注意してください:
# nmap -p 64738 192.168.10.14
Starting Nmap 6.40 ( http://nmap.org ) at 2013-10-05 22:21 EDT
Nmap scan report for raspi01.dmz.501s.lyndrew.com (192.168.10.14)
Host is up (0.0091s latency).
PORT STATE SERVICE
64738/tcp open unknown
私は何をすべきですか?
最初に問題を分析します。
また、完全なiptablesをダンプして、サポートできるようにします
iptables -L
ps:ここに逆方向のルートは見当たりませんでした。なぜうまくいかなかったのでしょうか
これはうまくいきました:
iptables -t nat -A PREROUTING -i br0 -p tcp -d 192.168.9.2 --dport 64738 -j DNAT --to-destination 192.168.10.14:64738
iptables -t nat -A PREROUTING -i br0 -p udp -d 192.168.9.2 --dport 64738 -j DNAT --to-destination 192.168.10.14:64738