同じIP範囲を使用する2つのネットワークアダプターがありますが、ネットワークは異なります。
私はこれを試しましたが、うまくいきませんでした:
iptables -t nat -A OUTPUT -p all -d 1.2.3.0/8 -j DNAT --to-destination 192.168.0.0/8 -o eth0
iptables -t nat -A OUTPUT -p all -d 3.2.1.0/8 -j DNAT --to-destination 192.168.0.0/8 -o eth1
例:
eth0は、範囲が192.168.0のネットワーク上で192.168.0.1のIPを持ちます。*
eth1のIPは、範囲192.168.0の別のネットワーク上で192.168.0.8です。*
1.2.3。* = 192.168.0。*からeth1
3.2.1。* = 192.168.0。*からeth0
これはiptablesでできることですか?
あなたの質問は明確ではありませんが、1.2.3.4トラフィックを1つのNICおよび4.3.2.1にルーティングしたい場合は、 route)を使用してルーティングテーブルを更新する必要があります コマンド。
例:
route add -net 1.2.3.4 netmask 255.0.0.0 dev eth1
route add -net 4.3.2.1 netmask 255.0.0.0 dev eth0
これを行うために特別にコードを記述するか、512個の個別のNATルールを追加する必要があります。DNAT
モジュールは複数のIPをマッピングではなく、ラウンドロビンとして扱います。