免费ARP
Gratuitous ARP也称为免费ARP。Gratui ARP不同于一般的ARP请求,它并非期待得到IP对应的MAC地址,而是当主机启动的时候,将发送一个Gratuitous arp请求,即请求自己的IP地址的MAC地址。
免费ARP作用
1、验证IP是否冲突
一个主机能够通过它来确定还有一个主机是否设置了同样的IP地址。发送主机并不须要一定收到此请求的回答,假设收到一个回答,表示网络中存在与自身IP同样的主机,假设没有收到应答,则表示本机所使用的IP与网络中其他主机并不冲突。
2、更换物理网卡
假设发送ARP的主机正好改变了物理地址(如更换物理网卡),能够使用此方法通知网络中其他主机及时更新ARP缓存。
免费ARP实例
路由器R1的IP地址为172.16.1.1,MAC地址为78-51-7b-21-0f-05;路由器R2的IP地址为172.16.1.2,MAC地址为78-51-84-11-10-05。
测试结果一
1、路由器R1与路由器R2,在做实验时这两台路由器已经能正常通信,也就是它们分别有对方的IP对应的MAC条目。
2、此时,如果R1修改了接口MAC地址,IP是还是原IP地址不变的情况下,R1会发出Gratuitous ARP请求包,R2在收到这样的包时,会更新R2上的路由器1对应的IP与MAC地址对应的关系。
测试结果二
1、路由器R1与路由器R2,在做实验时这两台路由器还未能正常通信,也就是它们并没有对方的IP对应的MAC条目。
2、此时,如果R1设置了接口IP地址,R1会发出Gratuitous ARP请求包,R2在收到这样的数据包时,R2会把R1对应的IP与MAC地址的对应关系加入R2的ARP列示中。
下面是Gratuitous ARP包,我们要看看它的包内容: