当前位置:   article > 正文

ARP协议解析_arp协议报文分析

arp协议报文分析

ARP协议

数据链路层的以太网的协议中,每一个数据包都有一个MAC地址。我们知道每一块以太网卡都有一个MAC地址,这个地址是唯一的,那么IP包是如何知道这个MAC地址的?这就是ARP协议的工作。

ARP(地址解析)协议是一种解析协议,本来主机是完全不知道这个IP对应的是哪个主机的哪个接口,当主机要发送一个IP包的时候,会首先查一下自己的ARP高速缓存表(最近数据传递更新的IP-MAC地址对应表),如果查询的IP-MAC值对不存在,那么主机就向网络广播一个ARP请求包,这个包里面就有待查询的IP地址,而直接收到这份广播的包的所有主机都会查询自己的IP地址,如果收到广播包的某一个主机发现自己符合条件,那么就回应一个ARP应答包(将自己对应的IP-MAC对应地址发回主机),源主机拿到ARP应答包后会更新自己的ARP缓存表。源主机根据新的ARP缓存表准备好数据链路层的的数据包发送工作。

命令arp -a查询ARP缓存表(缓存表是有时限的,一般是20分钟


ARP数据包如何更新IP-MAC地址抓包分析

链接:点击打开链接

上图是ARP请求、应答报文的格式。

对以太网首部来说:如果是请求ARP报文的话,

以太网目的地址: 是(全1)的,是广播报,目的是让同一个局域网上所有主机都收到ARP请求包

以太网源地址: 就是发送端地址。

帧类型: 如果是ARP报文,值为0x0806

硬件类型: 表明ARP协议实现在那种类型的网络上,它的值为1,即表示以太网地址

协议类型:表示解析协议(上层协议),这里一般是0800,即IP

硬件地址长度:也就是MAC地址长度,即6个字节

协议地址长度:也就是IP地址长度,即4个字节

操作类型:表示ARP协议数据报类型。1ARP表示请求包,2ARP表示应答包,3表示RARP请求包,4表示RARP应答包

发送端以太网地址:也就是源MAC地址

发送端IP地址:也就是源IP地址

目的端以太网地址:目标端MAC地址(如果是请求报文,是全0)

目地端IP地址:也就是目地端的IP地址


实例:

如上图所示,pc1给pc2发送ARP请求,此时使用Wireshark获取ARP抓包数据


既然都获取到ARP的数据,那就分析ARP的数据。

先分析ARP请求数据报文:

选中57帧,可以在wireshark中查看报的详细信息:


当PC1发送的ARP请求报文,以广播报的形式发送到局域网后,当pc2检测到IP地址与自己的IP相同,就会发送给PC1响应报文,也就是58帧

对于ARP响应包来说,源IP,目地IP,源MAC,目地MAC都是知道了的。




声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/731502
推荐阅读
相关标签
  

闽ICP备14008679号