web-dev-qa-db-ja.com

dnsleaktest.comがDNSプロバイダーを見つける方法

彼らがウェブ上でこれをどのように見つけるかはわかりません。私はWindowsを使用していますが、ネットワーク構成に含まれています。 VPNプロバイダーを使用すると変更されますが、SSH(ProxyCap)経由でリモートサーバーに接続されたローカルsocksプロキシを使用すると変更されません。公的に利用可能なサイトはどれも私の正しいIPを見つけていませんが、leaktestは私のISP DNSを見つけています。

VPNを使用して仮想ネットワークアダプターを作成し、そこにDNSプロバイダーを設定することで保護が行われると想像しますが、Webサイトはどのようにプロバイダーを検出していますか?

14
JW2014

https://www.dnsleaktest.com/ のソースから:

<iframe style="display:none" src="https://1segRNWUwPK0Y21Bm1M0.dnsleaktest.com/"></iframe>
<iframe style="display:none" src="https://ldJT4mFLnijeQDBhQX2D.dnsleaktest.com/"></iframe>
<iframe style="display:none" src="https://nC4B4vChnPXPshinJoyw.dnsleaktest.com/"></iframe>

そのサイトはランダムなホスト名を生成し、ブラウザーがそのホスト名からコンテンツを要求するように調整します。ホスト名はこれまで他の誰にも提供されたことがないため、それを解決するブラウザーの要求は、dnsleaktest.comドメインのプライマリサーバーに確実に届くようにします。彼らは独自のDNSを実行しているため、DNSリクエストを受信するのは誰でもあなたのDNSプロバイダーです。


DNSトラフィックがISP経由ではなくトンネルを通過するように強制するかどうかは、プライバシーの提供元に依存します。訪れたサイトがどこから来たのかを知りたくない場合、それは穏やかなリークです:ほとんどのサイトはDNSリクエストの発信元を追跡する手間をかけず、いずれにせよ、どれがどれであるかを理解するのに苦労します。 1つはあなたのものであり、あなたの要求はとにかくいくつかのキャッシュによって処理される可能性があります。ただし、どのサイトでも、注意が必要であれば、dnsleaktestと同じトリックを使用できます。訪問しているサイトをISPに知られたくないためにトンネルを使用している場合、DNS要求がISPに到達しないことを確認することが重要です。

DNSリークを防ぐ方法があります(Linux環境ではWindows環境ではわかりません)。 1つ以上のパブリックDNSサーバーを見つけ、最初の行をコメントアウトして次の2つを削除することにより、/etc/resolv.confファイルを編集する必要があります。次に、2行目にnameserverと入力したPublic DNSサーバーのIPを入力します。

resolv.confは次のようになります

## #nameserver 192.168.1.1 <--- the ip of your router
# namserver ...whateveripyoufound(free puplic dns server)
#namserver....secondipyoufound......etc

二人で結構です

次に、dnsleaks.comを試してください。dnsリークは表示されません(これはすべて、最初にtorサービスを開始して、必要に応じてtorでproxychainsを実行できます)。

欠点は、マシンにログオンするたびにこれを行う必要があることです。 resolv.confで行った変更は永続的ではありません

0
D4S