TCP/IP五层模型-网络层-ARP协议

​1.定义:地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。

2.分类:ARPARP解析过程:

同网段:①主机A查自己的ARP缓存表,如果ARP表中有主机B的ip-mac记录,主机A就会把B的MAC地址封装进IP数据包,并将数据包发送给主机B。②如果没找到,主机A会发一个ARP广播包,ARP请求报文中的sender ip为主机A的ip,send mac为主机A的mac,target ip为主机B的ip,target mac为全0。同网段内所有主机收到后,会比较自己的IP地址和ARP请求报文中的目标IP地址,不相同就丢弃,相同就会将主机A的IP地址和MAC地址更新到自己的ARP表中。③主机B以单播方式发送一个包含了自己的MAC地址的ARP响应报文给主机A。主机A收到ARP响应报文后,将主机B的MAC地址更新到自己的ARP表中,用于后续报文的转发,同时将主机B的MAC地址封装进IP数据包,然后发送出去。

不同网段:①当主机A和主机B不在同一网段时,主机A就会发一个ARP广播包。ARP请求报文中的sender ip为主机A的ip,sender mac为主机A的mac,target ip为网关的ip,target mac为全0。网关收到后会给主机A回一个包含自己MAC地址的ARP响应报文。②主机A收到网关发送的ARP响应报文,把网关的MAC更新到自己的ARP缓存表,将网关MAC封装进IP数据包,并发给网关。③网关查路由表,知道下一跳怎么走,然后网关会查自己的ARP缓存表,如果网关已经有主机B的ARP表项,网关就把主机B的MAC地址封装进IP数据包,并把报文发给主机B;如果网关没有主机B的ARP表项,那么网关就会广播ARP请求,源IP和源MAC地址变为网关出接口IP地址和MAC地址,目标IP地址为下一跳接口的IP地址,目标MAC为全F,然后就这样一直解析下去,直到解析出主机B的MAC,把报文发给主机B,B给A回包同理。

RARP:逆向ARP协议,知道自己的MAC地址,通过RARP协议得到自己的IP地址。一般存在于帧中继网络中,用于实现IP和DLCI地址的映射。

代理ARP:应用场景:当电脑不具备网关功能,而又要实现跨网段通信。

发生代理ARP的条件:①网关已经开启代理ARP功能。②网关有目标的路由信息。当电脑没有网关(采用代理ARP)时:"跨网段访问谁,就问谁的MAC"。当电脑有网关(采用正常ARP)时:"跨网段访问谁,都问网关的MAC"。无论哪种ARP,跨网段通信时,发送方请求得到的目标MAC地址都是网关MAC。

免费ARP:免费ARP报文是一种特殊的ARP报文,该报文携带的发送端IP地址和目标IP地址都是本机地址,报文源MAC地址是本机地址,目的MAC地址是广播地址。PC开机或者更改了自己的IP地址,就会发送一个免费ARP包。

作用:①确定其它设备的IP地址是否与本机的IP地址冲突。当其它设备收到免费ARP报文后,如果发现报文中的IP地址和自己的IP地址相同,则给发送免费ARP报文的设备返回一个ARP应答,告知该设备IP地址冲突。 

②PC更改了IP地址,通过发送免费ARP报文通知其它设备更新ARP表项。

3.ARP攻击:利用arp的工作原理,攻击者冒充网关IP,但是MAC地址仍然为自己的MAC,让其他主机认为,攻击者的电脑是网关,让本来发到网关的数据包发到了攻击者的主机上。

4.ARP攻击防范:静态绑定:

1.在DOS窗口输入“netsh i i show in”(这是“netsh interface ipv4 show interfaces的缩写”,就可以查看到本地连接对应的“IDX”值。
2.查看网关的IP和MAC,ipconfig /all3.静态绑定netsh -c "i i" ad ne 本地连接IDX  网关IP  网关MAC

DAI:通过dhcp snooping自动获取到正确的ip-mac对应关系,然后检查所有收到的arp报文,如果报文中的sender ip和sender mac对应关系合法,则放行,否则丢弃。

ARP-check:锐捷私有技术,功能类似DAI,但是由交换机硬件进行处理,性能会高很多。

5.老化机制:ARP缓存表采用了老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度(通过ARP协议学习,能被更新,缺省老化时间120s)。

6.ARP报文解析:ARP报文格式:

以太网头部:

以太网ARP字段/ARP首部(到op位置):

字段信息:

硬件类型:表示硬件地址的类型,值为1表示以太网地址。
协议类型:表示要映射的协议地址类型。它的值为0x0800表示IP地址类型硬件地址长度和协议地址长度以字节为单位,对于以太网上的IP地址的ARP请求或应答来说,他们的值分别为6和4。
操作类型(op):1表示ARP请求,2表示ARP应答。
发送端MAC地址:发送方设备的硬件地址。
发送端IP地址:发送方设备的IP地址。
目标MAC地址:接收方设备的硬件地址。
目标IP地址:接收方设备的IP地址。
posted @ 2021-01-16 16:50  罂粟不及你的美  阅读(693)  评论(0编辑  收藏  举报
目录代码