ローカルDNSを使用してドメインベースの透過プロキシを許可する

ローカルDNSを使用してドメインベースの透過プロキシを許可する

私はイラン出身ですが、イランIPのために一部のウェブサイト(NVIDIA、Intelなど)がブロックされています。私のDNSを別のドメインに変更すると、これらのドメインにアクセスできるというWebサイト広告があります。だから試してみましたが、次のようになります。

me@laptop ~> drill devtalk.nvidia.com @94.232.174.194
devtalk.nvidia.com.     300     IN      CNAME   uk4.shecan.ir.
uk4.shecan.ir.  134     IN      A       5.226.141.227

shecan.irは広告のウェブサイトです。

今、彼らがやっていることの合法性を除いて、これはどのように機能しますか?イランではなくIP(uk4.shecan.ir 5.226.141.227)からこれらのサイトにトラフィックをリダイレクトするだけなので、実際にはプロキシです。ただし、すべてのドメインをプロキシするわけではなく、ブロックされたドメインのみをプロキシします。

私のルーターで直接これをやりたいので、この質問をすることです。しかし、私が試したすべてのhttps透過プロキシはドメインを区別できません。彼らはこれにipを使用しますか?だから私は彼らのDNSサービスを使用すると、彼らは私にDNSの答えを提供し、私はその答えに接続し、その答えに私の要求を送信します。しかし、彼らはどのようにドメインを区別するのですか?ブロックされたすべてのドメインに異なるIPを使用しますか?これは可能ですか?

私のルーターでこれを行うことはできますか?

基本的に私はこれをテストしようとしています。 dnsmasqを使用してブロックされたサイト(私のispによってブロックされている)にローカルIPを提供し、そのLANシステムでiptablesを使用してTorを介してすべてのトラフィックを透過的にプロキシします。しかし、私の質問は、ブロックされたドメインのローカル宛先を提供するとこれが機能するかどうかです。

すべてのトラフィックをプロキシすることなく、目的のドメインのみをプロキシできるようにします。

答え1

はい、ルーターでこれを行うことができます。dnsmasqルーターで実行すると/etc/hostsルーター内のファイルが使用されるため、このファイルを編集して再ルーティングしたいドメインを入力し、プライベート範囲に(異なる)IPアドレスを提供する必要があります。

iptablesその後、実際のアドレスにDNATを送信し、torインターフェースを介して転送する規則が必要です。

ドメインのIPアドレスが変更された場合は、構成を更新する必要があるため、管理がやや面倒になります。

別の方法は、PCで異なるネットワーク名前空間を使用し、2つのブラウザ(デフォルトの名前空間に1つ、新しい名前空間に1つ)を起動し、Torをゲートウェイとして使用するように名前空間を接続し、次のように終了することです。です。この方法でトラフィックを直接処理できます。

関連情報