连接被拒绝:连接尝试收到了主动拒绝。超时:尝试没有在配置的期限内完成。首先要弄清错误信息描述的是哪一段连接。

被拒绝可能意味着代理已停止监听,或端口填错了。但防火墙或其他设备也可能主动拒绝连接,因此信息本身无法指出是哪台机器拒绝的。超时则留下更多可能:流量被丢弃、路由故障、丢包,或连接建立得太慢。

这两种症状都不一定发生在你到代理的连接上。一个能够访问的 SOCKS 服务器,可能返回它到目标的连接被拒绝。同样,CONNECT 成功后等待网站响应,与等待连上代理监听端口,也是两回事。

找到最先失败的位置

对于 HTTP 代理,替换文档示例地址,再阅读详细输出的过程:

curl --proxy http://203.0.113.10:8080 --noproxy '' --connect-timeout 5 --max-time 15 --verbose https://example.com/

五秒连接预算涵盖相应的连接建立过程,并不是每个步骤都重新等待五秒。十五秒的总时限也会限制后续传输时间。找出最后成功的一步:连上代理、收到代理回复、隧道获准,还是收到目标响应。

固定目标和协议,换用服务提供的另一个端点,或免费代理列表中的另一个端点。如果它可用,就检查第一个端点或其路径。如果两个端点都在连上各自代理端口前失败,就检查本地网络和客户端配置。同时更改 IP、协议、端口、目标和超时,会让比较无法得出结论。

稍后重试一次,可以帮助识别暂时性故障。快速反复重试,或无限延长等待,都不能增加多少证据。对公开代理条目做过几次有明确限度的尝试仍失败后,保存准确错误,再换一个。

相关文章