2つの同じネットワークがあり、それぞれTCPサーバーとTCPクライアントで構成されている2台のコンピューター間でトラフィックを転送したいと思います。 2つのネットワークに接続されているコンピュータを使用してiptablesを使用してこのデータを渡したいと思います。クライアントからフォワーダとしてTCP接続を開始し、サーバーとの接続を確立したいと思います。
たとえば、TCPクライアント(1.1.1.155)はフォワーダ(1.1.1.55)との接続を確立し、内部で要求をサーバー(1.1.1.155)に転送して接続を完了します。下の図を参照してください。
IPv4転送を有効にしました。
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables設定をクリアしました
iptables -F
私が試したiptablesの設定は次のとおりです。
iptables -A FORWARD -i eth2 -o eth1 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth2 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -i eth2 -j DNAT --to-destination 1.1.1.155
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
答え1
現在のデザインはあなたに合わないかもしれません。現在の問題は、ローカルサブネットがリモートサブネットと同じVPNを思い出させます。設計に戻ると、フォワーダはVPNサーバーになります。これを行うには、次のようにします。
LAN-A subnet will remain unchanged
LAN-B subnet will remain unchanged
eth1 and eth2 on forwarder must belong to two unique subnets, without conflicting with each other or with LAN-A and LAN-B.
これらの条件が満たされたら、ファイアウォールルールでNATを使用する必要があります。リピータはゲートウェイとして機能することを覚えておいてください。前述のように、ゲートウェイが正しく機能するには、異なるサブネットに複数のネットワークインターフェイスが必要です。