这可能是完全不可能实现的,但在我试一试之前,我可能会得到一位同行的建议。 squid也会代理DNS查询吗?我想转发DNS查询以通过squid并使用squid的DNS错误页面,当然通过自定义它。我看到DNS查询正在UDP端口53上攻击我的squid框。我可以设置一个端口转发,以便所有这些查询都被发送到squid的端口3128.但是squid会理解它的DNS查询并将这些查询转发到dns服务器集在squid.conf中?我希望我的问题很明确,但请大声说出来,如果需要,我很乐意再给你一些信息。多谢你们!
答案 0 :(得分:3)
Squid不是DNS代理。它为自己的目的进行了一些本地DNS缓存。
Squid保持元数据,特别是缓存在RAM中的热门对象,缓存DNS查找,支持非阻塞DNS查找,并实现对失败请求的负缓存。
考虑它的一种方法是,作为“web”代理,Squid存在于应用程序层中。 TCP连接(和UDP数据报)不能像在较低级别那样简单地传递。应用程序必须了解终端出来的协议,这通常意味着它们的功能可以描述为协议的白名单:
Squid是一个用于Web客户端的高性能代理缓存服务器,支持FTP,gopher和HTTP数据对象。
简而言之,你的问题是:“...鱿鱼会理解它的DNS查询并将这些查询转发到squid.conf中设置的dns服务器吗?”
Squid可能会收听UDP(我没有检查过这个),但即使这样做,它也无法理解入站DNS流量。