WebRTCリークテスト

VPNがウェブサイトからIPを隠していても、ブラウザはWebRTC経由で本当のIPを晒すことがあります。このテストはあなたのブラウザで起きていないかを確認します——すべてブラウザ内で完結し、データはどこにも送信されません。

WebRTCを調査中…

WebRTCリークとは?

WebRTCはピアツーピアの音声・映像・データ通信のためのブラウザ機能で、Google MeetやDiscordをはじめ多くのウェブアプリが使っています。P2P接続を確立するため、ブラウザはSTUNサーバーを使って自分のIPアドレス(ローカルアドレスやNAT内のアドレスを含む)を発見します。ウェブサイトはこの発見処理をブラウザにこっそり実行させ、得られたIPをJavaScriptで読み取れます——VPNを完全に迂回して。

テストの仕組み

ブラウザがダミーのRTCPeerConnectionを作成し、createOfferを呼び出して、得られたICE候補を読み取ります。ICE候補にはブラウザが見つけられるすべてのIPが含まれます——VPNが他のすべてのトラフィックをトンネルしていても、本当のIPも含めて。テストはローカルで実行され、当社のサーバーには何も送信されません。

WebRTCリークの直し方

選択肢は3つ:(1)WebRTCリークを積極的にブロックするVPNを使う(DopplerのiOS・Androidアプリはトンネル外のWebRTCを無効化)。(2)WebRTCを無効化するブラウザ拡張機能を入れる(uBlock Originにその設定があります)。(3)Firefoxならabout:configでmedia.peerconnection.enabledをfalseに。WebRTCを無効化するとブラウザでのビデオ通話は使えなくなるので、代わりにネイティブアプリを使ってください。

FAQ

WebRTCとは?+

WebRTCはすべての現代的なブラウザに組み込まれたW3C標準で、リアルタイムの音声・映像・データのピアツーピア通信を実現します。Google Meet、Discordウェブ版、Zoomウェブクライアント、そして大半のブラウザベースのビデオチャットを支えています。P2P通話を可能にするのと同じAPIが、JavaScriptにローカルネットワークアドレスの発見も許してしまいます。

なぜWebRTCはVPN経由でも本当のIPを漏らすのですか?+

WebRTCスタックはアプリケーション層の下で動作し、STUNを通じてネットワークインターフェースを直接照会するためです。VPNはIP層でトラフィックをトンネルしますが、WebRTCのアドレス発見の呼び出しはブロックしません。漏れたアドレスは暗号化トンネルの中を通りますが、その後ブラウザがページ上のJavaScriptに渡してしまい、どこへでも送信できてしまいます。

影響を受けるブラウザは?+

デフォルト設定ではすべてです:Chrome、Edge、Firefox、Safari、Brave、Opera、Arc。BraveにはWebRTCのIPリーク対策設定がありますが、デフォルトでは無効です。Firefoxはabout:configで完全に無効化できます。iOSのSafariはiOS 14以降部分的に緩和されていますが、完全には塞がれていません。

Doppler VPNはWebRTCリークをブロックしますか?+

はい。iOS・Androidクライアントはローカルキルスイッチを実行し、トンネル外のすべてのUDPトラフィックをブロックするため、STUNの発見が外部サーバーに到達しません。デスクトップでは、完全なカバーのためにVPNとuBlock OriginのWebRTC設定またはブラウザレベルの無効化の併用をお勧めします。

WebRTCを無効化するとサイトが壊れますか?+

ブラウザでのビデオ通話(Meet、Zoomウェブ版、Discordウェブ版)と一部のコラボレーションツールは使えなくなります。通常のブラウジング、ストリーミング、ピアツーピア接続を必要としないものには影響しません。これらサービスのネイティブアプリはWebRTCに依存していません。

このテストはプライベートですか?+

はい。テストは標準のRTCPeerConnection APIを使ってすべてブラウザ内で実行されます。IPも結果もメタデータもデバイスから出ません。テストを実行したことすら記録しません。