23.ICMP协议是什么?

举报
CodeAllen 发表于 2021/10/30 00:41:42 2021/10/30
【摘要】 控制报文协议(Internet Control Message Protocol,ICMP)是 TCP/IP 协议族的一个子协议。ICMP 协议用于在 IP 主机和路由器之间传递控制消息,描述网络是否通畅、主机是否可达、路由器是否可用等网络状态。 由于 IP 协议简单,数据传输天然存在不可靠、无连接等特点,为了解决数据传输出现的问题,人...

控制报文协议(Internet Control Message Protocol,ICMP)是 TCP/IP 协议族的一个子协议。ICMP 协议用于在 IP 主机和路由器之间传递控制消息,描述网络是否通畅、主机是否可达、路由器是否可用等网络状态。

由于 IP 协议简单,数据传输天然存在不可靠、无连接等特点,为了解决数据传输出现的问题,人们引入了 ICMP 协议。虽然 ICMP 协议的数据包并不传输用户数据,但是对于用户数据的传递起着重要的作用。

ICMP 协议作用

数据包在发送到目标主机的过程中,通常会经过一个或多个路由器。而数据包在通过这些路由进行传输时,可能会遇到各种问题,导致数据包无法发送到目标主机上。为了了解数据包在传输的过程中在哪个环节出现了问题,就需要用到 ICMP 协议。它可以跟踪消息,把问题反馈给源主机。

ICMP 报文结构

ICMP 报文一般为 8 个字节,包括类型、代码、校验和扩展内容字段。ICMP 报文基本结构如图所示。
 

其中,类型表示 ICMP 的消息类型,代码表示对类型的进一步说明,校验和表示对整个报文的报文信息的校验。

在 ICMP 报文中,如果类型和代码不同,ICMP 数据包报告的消息含义也会不同。常见的类型和代码的 ICMP 含义如表所示。
 

ICMP 类型、代码及含义
类型 代码 含义
0 0 回显应答(ping 应答)
3 0 网络不可达
3 1 主机不可达
3 2 协议不可达
3 3 端口不可达
3 4 需要进行分片,但设置不分片位
3 5 源站选路失败
3 6 目的网络未知
3 7 目的主机未知
3 9 目的网络被强制禁止
3 10 目的主机被强制禁止
3 11 由于服务类型 TOS,网络不可达
3 12 由于服务类型 TOS,主机不可达
3 13 由于过滤,通信被强制禁止
3 14 主机越权
3 15 优先中止失效
4 0 源端被关闭(基本流控制)
5 0 对网络重定向
5 1 对主机重定向
5 2 对服务类型和网络重定向
5 3 对服务类型和主机重定向
8 0 回显请求(ping 请求)
9 0 路由器通告
10 0 路由器请求
11 0 传输期间生存时间为 0
11 1 在数据报组装期间生存时间为 0
12 0 坏的 IP 首部
12 1 缺少必需的选项
13 0 时间戳请求
14 0 时间戳应答
17 0 地址掩码请求
18 0 地址掩码应答

文章来源: allen5g.blog.csdn.net,作者:CodeAllen的博客,版权归原作者所有,如需转载,请联系作者。

原文链接:allen5g.blog.csdn.net/article/details/117601191

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。