ARP协议具体解释之Gratuitous ARP(免费ARP)

Gratuitous ARP(免费ARP)

Gratuitous ARP也称为免费ARP。无故ARP。Gratuitous
ARP不同于一般的ARP请求,它并不是期待得到IP相应的MAC地址,而是当主机启动的时候,将发送一个Gratuitous
arp请求,即请求自己的IP地址的MAC地址。

免费ARP的产生

免费ARP数据包是主机发送ARP查找自己的IP地址。

通常。它发生在系统引导期间进行接口配置的时候。这里能够使用Wireshark捕获主机启动时候的数据,以验证是否发送Gratutious
arp数据包。

这里捕获到的数据包,如图1.21所看到的。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGF4dWViYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

图1.21  Gratuitous ARP包

从该界面能够看到第44、45、47数据包都是Gratuitous
ARP包。

免费ARP的作用

免费ARP有两个方面的作用。分别例如以下所看到的:

1.验证IP是否冲突

一个主机能够通过它来确定还有一个主机是否设置了同样的IP地址。发送主机并不须要一定收到此请求的回答。假设收到一个回答,表示网络中存在与自身IP同样的主机。假设没有收到应答,则表示本机所使用的IP与网络中其他主机并不冲突。

【实例1-176】通过使用Wireshark捕获数据包,分析是否有IP冲突的情况。

实验环境如图1.22所看到的。



图1.22  验证IP是否冲突

(1)在主机A上配置一个IP地址为192.168.7.8。然后又一次启动主机A。

(2)在主机A启动时。这里也将主机B的IP地址改动为192.168.7.8。

(3)此时看Wireshark获取到的数据包,如图1.23所看到的。



图1.23  免费ARP包

从该界面主要分析91、92帧。例如以下所看到的:

(1)从91帧中能够看到MAC地址为00:23:8b:c4:05:bf的主机(主机A),向这个局域网发送免费ARP广播包。告诉局域网中全部的主机,它请求使用192.168.7.8。

(2)92帧表示MAC地址为00:19:21:3f:c3:e5的主机(主机B),向整个局域网发送ARP广播包。告诉局域网中全部的主机。192.168.7.8的MAC地址是00:19:21:3f:c3:e5(主机B)。意思是主机B已经使用了192.168.7.8。

从这两个数据包,能够看出主机B响应了主机A发送的免费ARP包,表示网络中存在与A有同样IP的主机。所以A主机启动后。将会看到如图1.24所看到的的窗体。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGF4dWViYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

图1.24  IP冲突提示

从该窗体的提示信息中能够看到本机的IP地址与网络上其它系统的IP地址冲突。

2.更换物理网卡

假设发送ARP的主机正好改变了物理地址(如更换物理网卡),能够使用此方法通知网络中其他主机及时更新ARP缓存。

【实例1-18】以下验证更换物理网卡后,发送免费ARP的请求包。详细操作过程例如以下所看到的:

本例中使用的实验环境,如图1.25所看到的。

在该环境中。主机A和主机B的IP、MAC地址已经标出。在实验之前这两台主机已经能正常通行,也就是说它们分别有对方的ARP条目。当中,主机A的操作系统为Kali
Linux;主机B为Windows 7。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGF4dWViYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

图1.25  验证免费ARP

(1)查看主机A的ARP缓存表。运行命令例如以下所看到的:

  • root@kali:~# arp

  • Address                 HWtype  HWaddress           Flags Mask            Iface

  • 192.168.1.2              ether   00:23:8b:c4:05:bf             C                  eth0

从输出的信息中,能够看到该缓存表中有一条ARP条目。当中IP地址为192.168.1.2。MAC地址为00:23:8b:c4:05:bf。

(2)改动主机B的MAC地址。

例如以下所看到的:

在桌面上右键单击“网络”|“属性”,打开网络和共享中心。在该界面单击“更改适配器设置”命令。将显示如图1.26所看到的。



图1.26  网络连接  图1.27  本地连接 属性 

在该界面右键单击“本地连接”|“属性”。将显示如图1.27所看到的的界面。

在该界面单击“配置”button,将显示如图1.28所看到的的界面。在该界面选择“高级”选项卡。如图1.29所看到的。



图1.28  Realtek PCLe GBE Family Controller属性   图1.29  高级设置

在该界面的属性一览中找到“网络地址”(有的系统是Locally Administered Address或Network Address),然后单击“值”,并输入要更改的MAC地址(这里输入的MAC地址间不须要使用“-”符号)。

(3)查看Wireshark捕获的数据包,如图1.30所看到的。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGF4dWViYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

图1.30  免费ARP广播包

从该界面能够看到有三个免费ARP包,各自是11、15、18。

这三个包都是MAC地址为00:19:21:3f:c3:e4的主机向局域网中其他主机发送的免费ARP包,告诉其他主机它将使用192.168.1.2的IP地址。免费ARP包中的数据,如图1.31所看到的。

图1.31  免费ARP广播包

从该界面能够看到第三行信息为ARP协议(请求/免费ARP)信息。从中能够查看的发生方的MAC地址、IP地址及目标MAC地址、IP地址。这里的目标MAC地址是00:00:00:00:00:00,表示这是一个ARP广播请求。局域网中其他的计算机都会收到。假设有某主机中记录了相关该地址的ARP条目将会被更新。

(4)查看主机中的ARP缓存表。

例如以下所看到的:

  • root@kali:~# arp

  • Address                  HWtype  HWaddress           Flags Mask            Iface

  • 192.168.1.2                ether   00:19:21:3f:c3:e4              C                eth0

从输出的信息中能够看到,地址为192.168.1.2的ARP条目的MAC地址更新为00:19:21:3f:c3:e4。

本文选自:ARP协议全面实战手冊——协议具体解释、攻击与防御大学霸内部资料,转载请注明出处。尊重技术尊重IT人!


ARP协议具体解释之Gratuitous ARP(免费ARP)的更多相关文章

  1. ARP协议详解之Gratuitous ARP(免费ARP)

    ARP协议详解之Gratuitous ARP(免费ARP) Gratuitous ARP(免费ARP) Gratuitous ARP也称为免费ARP,无故ARP.Gratuitous ARP不同于一般 ...

  2. ARP协议具体解释之ARP动态与静态条目的生命周期

    ARP协议详细解释之ARP动态与静态条目的生命周期 ARP动态条目的生命周期 动态条目随时间推移自己主动加入和删除. q  每一个动态ARP缓存条目默认的生命周期是两分钟.当超过两分钟,该条目会被删掉 ...

  3. 图解ARP协议(五)免费ARP:地址冲突了肿么办?

    一.免费ARP概述 网络世界纷繁复杂,除了各种黑客攻击行为对网络能造成实际破坏之外,还有一类安全问题或泛安全问题,看上去问题不大,但其实仍然可以造成极大的杀伤力.今天跟大家探讨的,也是技术原理比较简单 ...

  4. ARP协议与ARP攻击入门

    一 ARP协议 ARP协议是一个年代相当"久远"的网络协议.ARP协议制定于1982年11月,英文全称:Address Resolution Protocol,即"地址解 ...

  5. ICMP,ARP协议

    ICMP ICMP是(Internet Control Message Protocol)Internet控制报文协议.它是TCP/IP协议族的一个子协议,用于在IP主机.路由器之间传递控制消息.控制 ...

  6. arp协议简单介绍

    1. 什么是ARP? ARP (Address Resolution Protocol) 是个地址解析协议.最直白的说法是:在IP以太网中,当一个上层协议要发包时,有了该节点的IP地址,ARP就能提供 ...

  7. ARP协议格式、ARP运行机制入门学习

    相关学习资料 http://baike.baidu.com/view/149421.htm?fromtitle=ARP%E5%8D%8F%E8%AE%AE&fromid=1742212& ...

  8. ARP协议总结

    1.ARP用于实现ip和MAC地址之间的对应关系. 2.ARP的流程主要分为ARP请求.ARP应答.免费ARP. 3.首次ARP请求是广播报文,后续确认的ARP是单播报文. 4.免费ARP有两个用途, ...

  9. 免费ARP

    1. 免费ARP基本概念 免费ARP,也叫Gratutious ARP.无故ARP.这种ARP不同于一般的ARP请求,它的Sender IP和Target IP字段是相同的,相当于是请求自己的IP地址 ...

随机推荐

  1. poj2481树状数组解二维偏序

    按区间r降序排列,r相同按照l升序排列,两个区间相同时特判一下即可 /* 给定n个闭区间[l,r],如果对区间[li,ri],[lj,rj]来说, 有区间j严格包含(两个边界不能同时重合)在区间i内, ...

  2. 性能测试十八:jmeter分布式

    一台压力机产生得压力是有限的,尤其是jmeter,java本来性能就不是很好,并发特别多的时候,jmeter的性能会急剧下降,正常的接口,若单台压力机,超过1000并发以后,jmeter的性能就不怎么 ...

  3. pytest二:setup和teardown

    用例运行级别 模块级(setup_module/teardown_module)开始于模块始末,全局的 函数级(setup_function/teardown_function)只对函数用例生效(不在 ...

  4. python 全栈开发,Day43(python全栈11期月考题)

    python全栈11期月考题 1.常用字符串格式化有哪些?并说明他们的区别 2.请手写一个单例模式(面试题) 3.利用 python 打印前一天的本地时间,格式为‘2018-01-30’(面试题) 4 ...

  5. 关于jsp页面到页面传值

    很久没用这种传值了,一般都是一个.do请求到后台在跳转到前端:像有些只是展示数据功能,这样做就显得没有必要,闲话不说了,记录下来供下次参考. 用的是html的a标签,我这里只用这2种用法. 场景如下图 ...

  6. ASP.NET Core 2 学习笔记(九)模型绑定

    ASP.NET Core MVC的Model Binding会将HTTP Request数据,以映射的方式对应到参数中.基本上跟ASP.NET MVC差不多,但能Binding的来源更多了一些.本篇将 ...

  7. expect自动化工具

    http://blog.csdn.net/wangtaoking1/article/details/78268574 http://blog.csdn.net/genggood/article/det ...

  8. 【转载】和 Thrift 的一场美丽邂逅

    http://www.cnblogs.com/cyfonly/p/6059374.html 一. 与 Thrift 的初识 也许大多数人接触 Thrift 是从序列化开始的.每次搜索 “java序列化 ...

  9. 百度未授权使用地图API

    百度地图管理员的回复:这是KEY服务升级的问题, 给您造成的不便,非常抱歉.但我们昨日已修复,你可以再审核一番.若不可以,请提供一下您的系统ak,邮箱或qq发送至(wangwenhai@baidu.c ...

  10. python全栈开发day49-jquery的位置信息、事件流、事件对象,事件委托,事件绑定和解绑

    一.昨日内容回顾    1. jQuery的属性操作 1) html属性操作:attr 2) DOM属性操作:prop 3) 类样式操作:addClass.removeClass.toggleClas ...