![DNS 查询和代理(squid + dansguardian)响应 - 谁负责查询?](https://linux22.com/image/585125/DNS%20%E6%9F%A5%E8%AF%A2%E5%92%8C%E4%BB%A3%E7%90%86%EF%BC%88squid%20%2B%20dansguardian%EF%BC%89%E5%93%8D%E5%BA%94%20-%20%E8%B0%81%E8%B4%9F%E8%B4%A3%E6%9F%A5%E8%AF%A2%EF%BC%9F.png)
我的网络遇到了 squid(和 dansguardian)问题,导致网页浏览速度变慢。
我现在专注于 DNS 查询 - 我认为 DNS 应该承担部分责任。我使用 wireshark 观察我的机器,使用 tcpdump 观察服务器。
我观察到,当我请求页面时,我的机器会尝试解析名称,而 squid 服务器也会这样做。这是正常行为吗?我的机器不应该将请求转发给代理,然后代理服务器解析名称并向该网页发出请求吗?
我的 Firefox(如果我在网页名称中犯了错误)将被阻止 30 秒(我猜这与 DNS 超时有关)(但确实被阻止)直到代理服务器发送未找到域的默认 squid 页面...或者直到 DNS 解析查询..
我的问题是,我的机器和代理服务器是否真的可以进行 DNS 查询,或者它应该只是代理服务器......
谢谢。
答案1
通常情况下,您的本地浏览器会在将请求发送到代理之前尝试解析 DNS 中的主机名。使用 Firefox 时,可以使用设置进行配置network.proxy.socks_remote_dns
。要修改此设置:
about:config
在位置栏中输入。network.proxy.socks_remote_dns
在搜索字段中输入。- 双击该项目可将其从(默认)
network.proxy.socks_remote_dns
更改为。false
true
启用此功能后,Firefox 应该将请求传递给代理,而无需在本地执行 DNS 解析。
注意:我不确定这是否仅适用于socks
代理。