ICMP协议结构全解(1)(2)
2 ICMP回射请求和应答报文头部格式
ICMP报文被封装在IP数据报内部传输。如图1所示,是ICMP协议回射请求和应答报文头部格式。
图1 ICMP回射请求和应答报文头部格式
各种ICMP报文的前32bits都一样,它们是:
8bits类型和8bits代码字段:一起决定了ICMP报文的类型。常见的有:
类型8、代码0:回射请求。
类型0、代码0:回射应答。
类型11、代码0:超时。
16bits校验和字段:包括数据在内的整个ICMP协议数据包的校验和,其计算方法和IP头部校验和的计算方法是一样的。
对于ICMP回射请求和应答报文来说,接下来是16bits标识符字段:用于标识本ICMP进程。
最后是16bits序列号字段:用于判断回射应答数据报。
3 ICMP目标不可达报文
如图2所示,是ICMP目标不可达报文头部格式。
图2 ICMP目标不可达报文头部格式
其中代码字段的不同值又代表不同的含义,如,0代表网络不可达、1代表主机不可达等,见表1。
4 ICMP超时报文头部格式
如图3所示,是ICMP超时报文头部格式。
图3 ICMP超时报文头部格式
其中:
类型11+代码0:表示传输期间生存时间为0。
类型11+代码1:表示数据报组装期间生存时间为0。
由于篇幅有限,这里不再分析其他类型ICMP协议数据包的格式。
评论暂时关闭