VPNアプリに「接続済み」と表示されていても、すべての名前解決や通信がVPNトンネルを通っているとは限りません。DNSリークが起きると、ウェブサイトのドメイン名を問い合わせる通信だけが、契約しているインターネット接続事業者や別のDNSサーバーへ送られることがあります。接続先のIPアドレスを隠せていても、アクセスしたサービスの傾向を推測される余地が残るため、VPNの確認ではIPアドレスだけでなくDNS、IPv6、WebRTCも分けて調べる必要があります。
ただし、検査サイトに表示された情報を見て、すぐに「VPNが壊れている」と判断するのは適切ではありません。VPN接続前の基準結果を保存し、接続後にどのDNS事業者やIPアドレスが表示されるかを比較し、利用中の端末とブラウザの設定まで確認することが大切です。本記事では、無料の検査サイトを使った確認方法、原因の切り分け、Windows・macOS・Android・iOS・Linuxや互換クライアントで見直したい項目を順番に説明します。
DNSリークが起きる仕組みを理解する
DNSは、example.comのようなドメイン名を、接続先のIPアドレスへ変換する仕組みです。通常のウェブ閲覧では、ブラウザが直接すべてを解決するのではなく、OSやルーターが設定したDNSリゾルバーへ問い合わせます。VPNを使う場合は、VPNクライアントが指定するDNS、VPN事業者のDNS、またはトンネル内へ送られる安全なDNSを利用する構成が一般的です。
一方、OSのDNS設定が優先されたり、ルーターのDNSが残ったり、VPNクライアントのルーティングが不完全だったりすると、名前解決だけが通常のネットワークへ出てしまいます。これがDNSリークです。ウェブページの本文がVPNを通っていても、DNS問い合わせの経路が別になっていれば、プライバシー上の確認事項が残ります。
DNS
ドメイン名の問い合わせ経路
IPv6
別経路になりやすい通信
WebRTC
ブラウザ内の接続経路
VPN
暗号化トンネル全体の状態
DNSリークとIPリークは同じ問題ではありません。IPリークは、接続先に本来のグローバルIPアドレスが見えてしまう問題です。DNSリークは、ドメイン名の問い合わせ先や問い合わせ内容がVPN外へ出る問題です。また、WebRTCはブラウザが音声・映像通信の候補経路を調べるための技術で、ブラウザやOS、ネットワーク構成によって見える情報が変わります。三つを別々に確認すると、原因を誤認しにくくなります。
接続前後の結果を比較する
最初にVPNを切断し、現在のネットワークで検査サイトを開いて結果を記録します。次に同じ端末、同じブラウザ、同じネットワークでVPNへ接続し、ページを再読み込みして比較します。検査の前にブラウザのプライベートDNS設定や拡張機能を変更すると、VPNそのものの結果とブラウザの結果が混ざるため、初回は普段の設定のまま確認してください。
検査サイトでは、現在のIPアドレス、DNSサーバーの事業者名や地域、IPv6アドレス、WebRTCで検出された候補が表示されます。VPN接続後に、VPNの出口地域と異なる自宅回線の事業者名がDNS欄に残っている場合は、DNSリークの可能性があります。ただし、DNS事業者名だけで断定せず、VPN接続前にも同じDNSが表示されていたか、クライアントが独自のDNSを使う仕様か、ブラウザがHTTPS DNSを別に使っていないかを確認しましょう。
| 確認項目 | 接続前に記録する内容 | 接続後に見るポイント | 異常時の候補 |
|---|---|---|---|
| グローバルIP | 表示されたIPと地域、事業者 | VPN出口の情報へ変化するか | VPN外の経路、除外ルール、接続失敗 |
| DNS | DNSサーバーの事業者や地域 | 通常回線のDNSが残っていないか | OS設定、ルーター設定、クライアントの実装 |
| IPv6 | IPv6アドレスの有無 | VPN接続後も通常回線のIPv6が見えていないか | IPv6トンネル未対応、IPv6の除外設定 |
| WebRTC | ブラウザが検出する候補 | ローカル情報や通常回線の候補が露出していないか | ブラウザ仕様、権限、WebRTC設定 |
検査結果はスクリーンショットやテキストで残しておくと、設定変更後の比較に役立ちます。無料の検査サイトを使う場合も、検査ページ以外の広告やダウンロード案内を不用意に操作しないでください。検査サイトは「その瞬間にブラウザから見える情報」を示すものであり、すべてのアプリの通信や、将来の接続状態まで保証するものではありません。
DNSリークを切り分けて修正する手順
原因を一度に複数変更すると、どの設定が効果を持ったのか分からなくなります。以下の順序で一項目ずつ変更し、変更後はVPNを切断・再接続してから同じ検査を実施してください。端末の管理者権限やネットワーク設定を変更する場合は、現在の設定を先に記録しておくと元に戻しやすくなります。
- VPNクライアントを更新する。公式クライアントや互換クライアントの古いバージョンでは、OSのDNS仕様やIPv6処理に対応できない場合があります。配布元が明確なアプリを使い、不要な複数クライアントは終了します。
- DNS保護やDNSリーク防止の設定を確認する。クライアントに「DNS保護」「VPN経由のDNS」「接続中のみDNSを許可」といった項目がある場合、説明を読んで有効化します。名称や動作はアプリごとに異なるため、設定を有効にしただけで検査結果を確認せず終わらせないことが重要です。
- 分割トンネルと除外ルールを見直す。一部アプリやローカルネットワークをVPNから除外する設定は便利ですが、DNSサービスまで除外される構成ではリークにつながります。問題の切り分け中は、不要な除外を一時的に解除します。
- IPv6の扱いを確認する。VPNがIPv4だけをトンネルし、IPv6を通常回線へ流す構成では、IPv6検査で自宅回線の情報が表示されることがあります。VPNクライアントがIPv6に対応しているか確認し、対応しない場合はOSやルーターのIPv6設定を変更する前に、通信への影響と復元方法を確認します。
- ブラウザの安全なDNS設定を確認する。ブラウザ独自のDNS over HTTPSを有効にすると、OSやVPNクライアントが想定するDNS経路とは別のサービスが使われることがあります。VPN側のDNS保護と目的が重なる場合は、どちらを管理主体にするか決めてから設定します。
- 再接続して同じ検査を行う。設定変更後にブラウザのタブを再読み込みし、DNS、IP、IPv6、WebRTCを再確認します。結果が変わらない場合は、別のブラウザや別のネットワークで同じ検査を行い、端末固有の問題か回線固有の問題かを分けます。
WindowsやmacOSでは、VPN接続後にOSがどのDNSを選択しているかをネットワーク設定で確認できます。AndroidやiOSでは、システムのプライベートDNS、構成プロファイル、VPNアプリの常時接続設定が影響することがあります。Linuxでは、NetworkManager、systemd-resolved、使用しているデスクトップ環境がDNSを管理している場合があり、ターミナル上の設定とGUIの表示が一致しないこともあります。
Clash Verge、sing-box、Shadowrocketなどの互換クライアントでは、DNSモード、fake-ipまたはredir-host、tunモード、ルールによる分流、IPv6の扱いが結果を左右します。購読リンクをインポートしただけでは、端末全体のDNS経路が意図どおりになるとは限りません。設定を変更する際は、クライアントの公式ドキュメントとプロファイルの説明を確認し、分からない項目を無制限に書き換えないようにしてください。
- ✅ VPN接続前と接続後で、同じ検査項目を比較する
- ✅ DNS、IPv6、WebRTCをそれぞれ別の問題として確認する
- ✅ 分割トンネルや除外ルールを一時的に見直す
- ✅ 設定変更前に現在のネットワーク設定を保存する
- ❌ 検査サイトに表示されたDNS名だけで即座にリークと断定しない
- ❌ 複数のVPNクライアントを同時に起動しない
WebRTCとブラウザ設定を確認する
WebRTCは、ブラウザで音声通話やビデオ会議などを実現するための仕組みです。接続相手との通信経路を確立するため、ブラウザはネットワークインターフェースや候補アドレスを調べることがあります。VPN接続中でも、ブラウザの実装や権限、WebRTCの設定によって検査サイトに別の候補が表示される場合があります。
まず、WebRTC検査で表示された項目が、公開IPなのかローカルネットワークのアドレスなのか、VPN出口の情報なのかを区別します。ローカルアドレスの表示は、そのままインターネット上の相手に公開される情報とは限りません。一方、通常回線の公開IPが候補として表示される場合は、ブラウザのWebRTC制御、VPNクライアントのトンネル方式、ブラウザ拡張機能を調べる必要があります。
WebRTCを完全に無効にすると、一部の会議サービスやブラウザ通話が動作しなくなる可能性があります。プライバシーと機能のどちらを優先するかを決め、必要なサイトだけ権限を許可する方法も検討できます。見覚えのない拡張機能は停止し、検査は拡張機能を無効にしたプロファイルでも実施すると、ブラウザ本体と拡張機能の影響を分離できます。
結果が改善しない場合の考え方
DNSリーク対策を有効にしても結果が変わらない場合、まずVPNが本当に接続されているかを確認します。アプリの画面だけでなく、IP検査、VPNアイコン、ルーティング状態を組み合わせて確認してください。接続が不安定で短時間に再接続していると、検査の瞬間だけ通常回線が使われることもあります。
次に、ルーター、OS、ブラウザ、VPNクライアントのどこがDNSを管理しているかを整理します。企業や学校のネットワークでは、管理ポリシーによってDNSやVPNの設定が固定されていることがあります。公共Wi-Fiでは、ログインページや認証処理のために特殊な名前解決が行われる場合もあります。別のネットワークで問題が消えるなら、VPNサービスだけでなく、元のネットワークの構成も確認対象です。
通信を保護する方式も確認しましょう。WireGuard、OpenVPN、IKEv2などはVPNトンネルを作る方式ですが、DNS処理、IPv6、分割トンネルの実装はクライアントごとに異なります。Shadowsocks、VMess、Trojan、Hysteria2などのプロキシ系方式も、端末全体をトンネルする設定と、特定アプリやブラウザだけを通す設定では結果が変わります。方式名だけで安全性を決めず、実際のルーティングと検査結果を確認してください。
よくある質問
VPN接続中なのに通常のDNSが表示されるのはなぜですか?
OSやルーターのDNSが優先されている、VPNクライアントのDNS保護が無効になっている、分割トンネルでDNS通信が除外されているなどの原因が考えられます。接続前の結果と比較し、VPNクライアントのDNS設定、OSのDNS設定、ブラウザ独自の安全なDNSを順番に確認してください。
IPv6を無効にすれば必ず解決しますか?
IPv6がVPN外へ流れている場合には回避策になることがありますが、必ずしも最善の方法ではありません。IPv6に対応したVPNクライアントを使えるなら、まず対応状況とトンネル設定を確認します。OSやルーターのIPv6を変更すると、通常の通信や家庭内機器に影響する可能性があるため、復元方法を確認してから実施してください。
WebRTCの検査結果が違えばVPNは失敗ですか?
WebRTCの表示はブラウザの仕様や権限、ローカルアドレスの扱いにも左右されます。表示されたアドレスが公開IPなのか、ローカル候補なのかを区別し、拡張機能を無効にした状態や別ブラウザでも比較してください。VPNのIP検査、DNS検査、WebRTC検査を総合して判断するのが適切です。
どのくらいの頻度で確認すべきですか?
VPNクライアント、OS、ブラウザ、ルーター、購読プロファイルを更新した後や、ネットワーク環境を変更した後に再確認するとよいでしょう。常に同じ結果になるとは限らないため、重要な作業の前には接続状態を確認し、検査結果だけでなく、利用している設定と除外ルールも記録しておくと原因を追いやすくなります。
VPNのプライバシー確認は、一度検査して終わる作業ではありません。接続前後の基準を保存し、DNS、IP、IPv6、WebRTCを分けて確認し、設定変更後に再検査するという手順を習慣化することが重要です。初期設定やクライアントの選び方に迷う場合は、使い方を確認し、検査結果をもとに自分の端末とネットワークに合った構成を整えてください。