能用 ping 检查代理吗?
ping 响应测试的是 ICMP 可达性,并非代理端口上的 HTTP 或 SOCKS 服务。
ping 可以告诉你 ICMP 回显请求是否收到了回复。它不会打开代理列表中所列的 HTTP 或 SOCKS 端口,也不会让代理尝试访问网站。
当某条记录响应 ping 却拒绝代理连接时,这一区别很重要。ICMP 与代理的 TCP 服务在主机软件和访问规则中经过不同路径。地址可达,并不代表所选端口有代理在监听。
三种容易误读的结果
- ping 有回复,代理失败:检查服务端口、协议、认证和代理响应。回显回复没有测试这些内容。
- ping 失败,代理可用:网络或主机可能过滤 ICMP,却允许代理连接。不要因为回显请求没有回复,就丢弃成功的应用测试结果。
- ping 很快,请求很慢:回显往返不包含代理协商、代理到目标的路由、TLS 和目标的响应时间。
使用实际客户端操作
对于 HTTP 端点,通过它发起有明确限制的 HTTP 请求。如需 HTTPS,还应确认隧道建立及目标的 TLS 响应。对于 SOCKS,使用应用支持的 SOCKS 模式。TCP 端口检查是有用的中间观察,但仍止于这些协议步骤之前。
排查已知路由时,把 ping 作为辅助网络信息,单独报告其结果与应用结果。“该 IP 响应回显请求”和“代理完成了这次 HTTPS 请求”是不同的说法,只有后者测试了你原本想执行的操作。