ICMP协议介绍
一 介绍
ICMP:Internet控制报文协议,是网络层的一个协议,用于探测网络是否连通、主机是否可达,路由是否可用等。简单地讲,它是用来查询诊断网络的。
ICMP报文分两类:差错报文和查询报文。每一条ICMP报文要么是属于差错报文,要么是属于查询报文。
二 ICMP报文格式
三 ICMP报文分类
四 ICMP差错报文
差错报文根据其类型的不同,可以分为5种类型
1 目的不可达(类型=3)
2 源端被关闭(类型=4)
3 重定向(类型=5)
4 超时(类型=11)
5 参数问题(类型=12)
五 ICMP查询报文
ICMP查询报文可以分为四大类
类型 |
代码 |
含义 |
8、0 |
0 |
回送请求(Type=8)、应答(Type=0) |
13、14 |
0 |
时间戳请求(Type=13)、应答(Type=14) |
17、18 |
0 |
地址掩码请求(Type=13)、应答(Type=18) |
10、9 |
0 |
路由器请求(Type=10)、通告(Type=9) |
六 实战
1 Linux下ping命令
Linux下的ping命令产生的ICMP报文大小是(56+8)64个字节,其中56是ICMP报文数据部分长度,8是ICMP报头部分长度。
2 抓包分析
Linux ping windows
2 Windows下的ping命令
Windows下的ping命令产生的ICMP报文大小是(32+8)40个字节,其中32是ICMP报文数据部分长度,8是ICMP报文部分长度
windows ping Linux
七 参考
https://www.cnblogs.com/iiiiher/p/8513748.html
https://www.cnblogs.com/jingmoxukong/p/3811262.html