ARP协议

一、概念

        APR协议,全称Address resolution protocol,地址解析协议,属于TCP/IP协议簇中的网际层,但与MAC紧密相连,所以也有人说是属于2.5层。

二、目的

        已知IP地址,获取其MAC地址。

三、原理

        主机想要知道某个IP的MAC地址,查询自身ARP高速缓存表后,发现并没有,则构建一个ARP数据包(ARP请求),以广播的形式发送,广播域中,所有主机都能收到这个广播帧,非目的主机收到后,发现其IP地址与自身不匹配,则丢弃该帧,目的主机收到后,先将源主机MAC与IP的对应关系存入自身ARP高速缓存表中,之后构建一个单播的ARP帧(ARP响应),发送给源主机。

        可以理解为,某个人站在广场,知道另一个人的名字但不知道地点,就大吼一声问“xxx你在哪儿”,这是ARP请求,另一个人大声回应“我在这儿”,这是ARP响应。

四、范围

        ARP只能在同一广播域中,若要跨网络,目的主机会向网关进行ARP交互,网关又和下一个路由器进行ARP交互,直到找到目的主机。

五、报文格式

        Hardware type 硬件类型(2字节):以太网是1;

        Protocol type 协议类型(2字节):IP协议是0800;

        Hardware size 硬件长度(1字节):MAC是6字节,所以这里一般是6;

        Protocol size 协议长度(1字节):IP是4字节,所以这里一般是4;

        Opcode 种类(2字节):1是请求,2是响应,3是RARP请求,4是RARP响应

        Sender MAC address 源MAC(6字节):发送方MAC

        Sender IP address 源IP(4字节):发送方IP;

        Target MAC address 目的MAC(6字节):目的方MAC;

        Target IP address 目的IP(4字节):目的方IP。

        注:以上的MAC或者IP没有的话则是填0。

六、ARP Probe(ARP探针)

        主要用于检测广播域中是否有与自己相同IP地址的主机,这时的发送发IP全部为0,是为了防止ARP污染广播域中其他主机的ARP池,具体流程会写在DHCP中。

七、ARP攻击

        由于ARP是建立在网络中各个主机都互相信任的前提下,主机收到ARP应答时,不会检验其真实性,所以如果攻击方主机不断地朝着目的主机发送ARP应答,将目的主机ARP高速缓存表中网关MAC与IP的映射关系改变,则可能导致目标主机不能上网或是所发出、接收的流量会经过攻击方主机,造成极大的安全性问题。

八、ARP攻击的防御及解决办法

        1、设置静态MAC对应表;

        2、定期检查ARP响应的真实性;

        3、若是已经中招,则清除ARP缓存,重新设立对应关系,或是切换网络。

<该文档为复习自用,如果能给你有什么启发,非常开心,如果能帮忙指出错误,万分感谢>

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>