DNSリークとは何か(初心者向けの最小モデル)
DNSリークとは、名前解決(例:サイト名をIPアドレスに変える処理)で発生する問い合わせが、意図した経路(たとえばVPNの経路)ではなく別の経路へ流れてしまう状態です。結果として、接続先ドメインの情報が外部に見えたり、期待したプライバシーが得られなかったりします。
ここで大事なのは、「VPN=常に完全に防げる」という発想ではなく、どの場面でDNS問い合わせがどこへ送られるかを“確認しながら”運用することです。DNSは暗号化される仕組みだけでなく、端末設定・ブラウザ/アプリの挙動・ネットワーク環境によって結果が変わるためです。
どう動くのか:確認に必要な前提(動作条件と制約)
DNSリークの有無は、少なくとも次の条件の組み合わせで変わり得ます。
- 端末側のDNS設定:OSや端末が利用するDNSサーバー(自動/手動、暗号化DNSの有無など)
- VPNの方式と設定:VPNクライアントが「DNSも含めてトンネル」できるか、DNS処理の扱い
- アプリ単位の挙動:ブラウザや特定アプリが独自にDNS解決する場合
- ネットワークの切替:Wi-Fi/モバイル、ルーター配下、会社や学校などのネットワーク
- 例外設定や保護機能:自動接続、キルスイッチ相当の機能、特定通信の除外
また、DNSリークは「常に出る/常に出ない」と断言しにくいことがあります。同じ設定でも、接続直後・回線切替直後・アプリの更新直後などで挙動が変わる場合があるからです。そのため、確認は一度だけで終えず、条件を揃えて“再確認”するのが実用的です。
設定と選択:確認リスト(何を見て何を決めるか)
以下は、初心者が迷いやすいポイントを「設定の観点」と「選択の観点」に分けた確認リストです。製品名に依存しない考え方としてまとめます。
- 端末のDNS設定を確認する
- OSのDNSが自動になっているか、手動指定になっているかを確認します。
- 可能なら、暗号化DNS(DoH/DoT等)の有無と利用モードも確認します。
- 「端末が別のDNSを使ってしまう」構成になっていないかを見ます。
- VPNクライアント側のDNS関連設定を確認する
- VPN側でDNS問い合わせをトンネルに含める設定の有無を確認します。
- DNSの割り当てや、DNSサーバーの指定方法(自動/手動)を確認します。
- アプリやOSが、VPN経路と別経路でDNS解決しないような設定になっているかを確認します。
- アプリ(ブラウザ)単位の例外を疑う
- ブラウザや特定アプリが独自DNS解決を行う場合、VPN側の意図とズレることがあります。
