这可能是完全不可能实现的,但在我试一试之前,我想我可能会从一个极客那里得到一些建议。squid 也会代理 DNS 查询吗?我想转发 DNS 查询以通过 squid 并使用 squid 的 DNS 错误页面,当然是通过自定义它。我看到 DNS 查询正在 UDP 端口 53 上访问我的 squid 框。我可以设置一个端口转发,以便所有这些查询都发送到 squid 的 3128 端口。但是 squid 会理解它的 DNS 查询并将这些查询转发到 dns 服务器集在 squid.conf 中?我希望我的问题很清楚,但请大声喊叫,如果需要,我很乐意为您提供更多信息。多谢你们!
问问题
21355 次
1 回答
3
看看什么是鱿鱼?
Squid 不是 DNS 代理。它出于自己的目的进行一些本地 DNS 缓存。
Squid 将元数据,尤其是热对象缓存在 RAM 中,缓存 DNS 查找,支持非阻塞 DNS 查找,并实现失败请求的负缓存。
一种思考方式是,作为“网络”代理,Squid 存在于应用层。TCP 连接(和 UDP 数据报)不能像在较低级别中那样简单地传递。应用程序必须了解来自端点的协议,这通常意味着它们的功能可以描述为协议的白名单:
Squid 是用于 Web 客户端的高性能代理缓存服务器,支持 FTP、gopher 和 HTTP 数据对象。
简而言之,您的问题是:“...... squid 会理解它的 DNS 查询并将这些查询转发到 squid.conf 中设置的 dns 服务器吗?”
Squid 可能会监听 UDP(我没有检查这个),但即使这样做,它也不会理解入站 DNS 流量。
于 2010-04-21T14:45:15.207 回答