前言: ARP协议不是攻击的。他是地址解析协议,作用是将一个已知的IP地址解析成MAC地址,刚学的时候的初学者只把ARP当做是拿来的攻击协议。是一个很大的误区
ARP
什么是ARP:
ARP是一个地址解析的协议,主要的作用是将IP解析为MAC地址(属于网络层的协议)
原理:
(1)发送ARP广播请求,报文内容就是 ,我的IP地址是XX.XX.XX.XX,,MAC地址是XX,我现在要知道192.168.2.150(这个IP只是为例,这里的192.168.2.150就是目标IP),把你的MAC地址发给我
(2)接收到ARP单拨应答
ARP欺骗和攻击的原理以及区别:
原理:通过发送伪造虚假的ARP报文(广播或单播),来实现的攻击或欺骗!
区别:ARP报文中如果放的地址是攻击者自己的MAC地址,就称之为ARP欺骗,如果发送的虚拟的MAC地址(这里的虚拟的MAC地址代表的是不存在的MAC地址),则成为ARP攻击,ARP欺骗主要是为了限制数据,修改数据,而ARP攻击则是为了断网/中断通信
为什么ARP协议容易被攻击?
ARP协议没有验证机制,所以容易被arp投毒攻击
ARP攻击防御:
1.静态ARP绑定
手工绑定/双向绑定
windows客户机上:
arp -s 10.1.1.254 00-01-2c-a0-e1-09
arp -a 查看ARP缓存表
路由器上静态绑定:
Router(config)#arp 10.0.0.95 0013.240a.b219 arpa f0/0
优点:配置简单
缺点:工作量大,维护量大
2.ARP防火墙
自动绑定静态ARP
主动防御
优点:简单易用
缺点:当开启人数较多时,会增大网络负担
3.硬件级ARP防御:
交换机支持“端口”做动态ARP绑定(配合DHCP服务器)
或做静态ARP绑定
如:
conf t
ip dhcp snooping
int range f0/1 - 48
switch(config-range-if)#
路由器
路由器工作原理:
(1)帧到达路由之后,路由器先查看目标MAC地址是不是自己,如果不是则丢弃到这个帧,如果是,则对该帧解封装
(2)路由器解析IP包头中的目标IP,并查询匹配路由表,如果匹配失败,对该帧进行丢弃并反馈错误信息,若匹配成功则将IP包路由到出接口
(3)封装帧,将出接口的MAC地址封装为源MAC地址,检查匹配路由表,看是否有下一跳IP的MAC地址,如果有将下一跳IP的MAC地址封装为目标MAC地址,如果没有,就进行发送ARP广播请求下一跳IP的MAC地址,并获取到对方的mac地址,再记录缓存,并封装帧,最后将帧发送出去。