web-dev-qa-db-ja.com

DNSクエリとプロキシ(squid + dansguardian)応答-クエリの責任者は誰ですか?

ネットワーク内のsquid(およびdansguardian)に問題があり、Webページの閲覧が遅くなっています。

私は今DNSクエリに焦点を合わせています-DNSが責任の一部を共有できると思います。私はwiresharkを使用してマシンを監視し、tcpdumpを使用してサーバーを監視しました。

ページをリクエストすると、マシンが名前を解決しようとし、squidサーバーも同じことを行うことを確認しています。これは正常な動作ですか?私のマシンはリクエストをプロキシに転送してから、プロキシサーバーが名前を解決してそのWebページにリクエストを送信するべきではありませんか?

私のFirefox(Webページ名を間違えた場合)は、プロキシサーバーがドメインのデフォルトのsquidページを送信するまで、30秒(dnsタイムアウトと関係があると思います)ブロックされたままになります(実際にはブロックされます)。 。またはDNSがクエリを解決するまで。

私の質問は、私のマシンとプロキシサーバーの両方が本当にDNSクエリを実行する必要がある場合、またはプロキシサーバーのみである必要がある場合のみです...

ありがとうございました。

1
Feiticeir0

一般的に、はい、ローカルブラウザはプロキシにリクエストを送信する前にDNSのホスト名を解決しようとします。 Firefoxでは、これはnetwork.proxy.socks_remote_dns設定を使用して構成できます。この設定を変更するには:

  • ロケーションバーにabout:configと入力します。
  • 検索フィールドにnetwork.proxy.socks_remote_dnsと入力します。
  • network.proxy.socks_remote_dnsアイテムをダブルクリックして、false(デフォルト)からtrueに変更します。

これを有効にすると、FirefoxはDNS解決をローカルで実行せずにプロキシにリクエストを渡す必要があります。

注意:これがsocksプロキシにのみ適用されるかどうかはわかりません。

1
larsks