第一步:捕获ICMP数据包
ping 命令底层使用了ICMP协议,使用 ping 命令,就可以观察到ICMP的「工作流程」。
1)Wireshark「开启抓包」后, ping 一下我们的网关,触发ICMP协议。
- cmd中执行命令:
ping 192.168.2.1 -n 1
2)Wireshark的「显示过滤器」中过滤 icmp
- 抓到了两个包:上面是ICMP「请求包」,下面是ICMP「响应包」。
- 因为我只Ping了一次,所有只抓了一对包,这样分析起来比较方便。
3)找到ICMP的数据包
- 从上往下分别是这个数据包中,物理层、数据链路层、网络层、应用层使用的协议
- 最下面的
Internet Control Message Protocol
,「首字母」连起来是ICMP,就是我们要找的ICMP协议,其他协议也是这种形式。
第二步:分析报文类型
ICMP协议通过的 Type 和 Code 两个字段来表示「报文类型」,接收方根据报文类型执行对应的操作,以此来达到「控制」的效果。
因此,这里我们先看 Type 和 Code 这两个字段。
1)先看第一个包,重点看我圈中的字段:
- Type字段,标明了报文的类型, request 表示这是一个「请求」报文。
- Code字段,标明了报文的代码。
- Type=8,Code=0,表示这是一个回显请求(Ping请求)
2)再看第二个包,重点看我圈中的字段
- Type字段,标明了报文的类型, reply 表示这是一个「响应」报文。
- Code字段,标明了报文的代码。
- Type=0,Code=0,表示这是一个回显应答(Ping应答)
第三步:分析数据报格式
接下来看看ICMP的报文数据格式,除了刚才讲的类型(Type)和代码(Code),还有其他字段。
1)「校验和」是 Checksum 字段,用来验证报文是否有误
- Checksum Status = Good,表示校验状态是良好的,报文无误
2)ICMP的响应中,会携带「响应时间」(Response time ),Ping命令返回的响应时间,就是从这里获取的
3)发送了多少「字节」,也可以在Data字段看到
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点!真正的体系化!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
助,需要这份全套学习资料的朋友可以戳我获取!!**](https://bbs.csdn.net/topics/618653875)
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!