リモートプライベートネットワーク上には、ファイルサーバーとデータベースサーバーの2つのサーバーがあります(問題がある場合に備えて、これらはどちらもWindowsマシンです)。
ファイルサーバはそれ自身のかなり堅牢な認証メカニズムを持っていて、そして私が遠隔地から直接接続することを可能にします。
データベースサーバーは単純なユーザー名とパスワードを使用するため、不正アクセスを防ぐためにローカルネットワークにロックされ、外部トラフィックはブロックされます。
データベースサーバーにアクセスするには、Windows上のOpenVPNクライアントを使用してプライベートネットワーク上のVPNサーバーに接続します。
デフォルトでは、OpenVPNは、VPNサーバーが存在するリモートネットワーク宛てのすべてのネットワークパケットをVPN経由でルーティングします。残念ながら、VPN経由でファイルサーバにアクセスするのは非常に遅いです。
質問:
OpenVPNクライアントを、単一の特定のIPアドレス(つまりデータベースサーバー)を宛先とするVPN経由でのみトラフィックをルーティングするように構成する方法を教えてください。
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
押す Win + R そしてncpa.cpl
を実行します。
VPN接続を右クリックして、Properties→Networkingに移動します。
Internet Protocol Version 4を選択して、プロパティ→詳細...に移動します。
リモートネットワークでデフォルトゲートウェイを使用するのチェックを外し、OKをクリックします。
(省略可能)Internet Protocol Version 6に対して上記の手順を繰り返します。
VPNに(再)接続します。
コマンドプロンプトを開き、route print -4
を実行します。
Interface listでVPNのインターフェースを、Active Routesでそのゲートウェイを見つけます。
私のマシンでは、私は持っています:
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.88.1.1
ブロックのゲートウェイであるため、10.xxx.xxx.xxx
です。
VPNへの接続があるたびにアクティブルートに追加される永続的なルートを追加します。
route -p add 23.22.135.169 10.88.1.1 if 32
この例では、23.22.135.169
はwhatismyip.org
のIP、10.88.1.1
はゲートウェイのIP、そして32
はインターフェースの番号です。
(省略可能)route print -6
に対して前の手順を繰り返します。
セットアップをテストしてください。
すべてうまくいった場合は、 whatismyip.org と www.whatismyip.cx に異なるIPが表示されます。
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"
編集:私はアドレッシングを逃した一つのこと - すべてのトラフィックのデフォルトの転送...それはサーバー上で無効にすることができるか、クライアントが "プッシュ"ディレクティブを無視することを選択できる)経由:
route-nopull