現場メモ · DNS LEAK
DNS の問いに
答える者を見る。
VPN トンネルは本来、あなたの居場所を隠すためのものです。DNS クエリがいまも地元 ISP に流れているなら、トンネルは漏れています。DNS Leak Test は、Mac がいま使っているすべてのリゾルバと、その背後の国と ISP を表示します。漏れは目に見えるかたちで現れます。
複数国にまたがるリゾルバは漏えいとしてハイライトされます。
DNS リークとは
ウェブページを開くと、二つのことが起きます。DNS ルックアップでホスト名が IP に変換され、実際の通信は TCP で流れます。VPN は通常、その両方をトンネル経由にします。「リーク」とは、TCP は VPN を通っているのに、DNS だけが自宅 ISP に直行してしまう状態のこと。あなたが訪れたサイトの一覧が、その ISP を見ている誰にでも見えてしまいます。最初から正しく扱う VPN もありますが、そうでないものも多くあります。
画面で見えるもの
アクティブなリゾルバごとに 1 行。列は リゾルバ IP、国旗、ISP / ネットワーク事業者、そして プロトコルバッジ(Mac がネゴシエートした内容に応じて Do53、DoH、DoT)。Mac が いま問い合わせ中のリゾルバが上、キャッシュは下に並びます。
複数国にまたがる漏えいは分かりやすい赤信号
リスト内のリゾルバ二つが別の国にあれば、Mac は DNS トラフィックを分割しています。よくあるパターンは 国 A の VPN リゾルバ + 国 B のローカル ISP リゾルバ。ローカル側が漏れの正体です。DNS Leak Test はその行に leak バッジを付けるので、見落としようがありません。
リークの止め方
確実さの順に三つ:
- DNS をトンネルに強制する VPN クライアントを使う。最近の WireGuard や Tailscale の設定なら大抵できます。「DNS」または「Force tunnel DNS」のトグルを確認してください。
- 「システム設定 → Wi-Fi → 詳細 → DNS」でシステム全体の DNS を設定する。プライバシーを尊重するリゾルバを選びます(1.1.1.1、9.9.9.9、または VPN 事業者のもの)。ISP のリゾルバを舞台から外します。
- Safari で DNS-over-HTTPS を有効化するか、Cloudflare WARP を使う。システム全体ではなくアプリ単位の対処ですが、ブラウジングだけ気にするなら一番手っ取り早い手です。
ISP Report と組み合わせる
ISP Report は、トラフィックが誰のネットワークから出ていくかを教えます。DNS Leak Test は DNS が誰のネットワークを通っているかを教えます。この二つが別の ISP なら、漏れています。何かが噛み合わないときは、両方を並べて開いてください。
アプリでの場所
メニューバーのアイコンをクリックし、popover の下部にある Insights までスクロール。DNS Leak Test は中段にあります。ネットワークが変わるとリストは更新されます。Refresh を押せば再テストを強制できます。
TL;DR
DNS をトンネルしない VPN は、あなたが訪れたサイトの一覧をそのまま外に漏らします。DNS Leak Test は Mac が使うすべてのリゾルバを表示し、複数国にまたがる漏えいを印で示し、VPN が本当に対価分の仕事をしているかを教えます。