arp原理(包括arp欺骗测试与防御)

arp协议

        地址解析协议,即ARP(Address Resolution Protocol),作用是通过IP地址换取mac地址。我们知道,在局域网内通信靠的是mac地址,而不是ip地址。有些人可能疑惑了,比如我要ping局域网内的网关,不就是ping 192.168.1.1 不就是用的IP地址吗??怎么说用的是mac地址,其实,在ping网关这个IP的时候,需要arp协议去得到网关的mac。再去对这个mac地址去发送信息。
     在一个局域网内,无时无刻不充斥着arp协议。
# tcpdump -i eno16777736 -vnn arp
21:52:29.091636 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.1.1 tell 192.168.1.6, length 46
21:52:30.232964 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.1.71 tell 192.168.1.100, length 28
21:52:30.233137 ARP, Ethernet (len 6), IPv4 (len 4), Reply 192.168.1.71 is-at d0:53:49:54:4d:e1, length 46
21:52:31.112223 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.1.1 tell 192.168.1.100, length 28
21:52:31.114196 ARP, Ethernet (len 6), IPv4 (len 4), Reply 192.168.1.1 is-at 14:75:90:40:b9:80, length 46
21:52:52.643785 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.1.42 tell 192.168.1.1, length 46
21:52:57.863894 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.1.71 tell 192.168.1.100, length 28
21:52:57.864068 ARP, Ethernet (len 6), IPv4 (len 4), Reply 192.168.1.71 is-at d0:53:49:54:4d:e1, length 46
21:53:00.221650 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.1.1 tell 192.168.1.6, length 46
21:53:01.671999 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.1.1 tell 192.168.1.100, length 28
21:53:01.686769 ARP, Ethernet (len 6), IPv4 (len 4), Reply 192.168.1.1 is-at 14:75:90:40:b9:80, length 46


用抓包工具看看,都是一个请求包,一个回应包。
请求包是  谁知道192.168.1.71的mac请告诉192.168.1.6
回应包是  192.168.1.71的mac地址是 d0:53:49:54:4d:e1


ARP的工作流程:

    第一步:A(10.0.0.2)要和B(10.0.0.3)通信,A在本地的ARP缓存中检查主机B的匹配MAC地址。
    第二步:如果A的ARP缓存中没有缓存,则A将ARP请求帧广播到本地网络上的所有主机。本地网络中的所有主机都会接收到ARP请求,并且检查是否与自己的IP地址匹配,若不匹配则丢弃ARP请求。
    第三步:主机B(10.0.0.3)接收到A的ARP请求包,则将A的Mac和IP写进自己的ARP缓存中。
    第四步:主机B(10.0.0.3)将自己的mac信息回复给A。
    第五步:当主机A收到从主机B发来的ARP回复消息时,会用主机B的回复信息刷新自己的ARP缓存。并且利用缓存向B发送信息。


ARP的欺骗:

    ARP欺骗的实现原理很简单,因为所有主机的数据包想要发送到外网就必须交给网关,再由网关将数据包发给路由器并且开始传送数据包。
    那黑客只要在局域网内冒充网关
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值