跳到正文

传输诊断

HTTP、HTTPS 和 SOCKS5 代理测试是不同的连接

协议前缀决定了检测工具如何连接到代理,以及目标域名在哪里解析。明确的协议前缀是端点约定的一部分,而不是可有可无的输入。

方法版本
2026.07.18
最后审核

此方法由 TrueProxies 产品团队维护。所列维护者并非独立审计方或第三方认证机构。

快速解答

这些证据能说明什么

对于通过 CONNECT 隧道访问 HTTPS 目标的纯 HTTP 代理传输,使用 http://。当检测工具到代理本身的连接必须受 TLS 保护(包括主机名验证和 SNI)时,使用 https://。对于由检测端解析目标 DNS 的 SOCKS5 TCP,使用 socks5://;对于由代理端解析目标 DNS 的 SOCKS5 TCP,使用 socks5h://。自动检测只进行有限次数的 HTTP/SOCKS5 尝试,绝不会静默升级为 HTTPS 或改用 SOCKS5H。检测工具不测试 UDP ASSOCIATE。

证据边界

观测到的信号与缺乏依据的结论

可信的代理诊断会准确说明一次结果能显示什么,并把更宽泛的论断排除在结论之外。

HTTP、HTTPS 和 SOCKS5 测试的证据边界
信号能说明什么不能说明什么
明确的协议前缀代理传输方式;对于 SOCKS5 形式,还包括所请求的目标 DNS 模式。该端点在同一端口上支持其他传输方式。
可用的传输方式哪种有限的连接模式完成了本次服务器端 HTTPS 测试。在所有浏览器、操作系统、库、UDP 应用或未来会话中都受支持。
TLS 失败本次尝试中,必需的 TLS 握手或证书验证未能完成。服务商是否打算在该端口上使用纯 HTTP,或其他客户端是否禁用了验证。
SOCKS 目标 DNS 模式由检测工具还是由 SOCKS 代理解析固定的目标主机名。访问者的浏览器、操作系统或无关应用的 DNS 行为。

诊断流程

在不改变问题的前提下应用方法

明确端点、传输方式、目标和证据边界,让重试结果保持可比。

  1. 从服务商文档中的协议前缀开始

    准确复制公开端点的传输方式。仅凭端口号并不能可靠地证明是 HTTP、HTTPS 还是 SOCKS5。

  2. 明确指定 HTTPS 代理传输

    只有当检测工具必须与代理本身建立 TLS 时,才使用 https://。即使主机名的地址已被解析并为该连接固定下来,主机名仍会保留,用于证书验证和 SNI。

  3. 选择 SOCKS 的 DNS 解析位置

    需要由检测端解析目标时使用 socks5://;需要由代理解析固定目标时使用 socks5h://。两种模式测试的都是 TCP,而不是 SOCKS UDP 关联。

  4. 把自动检测当作便捷检查

    在没有明确协议前缀时,自动检测在 1080/1081 端口上先尝试 SOCKS5,在其他端口上先尝试 HTTP;如果出现符合条件的失败,再尝试另一种模式一次。HTTPS 和 SOCKS5H 必须使用明确的协议前缀。

机器可读的方法说明

服务提供方、数据字段、计时边界、超时、隐私和局限均以带版本号的 JSON 形式发布。

打开方法 JSON

解读参考

传输方式与 DNS 行为

这些标签描述的是检测工具到代理的连接。每种成功的模式仍会把 HTTPS 请求发送到固定的出口服务或所选的目标服务。

HTTP、HTTPS、SOCKS5、SOCKS5H 和自动检测的行为
输入模式检测工具到代理的传输目标 DNS 与重要边界
http://以纯 TCP 连接 HTTP 代理;HTTPS 目标使用 HTTP CONNECT 隧道。CONNECT 将固定目标的主机和端口告知代理;检测工具无法揭示代理运营方的解析器是如何实现的。
https://与代理建立 TLS(含主机名验证和 SNI),再在其中使用 HTTP 代理语义/CONNECT。会保留明确指定的安全传输;TLS 握手失败后不会改用纯 HTTP 重试。
socks5://SOCKS5 TCP 协商;如提供用户名/密码,则进行相应认证。检测工具先解析固定的目标主机名,再请求代理建立连接。
socks5h://SOCKS5 TCP 协商;如提供用户名/密码,则进行相应认证。目标主机名会发送给代理,由其远程解析。
自动检测按照文档说明的基于端口的顺序,最多进行一次 HTTP 尝试和一次 SOCKS5 尝试。它不会尝试 HTTPS 代理 TLS、SOCKS5H、UDP、任意认证方式或无限次重试。

故障排查

把观测结果转化为下一步稳妥的检查

对认证信息保密,并且每次只改变一个变量。

https:// 失败而 http:// 成功

可能的含义: 该端口提供的可能是纯 HTTP 代理,而不是到代理的 TLS;也可能是其证书/主机名验证失败。

下一步检查: 使用服务商文档中的协议前缀和主机名;绝不要仅仅为了得到绿色结果而降级必需的安全传输。

SOCKS5 可用但 SOCKS5H 失败

可能的含义: 检测端的目标 DNS 解析成功,而代理端的解析器或远程域名命令失败。

下一步检查: 确认服务商支持远程目标 DNS,并保持实际应用所需的模式。

自动检测在常见的 SOCKS 端口上报告为 HTTP

可能的含义: 第一次 SOCKS5 尝试失败,随后有限的 HTTP 回退尝试完成了。

下一步检查: 在生产环境中配置该端点之前,先用明确的协议前缀重新测试。

浏览器可用,但检测工具失败

可能的含义: 浏览器可能使用了本服务器端检测工具无法复现的系统设置、扩展、证书策略、认证协商或 DNS 行为。

下一步检查: 比较确切的协议前缀、主机名、端口、认证方式和 DNS 模式,而不是只看产品标签。

局限

  • 检测工具验证的是通往固定 HTTPS 服务的服务器端 TCP 路由;它不是针对 SOCKS5 所承载的每种协议的通用实现测试。
  • SOCKS5 UDP ASSOCIATE、UDP 应用、BIND、GSS-API 以及服务商特有的认证扩展都不在范围之内。
  • HTTP CONNECT 成功并不能证明支持向任意目标转发未加密的 HTTP。
  • HTTPS 代理传输保护的是检测工具到代理这一跳;它不会让代理运营方或出口线路变得匿名。
  • 自动检测刻意限制了尝试次数,可能无法发现非标准的传输方式。服务商的明确文档仍是权威依据。