您的位置: 新闻资讯 > 行业动态 > 正文

ICMP Type 与 Code 完整详解:网络排障、攻击识别、防护全套指南(图文)


来源:mozhe 2026-06-16

前言


做运维、网络安全、站长的朋友,排查网络抖动、端口不通、服务器无故断连时,经常在抓包日志看到ICMP Type X Code X日志。很多人只懂 Type 8 Ping 请求,分不清不同 Code 代表的故障、甚至看不懂攻击特征。
ICMP 依靠Type(类型大类)+ Code(细分代码) 两个字段定义报文含义,既是网络排障最核心工具,也是黑客发起欺骗攻击、端口扫描、隧道渗透的突破口。本文整理全网最实用的 ICMP Type/Code 对照表、故障排查案例、对应攻击识别与落地防护方案,适合公众号、知乎、头条发布,关键词完整适配百度收录。

一、基础概念:Type 和 Code 分别是什么?


所有 ICMP 报文头部固定 8 位 Type 字段、8 位 Code 字段,IANA 统一规范定义标准值:
  1. Type(类型):划分报文大类,分为「差错报告报文」和「查询请求报文」两大块
    • 差错报文:网络故障报错(Type3、Type5、Type11 等),路由器 / 服务器主动发送
    • 查询报文:主动探测网络(Type0、Type8 Ping 包),人为或程序主动发起
  2. Code(代码):同一 Type 下细分具体场景,同一种 Type 不同 Code 代表完全不同故障 / 攻击行为 例:同样 Type3 目标不可达,Code0 是路由缺失,Code3 是端口未开放,Code13 是防火墙拦截

二、高频 ICMP Type + Code 完整对照表(运维必存)

(一)查询类报文(日常 Ping、探测使用)

  1. Type 0 Code 0:Echo Reply 回显应答 Ping 目标服务器成功返回的正常报文,无安全风险。
  2. Type 8 Code 0:Echo Request 回显请求 我们日常执行 ping、批量存活探测使用的数据包;大量高频 Type8 报文可能是 Ping 洪水攻击。
  3. Type9/10:路由通告 / 路由请求,内网设备广播使用,公网建议拦截。

(二)差错类报文(排障核心,也是攻击重灾区)

1. Type 3 目的不可达(最常用,16 种 Code 细分)


这是之前讲过的 ICMP Unreachable 攻击核心报文,不同 Code 对应不同故障 / 欺骗攻击场景:
表格
Code 名称 业务场景 & 攻击风险
0 网络不可达 路由表无目标网段;伪造该报文可诱导服务器清空路由,断网
1 主机不可达 目标主机离线;黑客伪造报文中断 TCP 长连接
2 协议不可达 目标不支持 TCP/UDP 等传输协议
3 端口不可达 UDP 端口无监听;大量同源 IP 该报文 = 内网端口扫描
4 需要分片,DF 标记置 1 MTU 不匹配导致数据包丢包
13 通信被管理员禁止 防火墙 REJECT 规则拦截访问

2. Type 5 路由重定向


Code0-3 区分网络 / 主机路由重定向,用于优化内网路由;伪造 Type5 报文可篡改主机路由,中间人劫持流量,高危漏洞。

3. Type 11 超时报文(Tracert 追踪路由)

  • Code0:TTL 超时,tracert 路由追踪正常报文
  • Code1:分片重组超时,数据包分片丢失 黑客可大量发送伪造 Type11 报文干扰业务链路判断。

4. Type12 参数错误报文


IP 头部格式异常,畸形数据包,常出现在漏洞扫描行为。

三、看懂日志:如何通过 Type+Code 快速定位问题

场景 1:网站接口频繁超时、SSH 断线


防火墙大量日志:ICMP Type3 Code1 主机不可达 判断:遭受 ICMP 不可达欺骗攻击,黑客伪造虚假主机离线报文,服务器主动断开 TCP 会话。

场景 2:内网大量主机端口被扫描


抓包持续出现大量ICMP Type3 Code3报文,同一源 IP 遍历多个目标端口 判断:内网存在端口扫描行为,扫描器发送 UDP 包,无监听端口返回端口不可达报文暴露端口状态。

场景 3:访问网站偶尔丢包、加载缓慢


抓包出现ICMP Type3 Code4 判断:链路 MTU 值不匹配,数据包无法分片导致丢包,调整网卡 MTU 即可修复。

场景 4:内网服务器访问外网流量被劫持


日志出现异常ICMP Type5路由重定向报文 判断:内网存在中间人攻击,伪造路由修改服务器网关。

四、基于 ICMP Type/Code 的常见网络攻击识别


读懂 Type+Code 就能快速识别 4 类高频攻击:
  1. ICMP Unreachable 欺骗攻击(Type3 全系列 Code) 攻击者伪造 Type3 各类不可达报文,欺骗服务器断开正常业务连接,无大流量、隐蔽性极强,是网站抖动、无故掉线元凶。
  2. Ping Flood 洪水攻击(Type8) 海量 Type8 Echo 请求冲击服务器,占满带宽、CPU,造成网络瘫痪。
  3. 路由重定向劫持攻击(Type5) 伪造路由重定向报文篡改客户端路由,窃取账号、拦截业务数据。
  4. ICMP 隧道渗透(混合 Type0/8) 把木马、内网数据封装进正常 Ping 报文(Type0/8),绕过防火墙拦截,实现内网横向渗透、数据外传。

五、分层防护方案:针对不同 Type/Code 精准拦截

1. Linux 服务器内核层防护(针对 Type3 不可达欺骗攻击)


修改内核参数,禁止系统信任外部 ICMP 差错报文,根治伪造 Type3 欺骗:
bash
运行
# 关闭接收外网ICMP重定向(Type5防护)
echo net.ipv4.conf.all.accept_redirects=0 >> /etc/sysctl.conf
# 禁止信任外部ICMP不可达报错(Type3攻击核心防护)
echo net.ipv4.icmp_ignore_bogus_error_responses=1 >> /etc/sysctl.conf
sysctl -p

2. 防火墙 / 安全组精细化 ICMP 策略


不要一刀切封禁所有 ICMP,按 Type 分类放行:
  • 放行:少量 Type0/8 Ping 探测(仅运维信任 IP 段),用于网络排障
  • 拦截:公网全部 Type3、Type5、Type11 差错报文,阻断欺骗、劫持攻击
  • 限流:限制单 IP 每秒 Type8 Ping 报文数量,抵御 Ping 洪水

3. 边界网关 / 路由器防护

  1. 全局关闭定向广播,防御 Smurf 放大攻击;
  2. 开启 URPF 反向路由校验,过滤伪造源 IP 的所有 ICMP 报文;
  3. 丢弃外网所有 Type5 路由重定向报文,杜绝路由劫持。

4. WAF/IDS 流量监控告警


配置日志告警规则:
  • 短时间内大量Type3 Code3端口不可达 → 触发端口扫描告警
  • 异常高频Type3 Code0/1主机 / 网络不可达 → 判定 ICMP 欺骗攻击
  • 超大载荷 Type8 Ping 包 → 识别 ICMP 隧道、死亡 Ping 攻击

六、运维避坑指南

  1.  完全封禁所有 ICMP:会导致 tracert、网络故障无法排查,只拦截高危 Type 即可;
  2.  只监控流量带宽:Type3 欺骗攻击无大流量,普通带宽监控无法发现;
  3.  忽略内网 ICMP 报文:内网扫描、路由劫持全部依靠 ICMP 报文,内网边界同样要做策略;
  4.  不区分 Code 统一拦截:同 Type 不同 Code 风险天差地别,精细化规则才能兼顾业务与安全。

七、总结


ICMP 的 Type 和 Code 是网络故障诊断、攻击检测的核心标识:Type 区分报文大类,Code 精准定位故障或攻击类型。 日常运维中,Type3(目标不可达)、Type5(路由重定向)是最高危报文类型,极易被黑客利用发起隐形攻击;而 Type0/8 仅作基础网络探测使用。 防护核心思路:内核屏蔽虚假差错报文 + 防火墙按 Type/Code 精细化拦截 + 流量监控异常 ICMP 日志,三层防护结合,既能保留网络排障能力,又能彻底拦截各类基于 ICMP 的网络攻击。
#ICMP #ICMPTypeCode #网络安全 #运维干货 #服务器防护 #网络排障 #ICMP 攻击防御 #端口扫描识别 #Linux 安全加固 #站长运维教程

关于墨者安全
墨者安全致力于安全防护、服务器高防、网络高防、ddos防护、cc防护、dns防护、防劫持、高防服务器、高防dns、网站防护等方面的服务,全网第一款指纹识别技术防火墙,自研的WAF指纹识别架构,提供任意CC和DDoS攻击防御

热门文章

X

7x24 小时

免费技术支持

15625276999


-->