私はwebRTCリークに関する質問を読み、もう一度読んで、これがどのように機能するか、また、いわゆる「VPNトンネル」からIPアドレスがリークする理由について十分に理解しています。
ただし、これらすべてのケースで、「VPNトンネル」は実際には、ソフトウェアまたはアプリケーションレイヤーのプラグインまたはアプリであり、同じレイヤー、またはブラウザーのすぐ下で機能します。残念ですが、webRTCを介して、その構成からIPアドレスがリークする方法と理由を理解しています。
しかし、私はプロトコルにとらわれない完全なVPNである「sshuttle」と呼ばれるトランスポート層VPNを使用しています。 pfctlでbridge0インターフェースを作成し、それを介してすべてのトラフィックを送信します。
この構成では、ローカルホストに10.0.0.10以外のIPがなく、すべてのトラフィックがトランスポート層VPNを介して実行されるように構成されています。
それでも... googleとbrowserleaksの両方が私の本当のIPを知っています。私のローカルシステムでさえ私の本当のIPを知りませんが、どういうわけか彼らは知っています。
私のVPNソフトウェアに欠陥があるか、バグが多いか、漏れていると結論付けるのは正しいですか?適切なリークのないトランスポートレイヤーVPN できてはいけないが知らないIPに関する情報をリークするため、これが私が知る唯一の結論です。
それとも私は間違っていますか?webRTCは思ったよりもさらに多くの魔法を使うことができますか?
ありがとうございました。
WebRTCリークとIPリークまたはDNSリークは2つの異なる用語であり、1つを互いに関連付けるべきではありません。
DNSリークが発生する理由
VPNを使用していて、IPが漏洩している場合は、DNSリクエストがalso VPNプロバイダー以外のISPに転送されていることを意味します。 DHCPサーバーは、高速応答のために独自のDNSサーバーを選択します。これにより、DNSリークが発生します。 VPNの使用中にIPがリークしているかどうかをテストできます dns leak
WebRTCリークの場合、サーバーとブラウザは内部IPアドレスを知るようになりますNATしかし、すべてのWebサーバーがそれを実行できるわけではありません。
仕組み
今日、ブラウザはWebRTCで実装されています。 WebRTCはSTUNサーバーによって生成されるSTUNリクエストを受け入れます。このリクエストは、背後にあるNATのタイプとパブリックIPアドレスを検出します。WebRTCはこのリクエストを受け入れ、 NAT=タイプとパブリックIPとプライベートIPの両方を返すSTUNサーバーに応答を送信します。STUNサーバーは2つのIPアドレスを使用します。
すべてのWebサーバーが内部IPを検出できるわけではないと書きました。 STUNサーバーはVoIPに関連する問題のトラブルシューティング用に設計されており、NATおよびNATがSIP&SDPで問題を作成する方法です。
VPNを使用している間、DNSリークを防ぐことはできますが、webRTCリークを防ぐことはできません。内部IPを知るには こちら にアクセスしてください。 wiresharkでこのサイトのトラフィックを分析すると、STUNリクエストを生成していることがわかります。
DNSリークを防ぐ方法
dnsleaktest.comは外部DNSをブロックするユーティリティを提供します。私もこのツールを使用しています。コマンドプロンプトでipconfig/flushdnsを使用してDNSキャッシュをフラッシュするか、静的DNSアドレスをGoogleまたはopenDNSに設定することもできます。
ただし、DNSリークを防ぐことは、webRTCリークから自分を防ぐことを意味するわけではありません。 VPNはSTUNリクエストをブロックしませんこれは、STUNサーバーからのインターネットトラフィックにすぎないためです。
STUNリクエストは通常のXMLHttpRequestプロシージャの外で行われるため、開発者コンソールに表示されないか、AdBlockPlusやGhosteryなどのプラグインによってブロックされる可能性があります
WebRTCリークを防ぐ方法
google chrome 2つのブラウザプラグインWebRTC Leak PreventおよびWebRTC Network Limiterがあります。STUNリクエストを正常にブロックし、失敗した場合に備えて、両方を使用していますが、STUN要求をブロックすることにより、NATの背後にいるとき、ブラウザーがVoIPセッションを確立できなくなります。
Mozilla Firefoxユーザーは、検索バーに「about:config」と入力し、「media.peerconnection.enabled」オプションを参照してFALSEに設定することで、Firefoxの設定でデフォルトのWebRTC機能を直接オフにすることができます。
WebRTCリークは、VPNの安全性やVPNが使用する強力な暗号化とは関係ありません。この脆弱性は、WebRTC自体であるブラウザにあります。あなたのVPNはあなたが要求したあらゆるトラフィックを受け入れるだけです。厳密に言って、VPNはwebRTCリークを防止しませんそれはすべてあなたのブラウザに依存します。 webRTCが有効になっている場合は、STUNリクエストを受け入れ、サーバーに応答を送信します。
WebRTCリークについて詳しく知ることができます ここ