プロキシ経由のDNS解決


2

私は非常に気まぐれなプロキシ(squid)の背後にいます、そしてそれは特定のユーザーエージェントでなされたhttpリクエストだけが許されるようです。

フェッチするとき google.com Google Chromeから、私は見ることができます HTTP GET WireSharcで。しかしながら、 wget 応答しないデフォルトのDNSサーバーを介して最初にDNSを解決しようとします。

どうやって作れますか wget あるいは git 直接DNSクエリの代わりにプロキシを使用しますか?


DNS要求に答えられないことがわかっているのなら、なぜそれがプロキシのせいだと思いますか?お願いします 編集する 明確にするためにあなたの質問。
roaima

1
@ roaima私はそれがプロキシのせいではないと言った。私はwgetがプロキシを通して名前解決をしていないと言った。
nowox

"の関連性を明確にしてください 特定のユーザーエージェントを使ったhttpリクエストのみが許可されているようです "あなたが説明しているDNS検索の問題に。私は接続を見ません。ありがとう。
roaima

wgetがまだターゲットサイト(プロキシではない)に対してDNSルックアップを実行している場合は、プロキシを使用するように設定されていません。 hostsファイルのエントリを使ってルックアップの問題を解決することはできますが、それが問題を次の段階に押し上げるでしょう。もしそれがプロキシに対して適切なプロキシ要求をしなければ、それは拒否されます。
Adrien

回答:


1

直接DNSクエリの代わりにwgetやgitにプロキシを使用させるにはどうすればいいですか?

プロキシ環境変数を設定すればこれはまっすぐになります:

export http_proxy='http://proxy.contoso.com:3128/'
wget http://www.example.net/

私はすでにそれをやりました。クロムから私は得る HTTP REQUEST とから wget 私はまだ TCP への要求 DNS。そのため、Chromeはプロキシを要求しているだけです。 wget 最初にDNSを解決しようとします。
nowox

@nowoxからDNSルックアップを取得できません wget この構成では。どのプラットフォーム(OS)を使用していますか?
roaima

0

プロキシが特定のホストに対して特定のIPアドレスを試すように指定するメカニズムはありません。あなたはからURLを変更することができます http://example.com/mypage http://33.33.33.33/mypage しかし、プロキシサーバーは要求するホスト名を知りません。最新のWeb(HTTP / 1.1)は、リクエスト内に常に存在しているHostヘッダーに依存しており、1つのWebサーバーがそれらのホスト名で識別される複数のサイトにサービスを提供できるようにします。

最善の策は、選択したDNSリゾルバを使用するようにプロキシサーバーを構成することです。これはあなたが管理しているローカルプロキシサーバーを使用する場合にのみ可能です。

リソース - https://askubuntu.com/questions/447877/how-to-resolve-the-dns-locally-when-there-is-a-proxy-configured


では、ChromeがDNS自体にクエリを送信しないのはどうしてですか。
nowox
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.