irpas技术客

Wireshark抓包分析ARP协议_士别三日wyx_如何分析wireshark 抓取的arp报文

irpas 4810

「作者主页」:士别三日wyx 「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「专栏简介」:此文章已录入专栏《计算机网络零基础快速入门》

使用Wireshark工具抓取ARP协议的数据包,分析ARP协议的地址解析过程、自主学习逻辑以及初次访问和多次访问的区别。

第一步:Ping本网段内任意主机第二步:过滤ARP协议的数据包第三步:数据包分析第四步:数据内容分析第五步:ARP自主学习第六步:再次访问

第一步:Ping本网段内任意主机

1)cmd执行下面这条命令获取局域网内所有主机:

for /L %i IN (1,1,254) DO ping -w 2 -n 1 192.168.31.%i

命令的意思是:ping 192.168.0.1 到 192.168.0.255 之间的所有IP,注意将IP地址的第3位改成自己的网段。

2)cmd执行 arp -a 命令,从ARP表中查看本网段内有哪些主机。

3)记录一个本网段的IP,然后 arp -d 清空ARP表

4)cmd执行 arp -a,验证ARP表已被清空(第五步会解释为什么要清空)

5)Wireshark开启抓包后,ping 本网段的IP

第二步:过滤ARP协议的数据包

显示过滤器中输入:arp,过滤ARP协议的数据包。

抓到了两个数据包,第一个包是ARP请求包,第二个包是ARP响应包。

第三步:数据包分析

先分析一下这两个数据包做了什么

1)先看第一个数据包,源地址(Source字段)是我自己的MAC地址

cmd 执行 ipconfig /all 验证一下:

目标地址(Destination字段)是 Broadcast,就是广播的意思 Info 字段,是对当前动作的描述:

总结一下第一个数据包做了什么: 我的电脑,发送了一个广播,广播的内容是 “谁是192.168.31.118?告诉192.168.31.121” 192.168.31.121是我电脑的IP,意思就是:呼叫192.168.31.118,收到请回复我。

4)第二个数据包的目的地址(Destination 字段)是我电脑的MAC地址

结合 Info 字段的信息,总结一下第二个数据包做了什么: 有个主机,向我的电脑发送了一个信息,信息的内容是 “192.168.31.118 是 74:b5:87:db:06:ac” 这个主机把MAC地址告诉了我的电脑。

综上所述,我们可以得出一个结论:

ARP地址解析协议就像一个队内语音,他会向局域网内所有主机广播请求,索要目标IP的MAC地址;知道的主机就会响应具体的MAC地址。

第四步:数据内容分析

接下来我们根据包的数据分析一下,这两个包是怎么做的

1)第一个包的数据,重点看我圈起来的两个地方

第一处:ARP后面的括号里是 request,说明这是个请求包第二处:源IP、源MAC、目标IP都有值,目标MAC却全是0,意思就是告诉他们:我不知道这个IP的MAC地址。

2)第二个包的数据,重点看我圈起来的两个地方

第一处:ARP后面的括号里是 reply,说明这是个响应包第二处:源IP、源MAC、目标IP、目标MAC都有值,接收方可以从这里获取IP对应的MAC地址。

第五步:ARP自主学习

还记得第一步的时候,我们清空了ARP表吗?

再次使用 arp -a 查看ARP表

可以发现,表中添加了我们刚才 ping 的IP,以及对应的MAC地址,这就是ARP的学习能力:解析成功的MAC地址会被临时缓存,以节约资源。

第六步:再次访问

1)Wireshark开启抓包,重新访问这个主机

2)查看ARP请求包的目的MAC地址

由于是第二次访问,ARP表中已经缓存了MAC地址,所以这次ARP请求不再广播,而是直接从ARP表中获取。


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #如何分析wireshark #抓取的arp报文