windows – OpenVPN: VPN経由で特定のIPアドレスだけをルートするのですか?

openvpn routing tunnel windows

リモートプライベートネットワーク上には、ファイルサーバとデータベースサーバの2つのサーバがあります(念のため、これらは両方ともWinマシンです)

ファイルサーバーにはかなり堅牢な認証機構があり、遠隔地から直接接続できるようになっています

データベースサーバーはシンプルなユーザー名とパスワードを使用するため、不正アクセスを防ぐためにローカルネットワークにロックダウンされており、外部からのトラフィックはブロックされています

データベースサーバーにアクセスするために、WindowsのOpenVPNクライアントを使ってプライベートネットワーク上のVPNサーバーに接続しています

デフォルトでは、OpenVPN は VPN サーバーが存在するリモートネットワーク向けのすべてのネットワークパケットを VPN 経由でルーティングします。残念ながら、VPN を通してファイルサーバにアクセスするのは非常に遅いです!

Question:

OpenVPN クライアントを設定して、単一の特定の IP アドレス宛ての VPN を通してのみトラフィックをルーティングするように設定するにはどうすればいいですか?

  66  Brian Lacy  2012-08-03


ベストアンサー

OpenVpnの正しい設定は

route-nopull
route 192.168.0.0 255.255.255.0

これらのエントリは .ovpn ファイルに属しており、すべての 192.168.0.* サブネットトラフィックを VPN 経由で誘導します

1つのIPのみ(192.168.0.1)の場合

route-nopull
route 192.168.0.1 255.255.255.255

79  Thomas  2013-08-06


Goals

  • VPNが接続されている場合でも、デフォルトではすべてのインターネットトラフィックにプレーンなインターネット接続を使用します
  • VPNを介して特定のIPアドレスにトラフィックをルーティングします

Steps

  1. Win + Rを押して、ncpa.cplを実行します

  2. VPN接続を右クリックして、プロパティ→ネットワーキングに進みます

  3. インターネットプロトコルバージョン4を選択し、プロパティ→Advanced….へ

  4. リモートネットワークでデフォルトのゲートウェイを使用する] のチェックボックスをオフにして、[OK] をクリックします

  5. (オプション) インターネットプロトコルバージョン6の場合は、前の手順を繰り返します

  6. (再)VPNに接続します

  7. コマンドプロンプトを開き、route print -4を実行します

  8. インターフェイスリストでVPNのインターフェイスを、アクティブルートでVPNのゲートウェイをスポットします

    私のマシンでは、私が持っています

    Interface List
    32...........................Super Free VPN
    
    [...]
    
    Active Routes:
    Network Destination        Netmask          Gateway       Interface  Metric
    0.0.0.0          0.0.0.0         On-link        10.6.6.127     31
    10.0.0.0        255.0.0.0        10.88.1.1      10.88.1.102     31
    

    ここでは、VPN のゲートウェイは 10.xxx.xxx.xxx ブロックのゲートウェイなので、10.88.1.1 となります

  9. VPNへの接続があるときはいつでもアクティブなルートに追加される永続的なルートを追加します

    route -p add 23.22.135.169 10.88.1.1 if 32
    

    この例では、23.22.135.169whatismyip.orgのIP、10.88.1.1がゲートウェイのIP、32がインターフェースの番号です

  10. (オプション) route print -6の場合は前の手順を繰り返します

  11. 設定をテストします

    すべてがうまくいった場合、whatismyip.orgwww.whatismyip.cxは異なるIPを表示するようになりました

28  Dennis  2012-08-03


OpenVPNクライアントの設定に、次のような行を追加します

route The.IP.To.Go 255.255.255.255

(ここで、The.IP.To.Goは、VPNを介してルーティングしたいIPです)

これは、OS のルーティングテーブルにエントリを作成するよう OpenVPN に指示します

代わりに、OpenVPN サーバはサーバ設定に追加することで、このルーティング設定をクライアントに「プッシュ」するようにすることができます

push "route The.IP.To.Go 255.255.255.255"

EDIT: 一つ見落としていたことがありました – すべてのトラフィックのデフォルト転送…サーバー上で無効にするか、クライアントが “push” ディレクティブを無視するように選択することができます (なので、二番目のオプションである “push” ルートは動作しません)

route-nopull

14  Adam  2013-02-04


OpenVPN上でルーティングされるものをカスタマイズするための簡単なlinux / networkmanagerフレンドリーなソリューションを求めているコメントに応えて、GUIフレンドリーな方法で設定してみました。この回答は、私の知る限りでは、Thomas の回答の GUI 版に過ぎません

Screenshot of network manager showing where to click

ステップ1:VPN構成を選択します

ステップ2:関連するタブ(IPv4またはIPv6のいずれか)に移動します

ステップ3:右下の「ルート…」ボタンをクリックします

ステップ4: 希望するルートを追加します(この場合は192.168.0.*からVPNを経由してすべてのトラフィックをリダイレクトします)

ステップ5: 「この接続ではリソースのみを使用する」にチェックを入れて、VPNに接続してもデフォルトのゲートウェイの設定を変更して、すべてのトラフィックをVPN経由でルーティングすることがないようにします

4  DeveloperACE  2020-01-10


iptables -A PREROUTING -t mangle -i <LAN_interface> \
-d <remote_network>/<remote_netmask> -j ROUTE --gw <openvpn_host_ip>

-2  Dharmesh  2015-02-13


タイトルとURLをコピーしました