48小时系统班试听入口

Dynamic ARP Inspection(动态ARP检测)功能,简称DAI

发布作者:新盟教育 发布日期:2023-02-03 浏览人数:2091人

网工实用技术详解

资源放送 

↓ 扫一扫 

领取动态ARP检测技术录屏资

网页同步文章.png


Dynamic ARP Inspection简介

Dynamic ARP Inspection(动态ARP检测)功能,简称DAI功能。通过检查ARP(Address Resolution Protocol,地址解析协议)报文的合法性,发现并防止ARP欺骗攻击,增强网络安全性。DAI功能主要分为以下两类:

1.端口DAI功能:对指定端口接收到的ARP报文进行合法性检测,便于发现并防止ARP欺骗攻击。

ARP报文合法性检测的依据为端口IP source Guard绑定表项,具体检测原理:接收到的ARP报文中,发送端IP地址,源MAC地址及VLAN ID与端口IP source Guard绑定表项完全匹配,则该ARP报文为合法报文,对其进行转发;否则,该ARP报文为非法报文,将其丢弃,并记录日志信息。

2.全局DAI功能:对所有端口接收到的ARP报文进行合法性检测,防止伪冒用户发送伪造的ARP报文,导致设备建立错误的ARP表项。

ARP报文合法性检测的依据为全局IP source Guard绑定表项,具体检测原理:接收到的ARP报文中,发送端IP地址与全局IP source Guard绑定表项中的IP地址相同,但源MAC地址不同时,该ARP报文为伪造报文,将其丢弃,不记录日志信息。

端口DAI,全局DAI功能还会对ARP报文进行有效性检测,具体检测原理:接收到的ARP报文中的源MAC地址与发送端的MAC地址不同,则该报文为无效报文,将其丢弃,不记录日志信息。

3.端口ARP攻击检测:对指定端口接收到的ARP报文不进行合法性检测,只记录日志信息,用于发现ARP攻击。

配置端口Dynamic ARP Inspection功能

配置条件:

在配置端口Dynamic ARP Inspection功能前,首先要完成以下任务:

1、配置端口IP Source Guard绑定表项

使能端口DAI功能后,系统会依据端口IP Source Guard绑定表项,对端口接收到的ARP报文进行合法性检测,非法报文会被丢弃,并被记录到日志中。日志中记录的内容包括:VLAN ID,接收端口,发送端IP地址,目的IP地址,发送端MAC地址,目的MAC地址,相同非法ARP报文数。

用户可以根据记录的日志信息来作进一步分析,缺省情况下,日志信息周期性输出,可通过配置日志输出间隔时间来控制报文的记录,输出及老化。日志输出间隔时间作为以下日志相关参数的基础值:

① 日志刷新周期:用于判断日志是否需输出及老化。如果配置的日志输出间隔时间小于5秒,则日志刷新周期等于1秒,否则,日志刷新周期等于五分之一的日志输出间隔时间;

② 日志老化时间:老化时间超时后,日志会被删除。日志老化时间为两倍的日志输出间隔时间;

③ 日志令牌:日志刷新周期内,允许记录最大的日志数目。日志令牌数为15倍的日志刷新周期值。

使能端口DAI功能后,还可以配置端口ARP限速功能,即对每秒处理的ARP报文数目进行限制,避免系统由于长期处理大量ARP报文,导致其他协议报文无法及时得到处理。

说明:

端口ARP限速功能,即对每秒处理的ARP报文数目进行限制,避免系统由于长期处于大量ARP报文,导致其他协议报文无法及时得到处理。一秒内接收到的ARP报文数目超过速率上限值后,这一秒内后续接收到的ARP报文会被丢弃。如果端口连续20秒接收到的ARP报文都超速,则会将相应的端口关闭,来隔离报文冲击源。

  • 进入二层以太接口配置模式:interface interface-name;

  • 使能端口DAI功能:ip arp inspection;

  • 配置端口处理ARP报文的上限值:ip arp inspection;

  • rate-limit limit-value:缺省情况下,端口处理ARP报文的上限值为15pps

  • 回退到全局配置模式 exit;

  • 配置缓存日志数目:ip arp inspection;

  • log-buffer buffer-size:缺省情况下,系统可以缓存的日志数为32,配置为0,表示日志不进行缓存,即检测到非法ARP报文后,日志直接输出到终端;

  • 配置日志输出间隔时间:ip arp inspection。


log-interval seconds:

缺省情况下,日志输出间隔时间为20秒,配置为0,表示日志的输出不需等待,即检测到非法ARP报文后,日志直接输出到终端。

  • 配置日志输出级别:ip arp inspection;

  • log-level log-level:缺省情况下,日志输出级别为6。


说明:

1.端口DAI功能使能后,对应端口收到的所有ARP报文(广播ARP及单播ARP)都重定向到CPU进行检测、软件转发、日志记录等,当ARP报文量较大时会严重消耗CPU资源,因此,在设备通信正常的情况下,不建议使能端口DAI功能,当怀疑网络中存在ARP欺骗攻击时,才需要使能端口DAI功能来进行检测和定位。

2.同一端口下,端口DAI功能不能与端口安全功能同时使能。

3.在汇聚组配置模式下配置端口处理ARP报文速率上限值后,该汇聚组的每个成员端口的ARP报文速率上限值均为该值。

配置全局Dynamic ARP Inspection功能

配置条件:在配置全局Dynamic ARP Inspection功能前,首先完成以下任务:

配置全局IP Source Guard绑定表项。

使能全局DAI功能后,系统会依据全局IP Source Guard绑定表项,对接收到的ARP报文进行合法性检查,非法报文直接丢弃,不会记录日志。

  • 进入全局配置模式:configure terminal;

  • 使能全局DAI功能: arp-security。


配置Dynamic ARP Inspection ARP攻击检测

使能ARP攻击检测后,系统会对接收到的ARP报文不进行合法性检查,只记录日志。

  • 进入全局配置模式:configure terminal;

  • 进入二层以太接口配置模式:interface interface-name;

  • 使能端口ARP攻击检测:ip arp inspection attack。


配置DAI基本功能:

网络需求:

① PC1,PC2通过Device接入IP Network;② 在Device上配置端口DAI功能,防止ARP攻击和欺骗。

网络拓扑:

2.3-网络-1.png


配置步骤:

步骤1:

在Device上配置VLAN和端口的链路类型:

#创建VLAN2。
Device#configure terminal
Device(config)#vlan 2
Device(config-vlan2)#exit
#配置端口gigabitethernet 0/1的链路类型为Access,允许VLAN2的业务通过。
Device(config)#interface gigabitethernet 0/1
Device(config-if-gigabitethernet0/1)#switchport mode access  
Device(config-if-gigabitethernet0/1)#switchport access vlan 2
Device(config-if-gigabitethernet0/1)#exit


步骤2:

在Device上配置端口DAI功能:

#在端口gigabitethernet0/1上使能端口DAI功能,并配置端口gigabitethernet0/1处理ARP报文的上限值为30pps。
Device(config)#interface gigabitethernet 0/1
Device(config-if-gigabitethernet0/1)#ip arp inspection
Device(config-if-gigabitethernet0/1)#ip arp inspection rate-limit 30
Device(config-if-gigabitethernet0/1)#exit


步骤3:

在Device上配置绑定表项:

#在端口gigabitethernet0/1上配置MAC地址为0012.0100.0001,IP地址为192.168.1.2,VLAN为2的端口IP Source Guard绑定表项。
Device(config)#interface gigabitethernet 0/1
Device(config-if-gigabitethernet0/1)#ip source binding 0012.0100.0001 vlan 2 192.168.1.2
Device(config-if-gigabitethernet0/1)#exit


步骤4:

检验结果:

#查看DAI相关配置信息。
Device#show ip arp inspection
        Dynamic ARP Inspection information:
        Dynamic ARP Inspection log buffer size: 30
        Dynamic ARP Inspection log Interval:    20
        Dynamic ARP Inspection log Level:       6
        Dynamic ARP Inspection interface information :
        -------------------------------------------
        interface            status     rate-limit(pps)  attack
        gi0/1                enable     30               OFF
        gi0/2                disable    15               OFF
        ……
#当端口gigabitethernet0/1接收ARP报文的速率超过30pps时,Device会将超过速率的报文丢弃,并输出以下提示信息。
Jan  1 02:21:06: The rate on interface gigabitethernet0/1 too fast ,the arp packet drop!
#当端口gigabitethernet0/1接收ARP报文的速率超过30pps且持续20秒时,Device将关闭端口gigabitethernet0/1,并输出以下提示信息。
Jan  1 02:21:26: %LINK-INTERFACE_DOWN-4: interface gigabitethernet0/1, changed state to down
Jan  1 02:21:26: The rate of arp packet is too fast,dynamic arp inspection shut down the gigabitethernet0/1 !
#当端口gigabitethernet0/1接收到的ARP报文与绑定表项不一致时,Device记录以下格式的非法信息到DAI日志中,并定时输出。
Jan  1 07:19:49:  SEC-7-DARPLOG: sender IP address: 192.168.1.3 sender MAC address:0011.0100.0001 target IP address: 0.0.0.0 target MAC address:0000.0000.0000 vlan ID:2 interface ID: gigabitethernet0/1 record packet :32 packet(s)
#查看DAI日志。
Device#show ip arp inspection log-information
LogCountInBuffer:1
SEC-7-DARPLOG: sender IP address: 192.168.1.3 sender MAC address:0011.0100.0001 target IP address: 0.0.0.0 target MAC address:0000.0000.0000 vlan ID:2 interface ID:gigabitethernet0/1 record packet :0 packet(s)


DAI与DHCP Snooping联用:

网络需求:

1.PC1、PC2通过Device1接入IP Network,PC2为DHCP客户端,Device2为DHCP中继。

2.Device1配置DHCP Snooping及端口DAI功能,实现PC2能正常访问IP Network,PC1不能访问IP Network。

网络拓扑:

2.3-网络-2.png


配置步骤:

步骤1:

在Device1上配置VLAN和端口的链路类型:

#创建VLAN3。
Device1#configure terminal
Device1(config)#vlan 3
Device1(config-vlan3)#exit
#配置端口gigabitethernet0/1和端口gigabitethernet0/2的链路类型为Access,都允许VLAN3的业务通过。
Device1(config)#interface gigabitethernet 0/1-0/2
Device1(config-if-range)#switchport access vlan 3
Device1(config-if-range)#exit


步骤2:

在Device2上配置VLAN和端口的链路类型:

#创建VLAN2和VALN3。
Device2#configure terminal
Device2(config)#vlan 2-3
#配置端口gigabitethernet0/1和端口gigabitethernet0/2的链路类型为Access,端口gigabitethernet0/1允许VLAN2的业务通过,端口gigabitethernet0/2允许VLAN3的业务通过。
Device2(config)#interface gigabitethernet 0/1
Device2(config-if-gigabitethernet0/1)#switchport mode access
Device2(config-if-gigabitethernet0/1)#switchport access vlan 2
Device2(config-if-gigabitethernet0/1)#exit
Device2(config)#interface gigabitethernet 0/2
Device2(config-if-gigabitethernet0/2)#switchport mode access
Device2(config-if-gigabitethernet0/2)#switchport access vlan 3
Device2(config-if-gigabitethernet0/2)#exit


步骤3:

在Device1和Device2上配置对应VLAN接口及IP地址。(略)

步骤4:

在Device1上配置DHCP Snooping功能:

#使能DHCP Snooping功能,配置端口gigabitethernet0/2为信任端口。
Device1(config)#dhcp-snooping
Device1(config)#interface gigabitethernet 0/2
Device1(config-if-gigabitethernet0/2)#dhcp-snooping trust
Device1(config-if-gigabitethernet0/2)#exit


步骤5:

在Device1上配置端口DAI功能:

#端口gigabitethernet0/1上使能端口DAI功能。
Device1(config)#interface gigabitethernet 0/1
Device1(config-if-gigabitethernet0/1)#ip arp inspection
Device1(config-if-gigabitethernet0/1)#exit


步骤6:

在Device2上配置DHCP中继服务器IP地址:

#配置DHCP中继服务器IP地址为198.168.2.1。
Device2(config)#ip dhcp-server 192.168.2.1


步骤7:

检验结果:

#PC2成功获取到地址后,在Device1上查看DHCP Snooping动态表项。
Device1#show dhcp-snooping database
        dhcp-snooping database:
        database entries count:1
        database entries delete time :300
        ---------------------------------
        macAddr          ipAddr           transtion-id     vlan   interface            leaseTime(s)     status    
        0013.0100.0001   192.168.1.100    2                2      gi0/1               107990           active   
#PC2能正常访问IP Network,PC1不能访问IP Network。

1671585dc74035d34ac554d5f2ae42fc.jpg

推荐阅读

>>>【独家首发】新版HCIE考试解读直播回顾
>>> 重磅!华为HCIE认证改版升级通知!
>>>【命令解析】Linux用户行为的常用命令
>>> 网工必备通信基础知识,还不知道你就out了?
>>>【必备干货】网工入门必会桥接教程,外网+GNS3+Vmware
>>>【技术指南】5分钟搞清楚OSPF链路状态路由协议