ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

ICMP

2019-07-11 22:56:36  阅读:219  来源: 互联网

标签:IP 报文 消息 主机 ICMP 路由器


(一)ICMP

ICMP是(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议族的一个IP层子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。

ICMP位于TCP/IP协议族中IP层。

ICMP的主要功能包括:确认IP包是否成功送达目标地址,通知在发送过程当中IP包被废弃的具体原因,改善网络设置等。同时ICMP的这种通知消息会使用IP进行发送,收到ICMP包的主机会分解ICMP的首部和数据与以后得知具体发生的原因。

ICMP报文在IP数据报内部被传输,正式规范参考RFC792.

 

 

ICMP报文的前4个字节都是一样的,但是剩下的其他字节则互不相同。

类型字段可以有15个不同的值,以描述特定类型的ICMP报文。某些ICMP报文还使用代码字段的值来进一步描述不同的条件。校验和字段覆盖整个ICMP报文,算法与IP首部校验和相同。

ICMP消息分类

ICMP消息大致分成两类:一类是通知出错原因的错误消息(差错报文),另一类是用于诊断的查询消息(查询报文)。

常用ICMP消息类型

不同类型由报文中的类型字段和代码字段来共同决定。

类型3:ICMP目标不可达消息

 IP路由器无法将IP数据包发送给目标地址时,会给发送端主机返回一个目标不可达的ICMP消息。并在这个消息中显示不可达的具体原因。而在实际通信过程中常遇到错误代码为1,表示主机不可达,它是指路由表中没有改主机信息或者该主机没有联网的意思。

ICMP不可达消息.png

 

类型5:ICMP重定向消息

如果路由器发送端主机使用了次优的路径发送数据,那么它会返回一个ICMP重定向消息给这个主机,在这个消息中包含了最合适的路由消息和源数据。这主要发生在路由器持有更好的路由器信息的情况下,路由器会通知这样的ICMP消息给发送端主机一个更适合的发送路由。

ICMP重定向消息.png

类型11:ICMP超时消息

IP包中有有一个字段叫做TTL,它的值就是每经过一次路由器就会被减1,直到0时该IP包会被丢弃,此时IP路由器将会发送一个ICMP超时的消息给发送端主机,并通过该包已被丢弃。

设置IP包生存周期的主要目的,是为了在路由控制遇到问题发生循环状态时,避免IP包无休止地在网络上被转发。

 

类型0、8:ICMP回送消息

用于进行通信的主机或路由器之间,判断所发送的数据包是否已经成功到达对端的一种消息。可以向对端主机发送回送请求的消息(类型8),也可以接受对端主机发回来的回送应答消息(类型0)。网络上最常用的ping命令,就是利用这个消息实现的。

标签:IP,报文,消息,主机,ICMP,路由器
来源: https://www.cnblogs.com/noyes1985/p/11173259.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有