代理连不上时最忌盲目乱试。连接超时与拒绝连接的原因各不相同,本篇给出从本机网络到目标站封锁的逐层排查思路,配合命令大多数人能在十分钟内定位故障点。
先分清报错:超时与拒绝连接含义不同
连接超时说明请求发出去了但迟迟得不到回应,问题多出在链路质量或节点负载;拒绝连接(Connection refused)则是目标端口明确回绝了你,问题多出在地址端口填错、代理进程未启动或协议类型不匹配。先看清报错类型再动手,能省掉一半无效排查。
第一层:确认本机网络与代理状态
- 直连测试: 先不走代理访问任一网站,确认本机网络本身正常。
- 端口探测: 用 telnet 或 Test-NetConnection 确认代理端口是否开放,连端口都不通就先查防火墙。
- 防火墙放行: 本机与服务器两侧防火墙都可能拦截代理端口,先放行再复测。
# 1. 确认直连正常
curl -I https://www.example.com
# 2. 指定代理测试,-v 输出握手细节
curl -v --connect-timeout 10 -x http://1.2.3.4:8080 http://httpbin.org/ip
# 3. 带认证再测一次
curl -v -x http://user:[email protected]:8080 https://httpbin.org/ip
观察 -v 输出卡在哪一步:TCP 连接建立失败指向网络层,连接成功但无响应指向协议或节点,返回 407 则是认证问题。
第二层:协议类型与认证信息逐项核对
- 协议前缀: HTTP 代理用 http://,SOCKS5 用 socks5h://,协议填错往往表现为连接后无响应或直接被拒。
- 账号密码: 注意大小写,URL 中的特殊字符如 @ : / 必须做转义编码。
- 白名单 IP: 白名单模式下公网出口一变就会被拒,先到控制台核对当前出口地址是否已加白。
- 套餐状态: 流量用尽、套餐到期、并发超限同样会拒绝连接,别漏查账户面板的告警。
第三层:判断是不是目标网站封锁
代理本身正常但目标站访问失败时,重点看返回码:403 代表 IP 被针对性拒绝,429 代表触发频率限制,返回验证码页面则说明进入了人机验证环节。此时正确的做法是降低请求频率、更换 IP 或改用质量更高的住宅代理,而不是反复猛攻同一个节点,那只会让封禁进一步升级。
排查链路总结
记住这条顺序:本机网络 → 代理端口 → 协议类型 → 认证与白名单 → 套餐状态 → 目标站封锁。每一层用固定命令验证一次再进入下一层,避免多变量同时改动导致越排越乱。
Article ID: 68
(本文仅供技术交流,请遵守法律法规)