标签:使用 报文格式 lin image 系统 多播 字节顺序 lazy 协议
??ICMP是封装在IP数据报当中的
??ICMP通常被IP层或更高的协议使用,ICM报文时在IP数据报内部被传输的。
??类型字段可以有15个不同的值,主要用来描述报文的作用,下图介绍了类型和代码分表代表了那些请求或响应
??有几种情况都不会产生ICMP差错报文:
1.ICMP差错报文
因为已经是报的差错报文了,如果它还产生差错报文会产生死循环
2.目的地址是广播或多播地址的IP数据报
3.作为链路层广播的数据报
4.不是IP分片的第一片
只有ip分片的第一片才带有端口信息,没有端口信息返回的ICMP没有作用
5.源地址不是单个主机的数据报
??拿最常用的ping来说,他就是依靠ICMP协议来进行确认的,下面看下ICMP报文格式
??下图是抓包的例子
1.类型是8,代码是0 对照上述的类型表可以发现该报文是一个请求报文。
2.checksum是校验和
3.identifier(be)和identifier(le)
是标识符,只不过wireshark考虑到windows系统和liunx系统发出ping报文的
字节顺序不一样,分别告诉信息,其本质内容是没有变的
(windows为LE:little-endian byte order,Linux为BE:big-endian)
4.sequence number(BE)和sequence number(LE)
同identifier一样
??这里是回显报文,和刚才的查询报文明显的区别就是在类型和代码上的。
标签:使用 报文格式 lin image 系统 多播 字节顺序 lazy 协议
原文地址:https://www.cnblogs.com/zhengyazhao/p/13151665.html