跳到正文

检查代理是否正常——以及为什么一半的测试在说谎

代理测试失败并不总意味着「代理坏了」。它往往意味着「测试工具不合适」。这个区别会耗掉您好几个小时。

update 更新于

一条命令完成测试

curl -x socks5h://用户名:密码@frproxy.com:15002 https://api64.ipify.org

预期输出:一个 IP 地址。如果它是您代理的 IP 而不是您本机的,那就一切正常。

socks5h,不是 socks5 这个 h 要求 curl代理去解析域名。 没有它,您的机器会在本地解析,您的宽带运营商就能看到您在访问什么。 参见 HTTP 还是 SOCKS5

对于 HTTP 端口:

curl -x http://用户名:密码@frproxy.com:15001 https://api64.ipify.org

⚠️ 会让人得出错误结论的陷阱

api.ipify.org 只支持 IPv4。

如果您的代理从 IPv6 出口——我们的双栈套餐就是这样,法国多家移动运营商也属正常情况—— 测试会失败,而代理其实完全正常。该服务只是无法回应而已。

我们曾因这个细节损失了一整轮测量:一个被判定为「故障」的代理,实际上在毫无差错地转发流量。

请使用 api64.ipify.org(同时支持 IPv4 IPv6),或用一个不依赖第三方服务的测试来交叉验证:

# 301 = TCP 已经通到 Cloudflare。不涉及任何 DNS,也不涉及任何第三方 API。
curl -x socks5h://用户:密码@frproxy.com:15002 -o /dev/null -w '%{http_code}\n' -k https://1.1.1.1

应当依次检查什么

# 问题 怎么查
1 代理有响应吗? 上面的 curl 命令
2 IP 是法国的吗? 通过代理访问 https://ipinfo.io/json —— 看 country 字段
3 它被识别为移动网络吗? org 字段应当出现运营商名称(Orange、SFR、Free、Bouygues)
4 DNS 泄漏吗? 在配置好的浏览器中访问 https://dnsleaktest.com
5 WebRTC 泄漏吗? https://browserleaks.com/webrtc —— 参见专门的文章

第 4 和第 5 点是最容易被忽略的,而恰恰是这两点真正会暴露您。

从面板查看

我的代理会为每一条显示引擎所见的公网 IP——也就是服务端的事实, 不依赖您本机的判断。如果面板显示一个 IP,而您的测试显示另一个, 那么问题出在您本地的配置,而不是代理。

三条方法准则

  1. 先验证工具,再判定故障。 只有在工具本身被证明可靠之后,一个否定结果才能成为结论。 先在不走代理的情况下运行该命令:如果它本来就失败,问题就不在代理。
  2. 一次采样不能成为规律。 只测一次的速率说明不了波动:同一部手机相隔十分钟 分别测得 152 和 75 Mbit/s。
  3. 区分实测、相关与推测。「代理很慢」和「页面加载要等一会儿」不是同一个论断。

另请参阅: 常见错误 · 更换 IP

需要法国移动代理吗? 真实的法国 4G 线路,一个 HTTP 端口和一个 SOCKS5 端口,按需更换 IP。

查看方案arrow_forward
grid_view知识库