iptablesのDNATを利用している場合のハマりどころ

| コメント(0) | トラックバック(0)

iptablesでルーター設定していて、DNATでハマったので自戒です。

LAN側にHTTPサーバーなど立てるばあいDNATをつかって穴をあけます。 この場合、WAN側からはグローバルIPに接続は問題ないけど、 LAN側や自ホストからグローバルIPでHTTP接続できなかったので下記設定をすると うまくいきましたので、参考まで。

iptables
WAN_IP='グローバルIP'
LAN_IP='ルーターのLAN側IP'
SV_IP='httpサーバーのLAN側IP'
PORT='80'


# WAN から SVに対しての接続
iptables -t nat -A PREROUTING  \
         -p tcp -d $WAN_IP --dport $PORT -j DNAT --to-destination ${SV_IP}:$PORT

# SV から LANにパケットを返すさいSNATでIPを書き換えて対処
iptables -t nat -A POSTROUTING \
         -p tcp -d $SV_IP  --dport $PORT -j SNAT --to-source $LAN_IP

# 自ホストからグローバルIPに対して接続
iptables -t nat -A OUTPUT \
         -p tcp -d $WAN_IP --dport $PORT -j DNAT --to-destination $SV_IP

参考サイト

トラックバック(0)

トラックバックURL: http://mukaer.com/cgi-bin/mt/mt-tb.cgi/104

コメントする

PR

PR





検索

Loading

メニュー

twitter