用語集 · ネットワークとプロキシ
WebRTCリーク
WebRTCが、サイトが通常認識しているプロキシまたはVPNのアドレスとは異なるIPアドレスを明らかにする場合。
定義
WebRTCリークは、ブラウザのリアルタイム通信スタックが、ユーザーがプロキシやVPNの背後に隠れていることを期待していたIPアドレス(実際のパブリックIPやローカルネットワークアドレスなど)を露出させたときに発生します。WebRTCは、ピアツーピアの音声、ビデオ、またはデータ接続をセットアップするために、ネットワーク候補(ICE候補)を収集します。
仕組み
- 接続パスを見つけるために、WebRTCはローカルインターフェースとSTUN/TURNサーバーからICE候補を収集します。各候補にはアドレスが含まれています。
- HTTPプロキシはHTTPトラフィックのみを転送します。WebRTCメディアは通常UDPを使用しますが、これはHTTPプロキシやほとんどのSOCKSプロキシでは転送されないため、異なるルートを通ることがあります。
- RFC 8828 は、「すべてのドレスを列挙する」(最も情報が開示される)から「プロキシを強制する」(WebRTC トラフィックはプロキシを経由しなければならず、さもなければ UDP が無効になる)までの、4 つの IP ハンドリングモードを定義しています。
なぜ重要なのか
- HTTP トラフィックでプロキシ IP を検出し、WebRTC 候補で異なる IP を検出するサイトは、その両方を把握することになり、プライバシーを損なわせ、明らかな不一致を生じさせます。
- ブラウザやアンチディテクトツールは、こうした理由から WebRTC の設定(無効化、置換、またはプロキシとの一致)を提供しています。
制限とよくある誤解
- 「どんな VPN やプロキシでも解決できる」というわけではありません。リークが発生するかどうかは、ブラウザの WebRTC IP ハンドリングモードと、プロキシや VPN がどのようにトラフィックをルーティングするかによって決まります。
- 「WebRTC を無効化するのが唯一の解決策だ」という意見もあります。RFC 8828 は、収集されるアドレスをデフォルトルートに制限したり、トラフィックをプロキシ経由に強制したりするモードも許可していますが、その代償として通話品質や接続性が低下する可能性があります。
例: ブラウザプロファイルがドイツの HTTP プロキシを使用している場合を想定します。テストページは HTTP 経由でドイツの IP を検出しますが、WebRTC 候補として別の国のユーザーの実際の ISP アドレスを受け取ります。
いかなるブラウザやプロキシも、アカウントが制限されないことを保証することはできません。各プラットフォームのルールに従ってください。
関連用語
- レジデンシャルプロキシ — 出口IPがデータセンターではなく、消費者向けのインターネット接続に属するプロキシ。
- スティッキーセッション(プロキシ) — 一定期間、連続するリクエストに対して同じ出口IPを維持するプロキシ設定。
- タイムゾーンとジオロケーションの不一致 — 接続のIPアドレスによって示唆される場所が、ブラウザのタイムゾーンや報告された座標と一致しない場合。
- ブラウザ・フィンガープリント — クッキーなしでブラウザを特定できる、ブラウザとデバイスの特性の組み合わせ。
ソース
- MDN: WebRTC API (ブラウザドキュメント)
- MDN: RTCIceCandidate (ブラウザドキュメント)
- IETF RFC 8828: WebRTC IP Address Handling Requirements (標準)
確認済み 2026-11-07。