web-dev-qa-db-ja.com

openvpnでNAT

私はこれと同様の問題を抱えています: NATなしのOpenVPN

まだ答えられていないようです。

私の状況の説明:別の管理者が会社を辞める前にインストールしたopenvpnサーバーがネットワークAにあります。現在、複数のユーザーとサーバーがそのopenvpnサーバーに接続してネットワークAにアクセスし、NATを取得しているため、vpnユーザー/サーバーからのすべてのリクエストにopenvpnサーバーからの送信元アドレス。

ここで、openvpnクライアント/サーバーの1つにアクセスするためにネットワークA上のサーバーが必要であり、openvpnでNATを無効にして、これらのクライアントとサーバーの「vpn内部」IPアドレスを公開したいと思います。

VPNネットワークにアクセスするためにネットワークAにルートを追加する必要があることはわかっていますが、それは明らかですが、openvpnでNATを無効にする方法がわかりません。また、IPtablesルールが存在しないためです。いくつかのopenvpn内部NATメカニズムが使用されているようです。

NATを無効にするためにチェックする必要があるオプションはどれですか?

3
Hans

OpenVPNサーバーには、次のようなルールが必要です。

        iptables -t nat -A POSTROUTING -i tun0 -j MASQUERADE

あなたはそれを見つけることができます

      iptables-t nat -L -n -v

このルールを抑制する必要があります。

もし、あなたが主張するように(しかしあなたは走りましたか

      iptables -t nat -L -n -v

実行中のiptablesルールがないことを再確認するには?)、他の唯一の可能性は、iproute2スイートを介してナッティングが行われることです。行う

    cat /etc/iproute2/rt_tables

お持ちのテーブルの名前を書き留めてから、

     ip route table TABLE_NAME | grep ^nat

そして、あなたがいくつかの出力を見つけることができるかどうかを確認してください。そうした場合、それはパケットヘッダーがiproute2コマンドip route add nat ..によって書き換えられることを意味します。あなたがする必要があるのは問題のルーティングテーブルを削除することです。

これらは2つの可能性ですtertium non datur

次に、ルーターにルールを追加して、OpenVPNサブネット10.0.0.0/24のパケットをOpenVPNサーバー経由でルーティングする必要があります(IPアドレス192.168.0.127があると仮定します)。ルーターがLinuxマシンの場合、次のコマンドで実行できます。

       ip route add 10.0.0.0/24 via 192.168.0.127

Ciscoのようなほとんどのルーターには、GUIにあるAdvanced routing機能があります。上記のルートを指定するには、これを使用する必要があります。

3
MariusMatutiae