ICMP与TCPping整理
这份笔记围绕网络连通性排查中常见的 ICMP Ping 与 TCP Ping 做对照整理,核心区别在于前者工作在网络层,通过 Echo Request/Reply 判断主机是否响应,后者工作在传输层,需要指定 IP 和端口并尝试建立 TCP 三次握手。ICMP Ping 适合内网排障、局域网测试和快速确认主机在线状态,但它只反映 ICMP 控制报文是否可达,很多云厂商或防火墙会屏蔽 ICMP,因此容易出现 ping 不通但网站、SSH 或 HTTPS 服务实际正常的假阴性。TCP Ping 更贴近真实业务访问路径,可用 tcping、hping3 或 nmap 指定端口检测 80、443、SSH 等服务端口的可达性与延迟,在互联网服务监控和业务体验评估中更有参考价值。笔记还给出北京、上海部分电信、移动、联通的常用测试 IP,以及 zstaticcdn 面向联通、移动、电信的 80 端口 TCP Ping 目标,便于做跨运营商线路对比。读者可以借此判断排查时该先测主机响应还是直接测业务端口,避免把 ICMP 被封误判为服务故障。适合运维、后端开发、站点维护者和需要做多线路网络质量测试的用户作为速查参考。
目录#
[[toc]]
原理与应用#
| 项目 | ICMP Ping | TCP Ping |
|---|---|---|
| 协议层级 | 网络层(Layer 3) | 传输层(Layer 4) |
| 工作方式 | 发送 ICMP Echo Request → 等待 Echo Reply | 尝试与目标 IP:端口 建立 TCP 三次握手 |
| 是否需要端口 | ❌ 不需要(只要目标主机响应 ICMP) | ✅ 需要指定端口(如 80、443) |
| 数据内容 | 仅有 ICMP 控制报文(几字节) | 含有 TCP SYN/ACK 等完整报文头 |
| 易受屏蔽程度 | 很容易被防火墙禁掉(常见) | 不易屏蔽(如果业务端口开放) |
-
ICMP Ping
- 最经典的 ping 命令就是它。
- 只能反映 主机是否在线、网络延迟情况。
- 缺点:很多云厂商/防火墙会直接屏蔽 ICMP,导致你 ping 不通,但网站其实是正常的。
-
TCP Ping
- 常用命令:tcping、hping3、nmap --host-timeout ... -p PORT
- 模拟应用连接过程,可以检测 目标端口是否可达 + 网络延迟。
- 更贴近真实业务(比如网站 TCP 443 端口的可用性)。
- 如果端口可用,延迟数据往往更准确反映应用层体验。
-
用 ICMP Ping
- 内网排障、局域网测试(防火墙未封 ICMP)
- 快速检查一台机器是否响应
-
用 TCP Ping
- 互联网服务监控(如 HTTP、HTTPS、SSH)
- 避免 ICMP 被封导致的假阴性
- 想要和真实业务延迟一致时(比如测网站,直接测 443 端口)
常用的三网地址整理#
这里以 几个我常用的地址进行测试
ping 值:
[参考: https://www.nodeseek.com/post-56368-1]
北京电信: 220.181.12.199
北京 移动:221.130.33.60
北京联通:111.201.101.156
上海电信: 202.96.209.133
TCP ping:
[参考:https://www.nodeseek.com/post-68572-1]
| 联通 | 移动 | 电信 |
|---|---|---|
bj-cu-v4.ip.zstaticcdn.com:80 | bj-cm-v4.ip.zstaticcdn.com:80 | bj-ct-v4.ip.zstaticcdn.com:80 |
评论
还没有评论,来发第一个吧