DNSリークとは何か(初心者向けの最小モデル)

DNSリークとは、名前解決(例:サイト名をIPアドレスに変える処理)で発生する問い合わせが、意図した経路(たとえばVPNの経路)ではなく別の経路へ流れてしまう状態です。結果として、接続先ドメインの情報が外部に見えたり、期待したプライバシーが得られなかったりします。

ここで大事なのは、「VPN=常に完全に防げる」という発想ではなく、どの場面でDNS問い合わせがどこへ送られるかを“確認しながら”運用することです。DNSは暗号化される仕組みだけでなく、端末設定・ブラウザ/アプリの挙動・ネットワーク環境によって結果が変わるためです。

どう動くのか:確認に必要な前提(動作条件と制約)

DNSリークの有無は、少なくとも次の条件の組み合わせで変わり得ます。

  • 端末側のDNS設定:OSや端末が利用するDNSサーバー(自動/手動、暗号化DNSの有無など)
  • VPNの方式と設定:VPNクライアントが「DNSも含めてトンネル」できるか、DNS処理の扱い
  • アプリ単位の挙動:ブラウザや特定アプリが独自にDNS解決する場合
  • ネットワークの切替:Wi-Fi/モバイル、ルーター配下、会社や学校などのネットワーク
  • 例外設定や保護機能:自動接続、キルスイッチ相当の機能、特定通信の除外

また、DNSリークは「常に出る/常に出ない」と断言しにくいことがあります。同じ設定でも、接続直後・回線切替直後・アプリの更新直後などで挙動が変わる場合があるからです。そのため、確認は一度だけで終えず、条件を揃えて“再確認”するのが実用的です。

設定と選択:確認リスト(何を見て何を決めるか)

以下は、初心者が迷いやすいポイントを「設定の観点」と「選択の観点」に分けた確認リストです。製品名に依存しない考え方としてまとめます。

  1. 端末のDNS設定を確認する
  • OSのDNSが自動になっているか、手動指定になっているかを確認します。
  • 可能なら、暗号化DNS(DoH/DoT等)の有無と利用モードも確認します。
  • 「端末が別のDNSを使ってしまう」構成になっていないかを見ます。
  1. VPNクライアント側のDNS関連設定を確認する
  • VPN側でDNS問い合わせをトンネルに含める設定の有無を確認します。
  • DNSの割り当てや、DNSサーバーの指定方法(自動/手動)を確認します。
  • アプリやOSが、VPN経路と別経路でDNS解決しないような設定になっているかを確認します。
  1. アプリ(ブラウザ)単位の例外を疑う
  • ブラウザや特定アプリが独自DNS解決を行う場合、VPN側の意図とズレることがあります。