多数の WAN IP を多数の LAN IP に変換したいのですが、一部のポートしか開いていません。変換したい WAN IP は、ルーターがインターネットに接続するために使用するプライマリ WAN IP ではありません。
たとえば、WAN IP 216.58.216.238をLAN IP 10.10.10.10に変換し、ポート80と443を開きます。
最初に次ifconfig
のインターフェイスが表示されます: br0
、、、、、、、。eth0
eth1
eth2
lo
vlan1
vlan2
vlan2
外部 IP アドレスが割り当てられています。
翻訳はどのように行えばよいでしょうか?
これまで試してみたのは以下のとおりです:
ifconfig eth0:1 216.58.216.238 netmask 255.255.255.0 up
iptables -t nat -A PREROUTING -i eth0 -d 216.58.216.238 -p tcp --dport 80 -j DNAT --to-destination 10.10.10.10:80
iptables -t nat -I POSTROUTING -s 10.10.10.10 -j SNAT --to 216.58.216.238
しかし、うまくいかないようです。ポート 216.58.216.238:80 を使用して外部ネットワークから 10.10.10.10:80 のサービスにアクセスできません。
再起動後にを実行するifconfig
と、いくつかの追加インターフェイスが表示されます。 例: 。およびeth0:1
と同じ HWaddr を持ち、 に正しい外部 IP アドレスが割り当てられていますが、ネットワーク外のデバイスはまだ表示されません。eth0
vlan2
inet addr
実行すると、iptables -t nat -vnL
何かが登録されたようです。たとえば、次のようになります:
Chain PREROUTING (policy ACCEPT 5212 packets, 475K bytes)
pkts bytes target prot opt in out source destination
...
0 0 DNAT tcp -- eth0 * 0.0.0.0/0 216.58.216.238 tcp dpt:80 to 10.10.10.10:80
...
アクセスを許可するために何を変更する必要があるかについて何かアイデアはありますか?
編集。
次のコマンドを使用してサービスを動作させることはできましたが、すべてのポートが通過を許可してしまいます。iptables にはスイッチやオプションが多数あります...
ifconfig eth0:1 216.58.216.238 netmask 255.255.255.0
iptables -t nat -I PREROUTING -d 216.58.216.238 -j DNAT --to 10.10.10.10
iptables -t nat -I POSTROUTING -s 10.10.10.10 -j SNAT --to 216.58.216.238