编辑开始
为了澄清我需要回答的问题:
- Squid v3.1 与 v3.0 有什么不同?
- 为什么上述差异不适用于 ProxyChains?
- 我需要对 Squid 3.1 进行哪些更改才能使其与 ProxyChains(编译选项、配置选项等)一起使用?
编辑停止
盒子:Fedora 11 x86_64
由于需要的功能,我从 Squid 3.0 升级到 Squid 3.1,现在proxychains似乎不再适用于 Squid。proxychains 仍然适用于任何其他应用程序。
在 3.0 中,我像这样启动 Squid:
# 代理链 squid -X -N
并且所有 Squid 的流量都是通过 proxychains 预定义的代理列表发送出去的。
对于 Squid 3.1,这不起作用,并且所有流量都正常路由(就像没有调用代理链一样)。正常的代理链连接日志均未显示,表明代理链似乎根本没有收到来自 Squid 的任何转发其流量的请求。
浏览 3.1的发行说明,我没有看到任何会阻止代理链使用它的具体内容。
作为一种可能的 Rube Goldberg 解决方法,不能将 squid 配置为使用代理本身吗?如果是这样,并且您想要代理链的各种智能功能,您可以运行其他一些在代理链下工作的无操作代理。甚至可能安装在备用路径中并配置为不执行任何操作的早期版本的 squid:
即调用
proxychains /path/to/squid-3.0/bin/squid
(将 squid-3.0 配置为未修改的代理请求并侦听,例如,端口 12345),然后正常调用 squid-3.1,但将其配置为通过localhost:12345
.它很复杂,但它为您提供了 3.1 功能和代理链功能,至少直到/除非一些更聪明的灵魂弄清楚如何让它直接工作。
Squid 日志或调试输出中的任何内容?如果这没有发现任何内容,请获取以下内容的副本
strace
并将其开头部分粘贴到某处:strace -t -c -o strace.log proxychains squid -X -N
鉴于信息有限,它应该有助于我们更深入地了解正在发生的事情。