定義:スプリットトンネリングとは
スプリットトンネリングは、端末から出る通信のうち一部だけをVPNトンネル(暗号化された通信路)経由にし、残りはVPNを通さずに通常の回線経路で送る考え方です。目的は、VPNの対象範囲を必要な分だけに絞り、帯域消費や遅延、アクセスの挙動をコントロールしやすくすることにあります。
ここで重要なのは、「VPNに“全通信を流す”かどうか」ではなく、「どの通信を“VPN経由にするか/しないか”をルールで決める」点です。そのため、設定は“対象条件(宛先、アプリ、ポートなど)”と“優先順位(例外が勝つか)”が中心になります。
仕組み:通信が分岐して処理される流れ
一般的なスプリットトンネリングの考え方は、次の要素で構成されます。
- 判定:通信が発生したとき、宛先(ドメインやIP)、アプリ、ポートなどの条件に照らして「VPNへ送るべきか」を判断します。
- ルーティング(経路選択):VPNへ送ると判断された通信はトンネル側の経路に割り当てられ、そうでない通信は通常経路のまま送られます。
- DNSの扱い:名前解決(DNS)をどこで行うかで、結果として“どの宛先に向かうか”が変わり、VPN側/直通側の振り分けに影響します。
つまり、実際には「VPN設定」だけでなく、名前解決と経路選択の整合が動作の成否を左右します。さらに、アプリ単位のルールと宛先単位のルールがある場合、どちらが優先されるかも重要です。
設定の考え方:正しい設定方法のチェックポイント
「正しい設定方法」は環境やクライアントによって項目名が違いますが、確認すべき観点は共通しています。次の順で整理すると迷いにくくなります。
- VPN経由にしたい“対象”を具体化する
- ドメイン名ベースか、IPベースか
- アプリ(実行中のソフト)ごとに振り分けるのか
- ポートやプロトコル(例:Web、メール、独自アプリ通信)に条件を持たせるのか
- 例外ルール(除外)を先に決める
- 「特定の宛先だけ直通にする」「特定のアプリだけVPNにしない」など、例外があるなら優先順位を理解します。
- 例外が意図通りに勝たない場合、想定外の通信がVPN側に回ったり、逆に意図した通信が直通になったりします。
- DNSの挙動を確認する
- 名前解決がVPN側で行われるか、ローカルのままか
- DNSキャッシュや解決結果の保持によって、切り替え直後に挙動が変わらないことがないか
- 複数の経路・設定の競合を避ける
- ルールが複数ある場合は、どのルール体系(宛先ベース/アプリベース)が最終的に支配するか
- 同一の通信が複数条件に当てはまるときの処理順
- “意図した通信”で実検証する
- 設定の確認は机上ではなく、実際に問題のあるアプリや宛先を使って観察します。
制限・注意点:よくあるズレのパターン
スプリットトンネリングは便利ですが、設計の前提が崩れると想定と違う挙動になります。特に注意したいのは次の点です。
