定義:キルスイッチが狙うもの
キルスイッチ(kill switch)は、VPN接続などで保護された通信経路が何らかの理由で利用できなくなったときに、利用者の意図しない通信がそのまま流れないようにするための制御です。目的は「常に匿名」や「脅威が消えること」を保証することではなく、経路が途切れた瞬間の“漏れ”を減らすことにあります。
たとえば、VPNクライアントが切断されたのに通常のネットワーク経路(端末の回線経路)へ自動的に通信が戻ってしまうと、保護されない通信が発生することがあります。キルスイッチは、この切り替えによる意図しない通信を止める方向で動作します。
仕組み:何が起きたときに遮断するのか
キルスイッチの中心は「状態の検知」と「遮断」の2段階です。
- 状態の検知:VPNなどの接続が確立しているか、または維持できているかを監視します。切断、再接続の遷移、通信経路の消失などを“遮断が必要な状態”として扱うことが一般的です。
- 遮断:検知した結果に応じて、端末からの通信を一定の範囲でブロックします。実装は方式ごとに異なりますが、考え方としては「保護経路が使えない間は、少なくとも外向き通信の主要部分を止める」です。
ここで重要なのは、キルスイッチが“どの通信を対象にするか”は必ずしも同一ではない点です。設定項目(アプリ単位、通信種別、DNSの扱いなど)や実装によって、遮断される範囲とされない範囲が変わります。そのため「有効化すれば必ず完全に止まる」とは断言できません。
関連概念:VPN自動接続やDNSの扱い
キルスイッチは単独で語られがちですが、関連する挙動が“漏れ”の原因になり得ます。
- VPNの自動再接続:切断後にすぐ戻る設計では、遮断と再開のタイミングが結果に影響します。再接続までの短い間に通信が出るかどうかは、実装と監視周期の影響を受けます。
- DNS解決:名前解決(DNS)がどの経路で行われるかは、意図しない通信の観測点になります。キルスイッチは「通信全般」を止めるだけでなく、DNSの流れも含めて期待通りか確認が必要です。
- ローカル通信:同一ネットワーク内の通信や特定のローカルサービスは、VPNの外側で動くことがあります。結果として、キルスイッチが想定通りに“外向きだけ”ではなく“全て”を止める設計とは限りません。
できること/できないこと:制限を先に理解する
キルスイッチで期待できるのは主に「接続断時の漏れを減らす」ことです。一方で、次のような制限が起こり得ます。
- 対象範囲の違い:遮断が“全部”ではなく“特定の通信”や“設定した経路”だけの場合があります。 - 例外設定:特定アプリの除外、特定通信の許可、ローカル例外などがあると、その部分は遮断されません。 - タイミング要因:切断検知から遮断まで、再接続まで、短い遷移時間で挙動が変わる可能性があります。
