VPNは通信経路を保護するための有効な手段ですが、接続しただけで端末上の情報がすべて自動的に隠れるわけではありません。VPNトンネルの外側でDNS問い合わせが処理される「DNSリーク」や、ブラウザーのWebRTC機能によって接続候補のIPアドレスが表示される「WebRTC漏れ」が起こると、接続先のWebサイトからネットワーク環境を推測される可能性があります。
重要なのは、VPNクライアントに「接続中」と表示されているかだけで判断しないことです。通常のWebページ、DNS名前解決、WebRTCの通信、VPN切断時のアプリ挙動をそれぞれ確認する必要があります。本記事では、実際のチェックサイトを使った確認手順、ブラウザー設定、キルスイッチの役割、Windows・macOS・Android・iOSでの考え方を順番に説明します。サービスやブラウザーの仕様は変更される可能性があるため、最後は現在のアプリ設定と公式ドキュメントも確認してください。
DNSリークとWebRTC漏れの基本
DNSは、ドメイン名をIPアドレスへ変換する仕組みです。ブラウザーでWebサイトを開くとき、まずDNSサーバーへ名前解決を依頼し、その結果をもとに接続先へ通信します。VPNが正常に動作している場合、通常はDNS問い合わせもVPNトンネル側のDNS、またはVPNクライアントが指定した安全な経路を使います。
しかし、OSやブラウザーの設定がVPNと正しく連携していないと、Webページ本体の通信はVPN経由でも、DNSだけが自宅ルーター、携帯通信会社、会社や学校のネットワークに送られることがあります。これがDNSリークです。アクセスしたドメイン名そのものが第三者に見える可能性があるため、公開IPがVPNのものになっていても、名前解決の経路まで確認しなければ十分とはいえません。
WebRTCは、ブラウザーで音声通話、ビデオ会議、画面共有などを実現するための通信技術です。接続を成立させるため、ブラウザーがネットワークインターフェースや接続候補のアドレス情報を扱う場合があります。現在の主要ブラウザーはプライバシー保護を強化していますが、ブラウザーの種類、権限、拡張機能、VPN方式によって表示される情報は異なります。
2
確認する主な漏れ
3
確認する通信層
90+
VncVPNの対応国数
不限
同時利用デバイス
ここでいう確認する通信層とは、公開IP、DNS、WebRTCのことです。公開IPはWebサイトから見える出口、DNSはドメイン名を解決する経路、WebRTCはブラウザーが提示する接続候補を示します。三つの結果が完全に同じ地域や事業者になる必要はありませんが、VPN接続前の情報がそのまま表示されていないかを確認することが大切です。
チェックサイトでDNSリークを確認する方法
確認前に、VPNを切断した状態で現在のネットワークを一度調べ、その後VPNへ接続して同じチェックを行うと比較しやすくなります。VPN接続前の結果を記録すると、どのDNSサーバーや公開IPが通常の回線に属していたのかを判断できます。ただし、チェックサイトは広告、CDN、地域データベースを利用している場合があり、表示された国名だけで断定しないでください。
- VPNを切断し、ブラウザーのプライベートウィンドウを開きます。
dnsleaktest.com、browserleaks.com/dns、または同等のDNS検査ページを開きます。- 標準テスト、必要であれば拡張テストを実行し、表示されたDNSサーバーの事業者と地域を確認します。
- いったんブラウザーのタブを閉じ、VPNへ接続します。
- 同じブラウザーで再度テストし、VPN接続前のDNS情報が残っていないか比較します。
VPN接続後に表示されるDNSサーバーがVPN事業者の管理するもの、または設定したVPN出口と矛盾しない地域のものであれば、基本的な確認は通過しています。一方、接続前と同じ家庭用ルーター、通信会社、会社ネットワークのDNSが表示され続ける場合は、DNSリークの可能性があります。複数のチェックサイトで同じ結果になるかを確認すると、単一サイトのデータベース誤判定を避けられます。
DNSリークが見つかった場合は、まずVPNクライアントの「DNSリーク保護」「VPN経由のDNS」「安全なDNS」といった項目を確認します。OS側で手動設定したDNS、ブラウザーのセキュアDNS、ネットワーク管理ツールがVPNの設定を上書きしていることもあります。複数のVPNクライアントやプロキシを同時に起動している場合は、いったん一つだけにして再検査してください。
WebRTC漏れをブラウザーで確認する
WebRTCの確認には、browserleaks.com/webrtcなどの検査ページが利用できます。ページを開くと、公開IP、ローカルネットワーク候補、WebRTC接続候補などが表示されます。VPN接続後に、VPNの出口IPとは異なる通常回線の公開IPや、意図しないローカル情報が表示されていないかを確認してください。
ただし、ローカルIPが表示されたことだけで、直ちに重大な漏れと判断する必要はありません。現在のブラウザーはプライベートアドレスを mDNS 名などに置き換えることがあり、検査ページ側に見える情報もブラウザーごとに異なります。確認すべきなのは、VPN接続前に表示された公開IPが、接続後もWebRTC欄に残っていないかという点です。
- ✅ VPN接続前と接続後で、公開IPの表示を比較する
- ✅ WebRTC欄に通常回線のグローバルIPが残っていないか確認する
- ✅ 複数のブラウザーで結果が同じかを調べる
- ✅ 不明なWebRTC拡張機能やプロキシ拡張を一時停止して再検査する
- ❌ 検査ページに表示された国名だけで、すべての通信が安全だと判断しない
- ❌ 通話や会議でWebRTCが必要なのに、設定を無差別に無効化しない
FirefoxではWebRTC関連のプライバシー設定を比較的細かく調整できます。Chromium系ブラウザーでは、拡張機能や企業管理ポリシー、ブラウザーのプライバシー設定が挙動に影響します。設定を変更した後は、ブラウザーを完全に終了して再起動し、検査ページを再読み込みしてください。単にタブを閉じただけでは、既存の接続や権限状態が残る場合があります。
WebRTCを利用するビデオ会議、ブラウザー通話、オンライン授業などでは、漏れ対策と機能維持のバランスも必要です。普段はWebRTCを制限し、必要なサイトだけ一時的に許可する方法もあります。許可したサイトを使い終わったら、ブラウザーのサイト権限を見直し、検査ページで再確認すると安全です。
キルスイッチとDNS設定を見直す
キルスイッチは、VPN接続が切れたときに通信を停止し、通常回線へ意図せず切り替わることを防ぐ機能です。DNSリークを直接修復する機能ではありませんが、VPN切断中にアプリが通常回線から通信を続けるリスクを抑えられます。VPNクライアントによっては、常時有効なキルスイッチと、VPN接続が不安定なときだけ働く自動保護を別々に提供しています。
設定を確認するときは、キルスイッチを有効にした後、VPNを手動で切断してブラウザーのページ更新を試します。ページが開けなくなり、VPNへ再接続すると通信が戻るなら、基本的な遮断動作が働いています。ただし、すべてのアプリが同じように停止するとは限りません。VPNクライアントがシステム全体を制御しているのか、特定アプリだけを保護するのかを確認してください。
DNS設定では、OSの手動DNS、ルーターのDNS、ブラウザーのセキュアDNS、VPNクライアントのDNSが重複することがあります。これらをすべて別々に指定すると、どの設定が優先されるか分かりにくくなります。まずVPNクライアント側のDNS保護を有効にし、OSやブラウザーに追加した特殊なDNS設定を一時的に標準へ戻して検査するのが切り分けしやすい方法です。
| 症状 | 考えられる原因 | 最初に行う確認 |
|---|---|---|
| VPN接続後も通常回線のDNSが表示される | DNS保護が無効、またはOS設定が優先されている | VPNのDNSリーク保護とOSのDNS設定を確認する |
| VPN切断後もページが開く | キルスイッチが無効、または対象外アプリになっている | キルスイッチの範囲と除外設定を確認する |
| WebRTC欄に通常回線の公開IPが出る | ブラウザーのWebRTC挙動、拡張機能、プロキシ方式の影響 | 拡張機能を止め、別ブラウザーでも検査する |
| VPN接続後に一部のサイトだけ開けない | DNS、IPv6、MTU、分流ルールの不一致 | 全局接続と分流接続を切り替えて結果を比較する |
Windows・macOS・スマートフォンでの確認ポイント
Windowsでは、VPNクライアントが仮想ネットワークアダプターを作成し、DNSの優先順位やルーティングを変更します。ネットワークアダプターが複数残っている場合、古いクライアントや仮想マシンの設定が干渉することがあります。不要なVPN、プロキシ、仮想ネットワークソフトを停止し、再起動後にDNSとWebRTCを再検査してください。Windowsのシステムプロキシ設定と、ブラウザー独自のプロキシ設定が一致しているかも確認します。
macOSでは、ネットワークサービスの順序、手動DNS、iCloud関連のプライバシー機能、ブラウザーのセキュアDNSが結果に影響する場合があります。VPN接続中にWi-Fiから別のネットワークへ切り替えたときは、古いDNS情報が一時的に残ることもあるため、VPNを切断して再接続し、ブラウザーを再起動してから確認します。複数のネットワークサービスを常時有効にしている場合は、現在利用中の接続だけを基準に切り分けます。
Androidでは、VPNアプリの「常時接続VPN」と「VPNなしの接続をブロック」に相当する設定が重要です。端末メーカーによって表示名は異なりますが、VPNが切断された際に通常回線へ戻すかどうかをシステム設定から確認できます。プライベートDNSを別途指定している場合は、VPNのDNS保護と競合する可能性があるため、設定を一つずつ変更して検査してください。
iOSでは、VPNプロファイル、iCloudのプライベートリレー、Safariのサイト権限などが通信経路に関係します。WebRTCの挙動はアプリごとに異なり、Safariと別のブラウザーで結果が一致しない場合もあります。App Storeから入手したVPNアプリが提供する接続方式と、端末のVPN設定に表示されるプロファイルが一致しているかを確認し、不要な古いプロファイルは整理してください。
Windows、macOS、Android、iOS、Linuxでは設定名や制御範囲が異なります。サブスクリプションをClash Verge、sing-box、Shadowrocketなどの互換クライアントへ取り込む場合、VPNサービス側の保護機能ではなく、実際に動作しているクライアントのDNS、IPv6、ルール、キルスイッチ設定が結果を決めます。インポートできたことと、漏れなくルーティングされていることは別の状態です。
再現性のある検査手順と安全な運用
一度だけ検査して問題がなかったとしても、ネットワークを変更した後、VPNアプリを更新した後、ブラウザー拡張機能を追加した後には再確認する価値があります。自宅Wi-Fi、モバイル通信、公共Wi-FiではDNSやIPv6の提供状況が変わるため、同じ端末でも結果が一致しないことがあります。
- VPNを切断し、公開IPとDNSの結果を保存します。
- ブラウザーを閉じ、不要なプロキシやVPNアプリを停止します。
- 一つのVPNクライアントだけを起動し、キルスイッチとDNS保護を有効にします。
- VPNへ接続し、IP、DNS、WebRTCを同じ順番で検査します。
- VPNを切断してページ更新を試し、通信遮断が働くか確認します。
- VPNへ再接続し、最初の結果と大きく変わっていないか確認します。
検査結果を記録するときは、日時、利用ネットワーク、VPNクライアント、接続方式、DNSサーバー名、表示された公開IPだけを控えれば十分です。アカウント情報や個人の閲覧履歴まで検査サイトへ入力する必要はありません。検査ページの広告や偽の警告に従って、未知のアプリや証明書をインストールしないでください。
よくある質問
DNSリークが一度見つかったら、VPNをすぐ解約すべきですか。
まず、同じ結果が複数の検査サイトで再現するか確認してください。DNS保護の設定、手動DNS、ブラウザーのセキュアDNS、複数のVPNアプリを一つずつ見直し、再接続後に改善するかを調べます。それでも通常回線のDNSが継続して表示され、クライアント側で制御できない場合は、別の接続方式や別クライアントを検討する材料になります。
WebRTCを完全に無効化すれば安全ですか。
WebRTCを完全に無効化すると、ブラウザー通話やビデオ会議などが使えなくなる場合があります。必要なサービスがあるなら、まずブラウザーを最新状態にし、不要な拡張機能を削除し、サイトごとの権限を見直してください。その後、WebRTC検査で通常回線の公開IPが表示されないか確認する方法が現実的です。
DNSを手動で有名な公開DNSへ変更すれば解決しますか。
手動DNSへの変更だけでは、VPNトンネル外へ問い合わせが送られる問題を解決できない場合があります。重要なのはDNSサーバーの知名度ではなく、VPN接続中に問い合わせがどのインターフェースから送信されるかです。VPNクライアントのDNS保護とキルスイッチを先に確認してください。
チェックサイトで国が違って表示されます。これは漏れですか。
IPやDNSの登録情報はデータベースによって異なるため、国名の差だけで漏れとは断定できません。VPN接続前の公開IPやDNSが接続後にも表示されているか、通常回線の事業者名が残っているかを確認します。異なる検査サイトと別ブラウザーで同じ傾向を調べると、登録情報の差と実際の漏れを分けやすくなります。