当前位置: 首页 > java >正文

ICMPv4报文类型详解表

ICMPv4报文类型详解表

一、错误报文类型(Type 0-18)

Type值名称Code范围触发条件示例典型用途
0Echo Reply0响应Echo Request(ping回复)网络连通性测试
3Destination Unreachable0-15
  • 0: 网络不可达
  • 1: 主机不可达
  • 2: 协议不可达
  • 3: 端口不可达
  • 4: 需要分片但DF标志设置
  • 5: 源路由失败
  • 6: 目的网络未知
  • 7: 目的主机未知
  • 8: 源主机隔离
  • 9: 目的网络被禁止
  • 10: 目的主机被禁止
  • 11: 网络TOS不可达
  • 12: 主机TOS不可达
  • 13: 通信被管理员禁止
  • 14: 主机优先级违反
  • 15: 优先级被取消
网络故障诊断
4Source Quench0接收方缓冲区不足,请求发送方降低速率流量控制(已弃用)
5Redirect0-3
  • 0: 重定向网络
  • 1: 重定向主机
  • 2: 重定向TOS和网络
  • 3: 重定向TOS和主机
路由优化
8Echo Request0请求回显(ping请求)网络连通性测试
9Router Advertisement0-15路由器周期性通告或响应请求IPv4路由发现
10Router Solicitation0主机主动请求路由器通告IPv4路由发现
11Time Exceeded0-1
  • 0: TTL超时
  • 1: 分片重组超时
环路检测
12Parameter Problem0-2
  • 0: 错误头部字段
  • 1: 缺少必要选项
  • 2: 长度错误
报文格式验证
13Timestamp Request0-1请求时间戳时间同步(已弃用)
14Timestamp Reply0-1时间戳响应时间同步(已弃用)
15Information Request0-1请求网络信息网络配置(已弃用)
16Information Reply0-1网络信息响应网络配置(已弃用)
17Address Mask Request0请求子网掩码子网掩码发现(已弃用)
18Address Mask Reply0子网掩码响应子网掩码发现(已弃用)

二、信息报文类型(Type 19-255)

1. 保留类型

Type值名称Code范围用途说明
19-252保留(Reserved)-未来使用
253Experimental0-255实验用途
254Experimental0-255实验用途
255Reserved-保留值

三、Type值与功能速查表

Type范围功能类别典型应用场景
0,8回显测试ping测试
3错误报告网络故障诊断
4流量控制已弃用
5路由优化手动配置静态路由时可能触发
11环路检测TTL超时诊断
12报文验证头部字段检查
9,10路由发现已被现代路由协议替代
13-18网络配置已被DHCP/DNS等协议替代

四、Code值详细说明(以常见Type为例)

1. Destination Unreachable (Type=3)的Code细分

Code值含义触发场景示例
0Network Unreachable路由表中无目标网络路由
1Host Unreachable目标主机不存在
2Protocol Unreachable目标不支持请求协议
3Port Unreachable目标端口未监听
4Fragmentation Needed需要分片但DF标志设置
5-15其他网络控制原因如源路由失败、网络被禁止等

2. Redirect (Type=5)的Code细分

Code值含义使用场景
0Redirect for Network更优网关可达同一网络
1Redirect for Host更优网关可达特定主机
2Redirect for TOS and Network基于TOS的路由优化
3Redirect for TOS and Host基于TOS的主机路由优化

五、协议特性对比表

特性ICMPv4ICMPv6
协议号IPv4 Protocol=1IPv6 Next Header=58
地址长度32位IPv4地址128位IPv6地址
功能整合需依赖ARP、IGMP等独立协议整合邻居发现、组播管理等
典型应用Ping、TraceroutePing6、NDP
安全性无原生保护可通过IPsec保护
http://www.xdnf.cn/news/16352.html

相关文章:

  • 人形机器人指南(八)操作
  • Xinference vs SGLang:详细对比分析
  • MybatisPlus-18.插件功能-分页插件基本用法
  • Jmeter的元件使用介绍:(五)定时器详解
  • 无需云服务器的内网穿透方案 -- cloudflare tunnel
  • 【AI周报】2025年7月26日
  • 什么是ICMP报文?有什么用?
  • Android Data Binding 深度解析与实践指南
  • easy-llm-cli的安装和使用
  • 【web应用】基于Vue3和Spring Boot的课程管理前后端数据交互过程
  • Vue 3 与 Element Plus 中的 /deep/ 选择器问题
  • 论文阅读-RaftStereo
  • haproxy配置详解
  • QT核心————信号槽
  • 外带服务的温度:藏在包装里的“生活共情力”
  • [RPA] 日期时间练习案例
  • 二维数组相关学习
  • FastAPI入门:demo、路径参数、查询参数
  • 【图像理解进阶】如何在自己的数据集上释放segment anything模型方案的潜力?
  • 【GaussDB】构建一个GaussDB的Docker镜像
  • MySQL数据库本地迁移到云端完整教程
  • 20250726-4-Kubernetes 网络-Service DNS名称解析_笔记
  • 虚拟直线阈值告警人员计数算法暑期应用
  • MySQL性能优化配置终极指南
  • 【深基12.例1】部分背包问题 Java
  • 二分查找-268.丢失的数字-力扣(LeetCode)
  • ABP VNext + Razor 邮件模板:动态、多租户隔离、可版本化的邮件与通知系统
  • java面试题1
  • IOPaint 图像修复工具,学习笔记
  • openmv识别数字