なんで
ネットワークがちょっと不調だったので。
現在、実家・自宅のネットワークは以上のような構成になっており、常に自宅(緑)から実家(青)へVPNセッションをNGN経由で張っています…が、ついこの間までは問題なく使えていたのに、実家側のルータが自宅のマシンにNATテーブルを食い荒らされるという謎の事態になり、実家ネットワークの 192.168.0.0/23
宛てのトラフィックをVPNで、それ以外のトラフィックは自宅のルータからインターネット側に流すということにしました。
ということで、(ルータ側でVPNセッションを張っている訳では無いので)Windows側のルーティングテーブルを触ることにしました。
まずはじめに、コマンドプロンプト(要管理者権限)で route print
を実行して現在のルートを確認します。
C:\WINDOWS\system32>route print
===========================================================================
インターフェイス一覧
7...** ** ** ** ** 8c ......A
8...** ** ** ** ** a0 ......VPN Client Adapter - VPN
4...** ** ** ** ** e8 ......B
2...** ** ** ** ** c5 ......Bluetooth Device (Personal Area Network)
1...........................Software Loopback Interface 1
5...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
===========================================================================
IPv4 ルート テーブル
===========================================================================
アクティブ ルート:
ネットワーク宛先 ネットマスク ゲートウェイ インターフェイス メトリック
0.0.0.0 0.0.0.0 192.168.2.1 192.168.2.36 4
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.82 2
127.0.0.0 255.0.0.0 リンク上 127.0.0.1 331
127.0.0.1 255.255.255.255 リンク上 127.0.0.1 331
127.255.255.255 255.255.255.255 リンク上 127.0.0.1 331
192.168.1.82 255.255.255.255 リンク上 192.168.1.82 258
192.168.2.0 255.255.255.0 リンク上 192.168.2.36 257
192.168.2.36 255.255.255.255 リンク上 192.168.2.36 257
192.168.2.255 255.255.255.255 リンク上 192.168.2.36 257
224.0.0.0 240.0.0.0 リンク上 127.0.0.1 331
224.0.0.0 240.0.0.0 リンク上 192.168.1.82 258
224.0.0.0 240.0.0.0 リンク上 192.168.2.36 257
255.255.255.255 255.255.255.255 リンク上 127.0.0.1 331
255.255.255.255 255.255.255.255 リンク上 192.168.1.82 258
255.255.255.255 255.255.255.255 リンク上 192.168.2.36 257
===========================================================================
固定ルート:
なし
- 省略 -
この状態だと、 192.168.1.1
, 192.168.2.1
のゲートウェイの順になっていますが、逆にしたいのでアダプタの優先度を触ります。
Windows 10 Pro (build 16184)だと ネットワークと共有センター
を開いた後、左側の アダプターの設定の変更
をクリックしネットワークアダプタ一覧を表示させ、対象のインタフェース(今回は A
と VPN Client Adapter - VPN
)のプロパティを開き、インターネット プロトコル バージョン 4(TCP/IPv4)のプロパティ
のプロパティをクリックし、プロパティを開いた後、全般タブの詳細設定ボタンをクリックすると、下の方に インターフェイス メトリック
というのがあるので、それぞれ優先度を高くしたい方の数値を低くし、OKで適応します。
今回は VPN Client Adapter - VPN
を 3、 A
を 2に設定しました。
(Windows 8.1くらいの頃までもっと簡単にできた気がするような気が。)
この状態で route print
をすると先程とメトリック値が変わっているはずです。
が、、、
今回は(実家側のネットワークの都合で)、192.168.0.0/24
と 192.168.1.0/24
をVPNアダプタに流したいので新たにルートを追加します。
C:\WINDOWS\system32>route -p add 192.168.0.0 mask 255.255.255.0 192.168.1.1 metric 1 if 0x08
OK!
route add
コマンドでルートを追加します。(-p
オプションは再起動後も有効になるオプションです。)
キモなのは metric 1
と if 0x08
のところぐらいです。
前者はメトリック値を指定し、後者はインタフェースIDを指定します。
インタフェースIDは route print
した際の インターフェイス一覧
の一番左側に書いてある数値です。
最後に確認。 なんかメトリック値が変なことになってる…けど一応希望の動作はしてるので良しということで。
C:\WINDOWS\system32>route print
===========================================================================
インターフェイス一覧
7...** ** ** ** ** 8c ......A
8...** ** ** ** ** a0 ......VPN Client Adapter - VPN
4...** ** ** ** ** e8 ......B
2...** ** ** ** ** c5 ......Bluetooth Device (Personal Area Network)
1...........................Software Loopback Interface 1
5...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
===========================================================================
IPv4 ルート テーブル
===========================================================================
アクティブ ルート:
ネットワーク宛先 ネットマスク ゲートウェイ インターフェイス メトリック
0.0.0.0 0.0.0.0 192.168.2.1 192.168.2.36 3
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.82 4
127.0.0.0 255.0.0.0 リンク上 127.0.0.1 331
127.0.0.1 255.255.255.255 リンク上 127.0.0.1 331
127.255.255.255 255.255.255.255 リンク上 127.0.0.1 331
192.168.0.0 255.255.255.0 192.168.1.1 192.168.1.82 3
192.168.1.0 255.255.255.0 リンク上 192.168.1.82 258
192.168.1.82 255.255.255.255 リンク上 192.168.1.82 258
192.168.1.255 255.255.255.255 リンク上 192.168.1.82 258
192.168.2.0 255.255.255.0 リンク上 192.168.2.36 257
192.168.2.36 255.255.255.255 リンク上 192.168.2.36 257
192.168.2.255 255.255.255.255 リンク上 192.168.2.36 257
224.0.0.0 240.0.0.0 リンク上 127.0.0.1 331
224.0.0.0 240.0.0.0 リンク上 192.168.1.82 258
224.0.0.0 240.0.0.0 リンク上 192.168.2.36 257
255.255.255.255 255.255.255.255 リンク上 127.0.0.1 331
255.255.255.255 255.255.255.255 リンク上 192.168.1.82 258
255.255.255.255 255.255.255.255 リンク上 192.168.2.36 257
===========================================================================
固定ルート:
ネットワーク アドレス ネットマスク ゲートウェイ アドレス メトリック
192.168.0.0 255.255.255.0 192.168.1.1 1
===========================================================================
結果的にルーティングテーブル触ってるけど、VPN接続先にネットワークが複数ある場合のみルート追加するから実質メトリック値の変更だけで済む人が多いのでは とか思いました まる