首页/系统与基础设施/自动化运维速查/主机不可达与超时的区分
排障与安全50 条

主机不可达与超时的区分

目标不可达、连接超时、连接被拒绝分别对应路径明确通知、静默丢弃和端口未监听三种情况;判断的关键是看提示来自哪台设备、以及 TCP 层是立刻失败还是挂起等待。

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌​​‌​‌‌‌‌​‌‌​​​​‌​‌‌‌​‌​‌​‌‌‌​‌​​​‌‌​‌‌‌‌​‌‌​‌‌​‌​‌‌​​​​‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌‌​‌‌​‌‌‌​​​‌​‌‌‌‌​‌‌​‌​​​​‌‌​‌‌‌‌​‌‌‌​​‌‌​‌‌‌​‌​​​​‌​‌‌​‌​‌‌‌​‌​‌​‌‌​‌‌‌​​‌‌‌​​‌​​‌‌​​‌​‌​‌‌​​​​‌​‌‌​​​‌‌​‌‌​‌​​​​‌‌​​​​‌​‌‌​​​‌​​‌‌​‌‌​​​‌‌​​‌​‌​​‌​‌‌​‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌​‌​‌‌​​‌​‌​‌‌​‌‌‌‌​‌‌‌​‌​‌​‌‌‌​‌​​​​‌​‌‌​‌​‌‌​​‌​​​‌‌​‌​​‌​‌‌‌​​‌‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌​​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌‌​‌‌​‌‌‌​​​‌​‌‌‌​​‌‌​‌​​​​‌‌‌​‌​​​‌‌​‌‌​‌​‌‌​‌‌​​

三种失败结局区别很大

连接目标主机时会出现三种截然不同的结局:目标不可达、连接超时、连接被拒绝。它们的差别不在严重程度,而在包走到了哪里、被谁回应。目标不可达通常由路径上的路由器或本机发出明确通知;连接超时往往意味着包被静默丢弃;连接被拒绝说明包已到达主机、只是端口没人接。分清这三种,才能判断问题属于路由、过滤策略还是服务本身。

基本信息

适用对象IP 层与 TCP 层的连通性排查
不可达含义有设备明确回复「送不到」,附带原因
超时含义没有任何回复,包被丢弃或反方向不通
拒绝含义对端主机已回应,只是目标端口未监听
关键提示不可达提示里的来源地址,往往就是问题所在设备

区分要点

  • 同网段不可达:多为地址解析失败,目标根本没接到包,报文里常带本机地址
  • 跨网段不可达:提示来自路径上的路由器,说明它有路由但下一跳不通
  • 完全无响应:包被中间设备静默丢弃,或回程路由缺失导致应答回不来
  • 立刻被拒绝:主机在线而端口关闭,属于服务层问题,与网络无关
  • 仅在部分客户端失败:多为源地址选择、回程路径或来源限制差异
  • 间歇性出现:常见于会话老化、链路抖动或负载均衡后端状态不一致

分类判据命令

分类判据命令
ping -c 3 10.0.0.10          # 看提示来源:本机地址还是某台路由器
ping -c 3 10.0.0.10; ip neigh show 10.0.0.10   # 同网段时确认地址解析是否成功
ip route get 10.0.0.10        # 确认本机实际选用的出口与源地址
traceroute -n 10.0.0.10       # 观察在那一跳开始失去回应
nc -vz -w 3 10.0.0.10 443     # 超时还是拒绝,TCP 层的最终结论
ss -lnt | grep ':443'         # 对端本机确认端口是否有人在监听

三种结局对照

结局表现指向下一步
目标不可达立即返回带原因的通知本地链路或路径路由按提示来源查地址解析与路由表
连接超时等待数秒后失败静默丢弃或回程不通查中间放行策略与回程路由
连接被拒绝立刻失败对端服务未监听查服务状态与监听地址
连接重置建立后被断开策略或服务主动断开查对端日志与连接追踪状态
云环境中安全策略常见做法是丢包而非拒绝:此时从客户端看就是标准的超时,与网络故障完全一样。因此超时类问题要先确认放行规则,再怀疑链路质量。
IPv4 与 IPv6 可能给出不同结论:某一协议栈不可用时,客户端若优先尝试该协议会表现为超时,而另一协议其实是通的。排查时分别指定协议验证一次即可排除。

易错点

  • 把超时当成链路故障:多数超时实为放行策略丢包,先查规则比先查链路省时间
  • 忽略不可达提示的来源地址:提示来自路由器与本机含义完全不同,看漏这一处会误判责任边界
  • 只测去程不看回程:应答包回不来时表现与去程不通一致,需要在对端抓包或反向测试
  • 多网卡主机不确认源地址:路由选择决定了源地址,源地址被对端策略拒绝时表现为超时
  • 用长超时反复重试:长超时会拖慢排查节奏,先给短超时快速分类,再针对性深挖

数据来源与参考

  • RFC 792:ICMP 目的不可达报文
  • RFC 1122:主机与路由器要求
  • Linux 手册页:ip-route(8)、ip-neighbour(8)

整理校对:其其网ICT文档中心 · 本页地址:docs.qiqicto.com/automation/host-unreachable-timeout-distinction.html

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌​​‌​‌‌‌‌​‌‌​​​​‌​‌‌‌​‌​‌​‌‌‌​‌​​​‌‌​‌‌‌‌​‌‌​‌‌​‌​‌‌​​​​‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌‌​‌‌​‌‌‌​​​‌​‌‌‌‌​‌‌​‌​​​​‌‌​‌‌‌‌​‌‌‌​​‌‌​‌‌‌​‌​​​​‌​‌‌​‌​‌‌‌​‌​‌​‌‌​‌‌‌​​‌‌‌​​‌​​‌‌​​‌​‌​‌‌​​​​‌​‌‌​​​‌‌​‌‌​‌​​​​‌‌​​​​‌​‌‌​​​‌​​‌‌​‌‌​​​‌‌​​‌​‌​​‌​‌‌​‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌​‌​‌‌​​‌​‌​‌‌​‌‌‌‌​‌‌‌​‌​‌​‌‌‌​‌​​​​‌​‌‌​‌​‌‌​​‌​​​‌‌​‌​​‌​‌‌‌​​‌‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌​​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌‌​‌‌​‌‌‌​​​‌​‌‌‌​​‌‌​‌​​​​‌‌‌​‌​​​‌‌​‌‌​‌​‌‌​‌‌​​