免费的ARP协议是ARP协议的一种,文章先赘述一下ARP协议,下面给出实验内容,可以可以跳过阅读。
ARP协议
ARP协议有的说是数据链路层的协议,也有的说是网络层的协议。
但可以明确的一点是,IP协议是基于ARP协议的。
ARP实验
拓扑与配置
利用的华为的ensp设备做的实验,采用的三层的路由器。
-
AR2
sys dis int brief int g0/0/0 ip add 192.168.0.254 int g0/0/1 ip add 192.168.1.254
-
PC1和PC2打开设置直接配上ip地址
PC1 ip:192.168.0.1 子网掩码: 255.255.255.0 网关: 192.168.0.254 // 跨网段,所以需要进行设置网关 PC2 ip:192.168.1.1 子网掩码: 255.255.255.0 网关: 192.168.1.254
报文分析
ARP
ARP:Address Resolution Protocol,地址解析协议
用于二层寻址,建立接口、MAC和IP的表项。
当一个IP数据包到来的是,会先查看表现,如果没有查到这个IP对应的表项,
会通过广播的方式获取ARP信息。
通过Ping命令,在电脑的出口处进行抓包,这里用的wireshark,具体报文如下
可以发现这么几点
-
arp寻找目的设备,mac帧的目的地是:
ff:ff:ff:ff:ff:ff
,6组冒号分开的ff -
arp 报文格式,图片上的缩写可以对应上面的报文进行查看。
-
ARP协议工作流程 参考
--> 发起请求的设备查看arp缓存表 --> 无,发送以全1的MAC地址进行广播 --> 被请求的设备搜到ARP请求 --> 将请求ARP 的设备信息缓存到表中 ---> 回复ARP请求 --> 收到ARP回应, 设备缓存arp信息
免费的ARP分析与功能
报文
报文携带发送端的IP地址和目标IP地址,都是本机IP地址
报文源MAC地址是本机的MAC,目的MAC是广播MAC(全是f)
功能
确定其它设备的IP地址是否与本机IP地址冲突,当其他设备收到免费的ARP报文之后,如果发现报文中的IP地址和自己的IP地址相同,则给发送免费ARP报文的设备返回一个ARP应答,告知设备IP地址冲突
具体场景
VRRP的搭建:当备状态切换到主状态的时候,设备就会广播免费的ARP报文
设备改变了MAC地址,通过发送免费的ARP报文通知其他设备更新ARP表项