特定の宛先だけ VPN経由で通信させる設定です。なお、Windowsでの設定です。
通常、VPNのネットワークアドレスと、クライアントの属するローカルネットワークのアドレスは、異なるようにします。
しかし、例えば 192.168.1.0/24 のようにネットワークアドレスが同じ場合でも、VPNのある1台とだけは通信したい場合、今回の設定をおこなえばOKです。
設定は、デフォルトで VPN経由で通信しないようにした上で、特定の宛先だけ VPN経由で通信させるようにします。
デフォルトで VPN経由で通信しないようにする
VPN接続のプロパティで、ネットワーク タブを選択します。
[インターネットプロトコルバージョン 4(TCP/IPv4)] を選択して「プロパティ」ボタンを押し、「詳細設定」を押します。
次のような画面になるので、[リモートネットワークでデフォルトゲートウェイを使う] のチェックを外し、[クラスベースのルートの追加を無効にする] にチェックを付けます。
これで、デフォルトで VPN経由で通信しないようになります。
以下説明ですが、飛ばす場合は、「特定の宛先だけ VPN経由で通信させる」まで進んでください。
[リモートネットワークでデフォルトゲートウェイを使う] は、もし、チェックが付いていると、すべての通信がVPN経由で流れます。
デフォルトで VPN経由で通信しないようにしたいので、チェックを外します。
[クラスベースのルートの追加を無効にする] は、もし、チェックが外れていると、VPNと同じネットワークアドレス宛の通信は、全てVPN経由で流れます。
つまり、ローカルネットワークとVPNで同じネットワークアドレスの場合、ローカルネットワーク宛の通信がVPN経由で流れてしまいます。
チェックを付けると、宛先個別に設定しないと、VPN経由で流れません。
特定の宛先だけ VPN経由で通信させたいので、チェックを付けます。
宛先個別の設定は、次の項で説明します。
特定の宛先だけ VPN経由で通信させる
まず、VPN接続します。
先ほどまでの設定で、デフォルトで VPN経由で通信することはありません。
ここから、VPN経由で通信させたい宛先を個別に設定していきます。
まず、コマンドプロンプトから route print を実行します。
出力結果の先頭は、下記のように一覧が表示されます。VPN接続の個所の、左端の数字をメモします。
この例では、VPN接続の名称は「VPN(TEST)」で、38 をメモします。
=========================================================================== インターフェイス一覧 38...........................VPN(TEST) 24...00 1b dc 07 c9 36 ......Bluetoothパーソナルエリアネットワークデバイス 15...00 ff 93 b2 6f 40 ......TAP-Windows Adapter V9 11...6c 62 6d 41 28 35 ......Realtek PCIe GBE Family Controller 1...........................Software Loopback Interface 1 :
特定の宛先だけ VPN経由で通信させるために、次の書式でルーティングテーブルに設定を行います。
route add 宛先IPアドレス mask 255.255.255.255 VPNサーバのアドレス metric 1 if インターフェイス一覧でメモした数字
例えば、次のように実行します。
この例では、192.168.1.100 はVPN側にアクセスします。
その他の 192.168.1.101などは、ローカルネットワーク側にアクセスします。
route add 192.168.1.100 mask 255.255.255.255 192.168.1.1 metric 1 if 38
metric 1 if がないと、ローカルネットワークの方とのみ通信してしまい、VPN経由で通信しないので、注意して下さい。
なお、VPN切断すると、上記で追加したものは消えます。
消えないようにするには、-p を追加して実行します。
route -p add 192.168.1.100 mask 255.255.255.255 192.168.1.1 metric 1 if 38
以上、特定の宛先だけ VPN経由で通信させる設定です。
コメント