TCPing 的异常结果指向性很强,关键是先分清失败的形状:是全部失败,还是局部失败;是拒绝,还是超时。

只有部分节点失败

大部分地区正常,个别省份或者某个运营商连不上。

第一嫌疑是云厂商的安全组和 ACL。很多安全组规则是按地域、按 IP 段配置的,海外节点或者某些省份的出口 IP 不在白名单里,自然连不上。

第二嫌疑是运营商互联。某些链路到目标机房质量差,握手包在中间被丢弃。

判断方法很直接:把失败的节点按地区和运营商列出来,看是不是有规律。如果是「海外全挂、国内正常」,那基本就是安全组没放行海外;如果是「某个省全挂」,就往链路上查。

所有节点都被拒绝

全国一致收到 RST。这说明主机活着、网络通着,就是那个端口没服务。

常见原因:服务没启动、启动失败、监听在 127.0.0.1 而不是 0.0.0.0、端口被改过、容器映射没做对。

这类问题不需要查网络,直接上服务器看进程和监听状态,几分钟就能定位。

所有节点都超时

全国一致没有回应。这个范围最大,可能性也最多。

先 Ping 一下目标。Ping 通,说明主机在线,问题在端口层面,重点查安全组、本机防火墙(iptables、firewalld、ufw)和中间设备。

Ping 也不通,说明主机或链路有问题,可能是宕机、可能是 IP 变了、也可能是整段网络被拦。这时候先确认服务器状态,别在端口上浪费时间。

还有一种容易被忽略的情况:域名解析到了错误的 IP。用 dig 或 nslookup 对一下,看看是不是解析到旧地址或者被污染了。

端口通但业务不可用

TCPing 全部成功,可网站还是打不开、接口还是报错。

这时候问题已经不在网络层和传输层了。检查应用是否正常返回、反向代理配置对不对、后端服务有没有挂、证书是否有效。

用网站测速看 HTTP 状态码,用 SSL 检测看证书链,比继续测端口有用。

一个排查顺序

先看失败范围,全部还是局部;再看失败类型,拒绝还是超时;然后用 Ping 区分主机和端口;最后用应用层工具确认业务状态。

四步走完,绝大多数问题都能落到具体环节,不用来回试。