21-ND攻击防御配置
本章节下载: 21-ND攻击防御配置 (361.20 KB)
ND协议功能强大,但是却没有任何安全机制,容易被攻击者利用。如图1-1所示,当Device作为接入设备时,攻击者Host B可以仿冒其他用户、仿冒网关发送伪造的ND报文,对网络进行攻击:
· 如果攻击者仿冒其他用户的IPv6地址发送NS/NA/RS报文,将会改写网关或者其他用户的ND表项,导致被仿冒用户的报文错误的发送到攻击者的终端上。
· 如果攻击者仿冒网关发送RA报文,会导致其他用户的IPv6配置参数错误和ND表项被改写。
图1-1 ND攻击示意图
伪造的ND报文具有如下特点:
· 伪造的ND报文中源MAC地址和源链路层选项地址中的MAC地址不一致。
· 伪造的ND报文中源IPv6地址和源MAC地址的映射关系不是合法用户真实的映射关系。
根据上述攻击报文的特点,设备开发了多种功能对ND攻击进行检测,可以有效地防范ND攻击带来的危害。
如下所有配置均为可选,请根据实际情况选择配置。
ND协议报文源MAC地址一致性检查功能主要应用于网关设备上,防御ND报文中的源MAC地址和以太网数据帧首部中的源MAC地址不同的ND攻击。
开启本特性后,网关设备会对接收的ND协议报文进行检查。如果ND报文中的源MAC地址和以太网数据帧首部中的源MAC地址不一致,则认为是攻击报文,将其丢弃;否则,继续进行ND学习。
若开启ND日志信息功能,当用户ND报文中的源MAC地址和以太网数据帧首部中的源MAC地址不同时,会有相关的日志信息输出。设备生成的ND日志信息会交给信息中心模块处理,信息中心模块的配置将决定日志信息的发送规则和发送方向。关于信息中心的详细描述请参见“网络管理和监控配置指导”中的“信息中心”。
(1) 进入系统视图。
system-view
(2) 开启ND协议报文源MAC地址一致性检查功能。
ipv6 nd mac-check enable
缺省情况下,ND协议报文源MAC地址一致性检查功能处于关闭状态。
(3) (可选)开启ND日志信息功能。
ipv6 nd check log enable
缺省情况下,ND日志信息功能处于关闭状态。
为了防止设备输出过多的ND日志信息,一般 情况下建议不要开启此功能。
ND Detection功能用来检查用户的合法性,主要应用于接入设备上。开启ND Detection功能后,合法用户的ND报文可以正常转发,否则直接丢弃,从而防止仿冒用户、仿冒网关的攻击。
ND Detection可以用于接口、VLAN组网和VXLAN组网。
ND Detection功能将接入设备上的接口(VLAN组网)或AC(VXLAN组网)分为两种:
· ND信任接口/ND信任AC:不进行用户合法性检查;
· ND非信任接口/ND非信任AC:如果收到RA和RR消息,则认为是非法报文直接丢弃,如果收到其它类型的ND报文,则需要进行用户合法性检查,以防止仿冒用户的攻击。
对于接口开启ND Detection功能,接口为ND非信任口。
用户合法性检查的方法为:将ND报文中源IPv6地址和源MAC地址与设备上的IPv6 Source Guard静态绑定表项、ND Snooping表项和DHCPv6 Snooping安全表项进行匹配。如果设备上存在与报文源IPv6地址和源MAC地址匹配的任意一种表项,则认为该ND报文合法,进行转发。否则,认为该报文非法,直接丢弃。
各种表项的生成方式为:
· IPv6 Source Guard静态绑定表项:通过ipv6 source binding命令生成,详细介绍请参见“安全配置指导”中的“IP Source Guard”。
· ND Snooping表项:通过ND Snooping功能自动生成,详细介绍请参见“三层技术-IP业务配置指导”中的“IPv6邻居发现”。
· DHCPv6 Snooping安全表项:通过ND Snooping功能自动生成,详细介绍请参见“三层技术-IP业务配置指导”中的“DHCPv6”。
· 配置ND Detection功能时,必须至少配置IPv6 Source Guard静态绑定表项、DHCPv6 Snooping功能和ND Snooping功能三者之一,否则所有从ND非信任接口收到的ND报文都将被丢弃。
· 在与ND Detection功能配合时,IPv6 Source Guard绑定表项中必须指定VLAN参数,且该VLAN为配置ND Detection功能的VLAN,否则ND报文将无法通过接口的IPv6 Source Guard静态绑定表项的检查。
· 在接口上开启ND Detection功能或在接口所在VLAN开启ND Detection功能后,接口的ND Detection功能就可以开启;只有接口的ND Detection功能和接口所在VLAN的ND Detection功能都关闭,接口的ND Detection功能才能关闭。
(1) 进入系统视图。
system-view
(2) 进入二层接口视图。
interface interface-type interface-number
(3) 开启ND Detection功能。
ipv6 nd detection enable
缺省情况下,ND Detection功能处于关闭状态,即不进行用户合法性检查。
(1) 进入系统视图。
system-view
(2) 进入VLAN视图。
vlan vlan-id
(3) 开启ND Detection功能。
ipv6 nd detection enable
缺省情况下,ND Detection功能处于关闭状态。即不进行用户合法性检查。
(4) (可选)将不需要进行用户合法性检查的接口配置为ND信任接口。
a. 退回系统视图。
quit
b. 进入接口视图。
interface interface-type interface-number
c. 将不需要进行用户合法性检查的接口配置为ND信任接口。
ipv6 nd detection trust
缺省情况下,接口为ND非信任接口。
不能在VSI内同时配置ND Snooping功能和ND Detection功能,否则ND Snooping无法学到表项。
(1) 进入系统视图。
system-view
(2) 进入VSI视图。
vsi vsi-name
(3) 开启ND Detection功能。
ipv6 nd detection enable
缺省情况下,ND Detection功能处于关闭状态。即不进行用户合法性检查。
(4) (可选)配置ND Detection信任AC。
a. 退回系统视图。
quit
b. 进入接口视图。
interface interface-type interface-number
c. 进入以太网服务实例视图。
service-instance instance-id
d. 将不需要进行用户合法性检查的接口配置为ND信任接口。
ipv6 nd detection trust
缺省情况下,接口为ND非信任接口。
设备开启ND Detection功能后,可以根据IP Source Guard的本地表项和远端表项对接口上收到的用户报文进行安全检查。由于IP Source Guard远端表项不存在接口信息,ND Detection收到匹配远端表项的ND报文后,会因为收到报文的接口和IP Source Guard表项接口信息不匹配丢弃该报文。开启ND Detection忽略端口匹配检查功能后,ND Detection不会检查收到报文的接口信息,使匹配远端表项的ND报文能够通过检查,不会被丢弃。
(1) 进入系统视图。
system-view
(2) 开启ND Detection忽略端口匹配检查功能。
ipv6 nd detection port-match-ignore
缺省情况下,ND Detection忽略端口匹配检查功能处于关闭状态。
配置ND Detection日志功能后,设备在检测到非法ND报文时将生成检测日志,日志内容包括:
· 在VLAN组网中,显示的是受到攻击的端口编号;
· 非法ND报文的源IP地址;
· 非法ND报文的源MAC地址;
· 非法ND报文所属的VLAN ID;
· 丢弃的ND报文总数。
(1) 进入系统视图。
system-view
(2) 开启ND Detection日志功能。
ipv6 nd detection log enable
缺省情况下,ND Detection日志功能处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示配置后ND Detection的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,用户可以执行reset命令清除ND Detection的统计信息。
表1-1 ND Detection功能显示和维护
操作 |
命令 |
显示ND Detection丢弃报文的统计信息 |
display ipv6 nd detection statistics [ interface interface-type interface-number [ service-instance instance-id ] ] |
清除ND Detection的统计信息 |
reset ipv6 nd detection statistics [ interface interface-type interface-number [ service-instance instance-id ] ] |
用户Host A和Host B通过DeviceB接入网关Device A。用户Host A的IPv6地址是10::5/64,MAC地址是0001-0203-0405。用户Host B的IPv6地址是10::6/64,MAC地址是0001-0203-0607。
要求:在Device B上配置ND Detection功能对用户的合法性进行检查,保证合法用户的报文可以被正常转发,非法用户的报文被丢弃。
图1-2 配置ND Detection组网图
# 创建VLAN 10。
<DeviceA> system-view
[DeviceA] vlan 10
[DeviceA-vlan10] quit
# 配置接口Ten-GigabitEthernet1/0/3允许VLAN 10的报文通过。
[DeviceA] interface ten-gigabitethernet 1/0/3
[DeviceA-Ten-GigabitEthernet1/0/3] port link-type trunk
[DeviceA-Ten-GigabitEthernet1/0/3] port trunk permit vlan 10
[DeviceA-Ten-GigabitEthernet1/0/3] quit
# 配置VLAN接口10的IPv6地址。
[DeviceA] interface vlan-interface 10
[DeviceA-Vlan-interface10] ipv6 address 10::1/64
[DeviceA-Vlan-interface10] quit
(2) 配置Device B
# 创建VLAN 10。
<DeviceB> system-view
[DeviceB] vlan 10
[DeviceB-vlan10] quit
# 配置接口Ten-GigabitEthernet1/0/1~Ten-GigabitEthernet1/0/3允许VLAN 10的报文通过。
[DeviceB] interface ten-gigabitethernet 1/0/1
[DeviceB-Ten-GigabitEthernet1/0/1] port link-type access
[DeviceB-Ten-GigabitEthernet1/0/1] port access vlan 10
[DeviceB-Ten-GigabitEthernet1/0/1] quit
[DeviceB] interface ten-gigabitethernet 1/0/2
[DeviceB-Ten-GigabitEthernet1/0/2] port link-type access
[DeviceB-Ten-GigabitEthernet1/0/2] port access vlan 10
[DeviceB-Ten-GigabitEthernet1/0/2] quit
[DeviceB] interface ten-gigabitethernet 1/0/3
[DeviceB-Ten-GigabitEthernet1/0/3] port link-type trunk
[DeviceB-Ten-GigabitEthernet1/0/3] port trunk permit vlan 10
[DeviceB-Ten-GigabitEthernet1/0/3] quit
# 开启ND Detection功能。
[DeviceB] vlan 10
[DeviceB-vlan10] ipv6 nd detection enable
# 开启ND Snooping表项获取功能,通过ND报文的源地址(包括全球单播地址和链路本地地址)生成ND Snooping表项。
[DeviceB-vlan10] ipv6 nd snooping enable global
[DeviceB-vlan10] ipv6 nd snooping enable link-local
[DeviceB-vlan10] quit
# 将上行接口Ten-GigabitEthernet1/0/3配置为ND信任接口,下行接口Ten-GigabitEthernet1/0/1和Ten-GigabitEthernet1/0/2采用缺省配置,即为ND非信任接口。
[DeviceB] interface ten-gigabitethernet 1/0/3
[DeviceB-Ten-GigabitEthernet1/0/3] ipv6 nd detection trust
完成上述配置后,对于接口Ten-GigabitEthernet1/0/1和Ten-GigabitEthernet1/0/2收到的ND报文,基于ND Snooping安全表项进行检查。
RA Guard功能用来在二层接入设备上防范路由通告报文(RA报文)欺骗攻击。
二层接入设备收到目的MAC地址为单播或组播地址的RA报文后,RA Guard功能按照如下方式处理RA报文:
· 如果接收RA报文的接口配置了接口角色,则通过系统根据接口角色来选择转发还是丢弃该报文:
¡ 若接口角色为路由器,则直接转发RA报文;
¡ 若接口角色为用户,则直接丢弃RA报文。
· 如果接收RA报文的接口没有配置接口角色,则该报文继续匹配该接口属VLAN内的RA Guard策略:
¡ 若RA Guard策略中未配置任何匹配规则,则应用该策略的接口直接转发RA报文;
¡ 若RA Guard策略中配置了匹配规则,则RA报文需匹配策略下所有规则成功才会被转发;否则,该报文即被丢弃。
可根据接口在组网中的位置来配置接口的角色。如果确认接口连接的是用户主机,则配置接口角色为用户角色(host);如果确定接口连接的是路由器,则配置接口角色为路由器角色(router)。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
¡ 进入二层以太网接口视图
interface interface-type interface-number
¡ 进入二层聚合接口视图
interface bridge-aggregation interface-number
(3) 配置接口角色。
ipv6 nd raguard role { host | router }
缺省情况下,未配置接口角色。
对于下面两种情况,可通过配置RA Guard策略对RA报文按规则匹配条件进行过滤:
· 不能判断接口连接的设备/终端类型,即不能通过配置接口角色来选择丢弃还是转发RA报文;
· 确认接口连接的是路由器,但用户不希望直接转发RA报文而是进行过滤。
(1) 进入系统视图。
system-view
(2) 创建RA Guard策略,并进入RA Guard策略视图。
ipv6 nd raguard policy policy-name
(3) 配置RA Guard策略。请至少选择其中一项进行配置。
¡ 配置ACL匹配规则。
if-match acl { ipv6-acl-number | name ipv6-acl-name }
¡ 配置前缀匹配规则。
if-match prefix acl { ipv6-acl-number | name ipv6-acl-name }
¡ 配置源MAC地址匹配规则。
if-match mac-address acl { acl-number | name acl-name }
¡ 配置路由最高优先级匹配规则。
if-match router-preference maximum { high | low | medium }
¡ 配置被管理地址标志位匹配规则。
if-match autoconfig managed-address-flag { off | on }
¡ 配置其他信息配置标志位匹配规则。
if-match autoconfig other-flag { off | on }
¡ 配置RA报文内跳数最大值或最小值匹配规则。
if-match hop-limit { maximum | minimum } limit
缺省情况下,未配置RA Guard策略。
(4) 退回系统视图。
quit
(5) 进入VLAN视图。
vlan vlan-number
(6) 应用RA Guard策略。
ipv6 nd raguard apply policy [ policy-name ]
缺省情况下,未应用RA Guard策略。
RA Guard日志可以方便管理员定位问题和解决问题,对处理RA报文的信息进行的记录。开启RA Guard日志功能后,设备在检测到非法RA报文时将生成检测日志,日志内容包括:受到攻击的接口名称、RA报文的源IP地址和丢弃的RA报文总数。
设备生成的RA Guard日志信息会交给信息中心模块处理,信息中心模块的配置将决定日志信息的发送规则和发送方向。关于信息中心的详细描述请参见“网络管理和监控配置指导”中的“信息中心”。
(1) 进入系统视图。
system-view
(2) 开启RA Guard日志功能。
ipv6 nd raguard log enable
缺省情况下,RA Guard日志功能处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示RA Guard策略的信息。
表1-2 RA Guard 功能显示和维护
操作 |
命令 |
显示已创建的RA Guard策略信息 |
display ipv6 nd raguard policy [ policy-name ] |
显示RA Guard的报文统计信息 |
display ipv6 nd raguard statistics [ interface interface-type interface-number ] |
清除RA Guard的报文统计信息 |
reset ipv6 nd raguard statistics [ interface interface-type interface-number ] |
如图1-3所示,在Device B上通过接口Ten-GigabitEthernet1/0/1和Ten-GigabitEthernet1/0/2分别连接主机Host和Device C,通过接口Ten-GigabitEthernet1/0/3连接Device A。接口Ten-GigabitEthernet1/0/1、Ten-GigabitEthernet1/0/2和Ten-GigabitEthernet1/0/3都属于VLAN 10。
为防范路由通告报文(RA报文)欺骗攻击,可在Device B上配置RA Guard策略规则,并在VLAN 10下应用该策略规则:
· 接口Ten-GigabitEthernet1/0/2连接的是未知设备,用户希望该接口对RA报文按RA Guard策略规则进行匹配过滤;
· 接口Ten-GigabitEthernet1/0/1连接的是用户,用户希望该接口完全过滤RA报文将其直接丢弃;
· 接口Ten-GigabitEthernet1/0/3连接的是Device A,用户希望该接口完全信任RA报文将其直接转发。
图1-3 RA Guard功能组网图
# 在Device B上创建RA Guard策略policy1,并配置匹配规则。匹配最高路由优先级为高,被管理地址标志位置为1、其他信息配置标志位置为1、跳数最小值为100且最大值为120的RA报文。
<DeviceB> system-view
[DeviceB] ipv6 nd raguard policy policy1
[DeviceB-raguard-policy-policy1] if-match router-preference maximum high
[DeviceB-raguard-policy-policy1] if-match autoconfig managed-address-flag on
[DeviceB-raguard-policy-policy1] if-match autoconfig other-flag on
[DeviceB-raguard-policy-policy1] if-match hop-limit maximum 120
[DeviceB-raguard-policy-policy1] if-match hop-limit minimum 100
[DeviceB-raguard-policy-policy1] quit
# 配置接口Ten-GigabitEthernet1/0/1~Ten-GigabitEthernet1/0/3允许VLAN 10的报文通过,并在VLAN 10下应用RA Guard策略。
[DeviceB] interface ten-gigabitethernet 1/0/1
[DeviceB-Ten-GigabitEthernet1/0/1] port link-type access
[DeviceB-Ten-GigabitEthernet1/0/1] port access vlan 10
[DeviceB-Ten-GigabitEthernet1/0/1] quit
[DeviceB] interface ten-gigabitethernet 1/0/2
[DeviceB-Ten-GigabitEthernet1/0/2] port link-type access
[DeviceB-Ten-GigabitEthernet1/0/2] port access vlan 10
[DeviceB-Ten-GigabitEthernet1/0/2] quit
[DeviceB] interface ten-gigabitethernet 1/0/3
[DeviceB-Ten-GigabitEthernet1/0/3] port link-type trunk
[DeviceB-Ten-GigabitEthernet1/0/3] port trunk permit vlan 10
[DeviceB-Ten-GigabitEthernet1/0/3] quit
[DeviceB] vlan 10
[DeviceB-vlan10] ipv6 nd raguard apply policy policy1
[DeviceB-vlan10] quit
# 配置接口Ten-GigabitEthernet1/0/1为用户角色。
[DeviceB] interface ten-gigabitethernet 1/0/1
[DeviceB-Ten-GigabitEthernet1/0/1] ipv6 nd raguard role host
[DeviceB-Ten-GigabitEthernet1/0/1] quit
# 配置接口Ten-GigabitEthernet1/0/3为路由器角色。
[DeviceB] interface ten-gigabitethernet 1/0/3
[DeviceB-Ten-GigabitEthernet1/0/3] ipv6 nd raguard role router
[DeviceB-Ten-GigabitEthernet1/0/3] quit
完成上述配置后:
· 从接口Ten-GigabitEthernet1/0/2收到的RA报文,会匹配RA Guard策略policy1:
¡ 如果匹配失败则丢弃;
¡ 如果匹配成功,报文会被转发到VLAN 10下其他接口。
· 从接口Ten-GigabitEthernet1/0/1收到的RA报文,不会匹配RA Guard策略policy1,RA报文都被直接丢弃。
对于接口Ten-GigabitEthernet1/0/3收到的RA报文,不会和策略policy1下的规则进行匹配,RA报文都直接被转发,在同一VLAN的其他接口也会收到此RA报文。
在规模较大的组网环境中(比如园区网络),使用ND周期性扫描功能后,如果指定的扫描范围过大,会导致需要较长的时间才能扫描到异常下线的主机。开启本功能后系统可以通过Keepalive表项快速定位异常下线的主机,并在老化时间内对异常下线主机的状态进行监测。
ND的Keepalive表项的老化时间可以在系统视图和接口视图下同时配置,优先使用接口视图下的配置,如果接口视图下为缺省配置则使用系统视图下的配置。
用户上线后,系统会生成动态ND表项和IP Source Guard绑定表项。开启本功能后,系统会根据这些表项建立状态为在线的Keepalive表项。用户下线后其ND表项会被删除,对应的Keepalive表项的状态被置为离线。设备每隔一段时间会向处于离线状态的Keepalive表项对应的IPv6地址发送ND请求报文,直到Keepalive表项的状态恢复成在线或离线状态的Keepalive表项被删除。处于离线状态的Keepalive表项在老化时间内没有恢复成在线便会被删除。对于某处于离线状态的Keepalive表项,设备发送ND请求报文的间隔时间由已经向此Keepalive表项对应的IPv6地址发送的ND请求报文的个数决定。关于IP Source Guard的详细介绍,请参见“安全配置指导”中的“IP Source Guard”。
(1) 进入系统视图。
system-view
(2) (可选)设置ND的Keepalive表项扫描速率。
ipv6 nd scan keepalive send-rate pps
缺省情况下,ND的Keepalive表项扫描速率为每秒发送48个ND请求报文。
(3) (可选)配置ND的Keepalive表项的老化时间
ipv6 nd scan keepalive aging-time time
缺省情况下,系统视图下ND的Keepalive表项的老化时间为60分钟,接口视图下ND的Keepalive表项的老化时间采用系统视图下的配置。
(4) 进入接口视图。
interface interface-type interface-number
(5) 开启ND的Keepalive表项扫描功能。
ipv6 nd scan keepalive enable
缺省情况下,接口上的ND的Keepalive表项扫描功能处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示ND的Keepalive表项扫描的相关信息。
在用户视图下,用户可以执行reset命令清除接口向异常状态的Keepalive表项发送的ND请求报文的计数信息。
表1-3 ND的Keepalive表项扫描显示信息
操作 |
命令 |
显示ND的Keepalive表项信息 |
display ipv6 nd scan keepalive entry [ interface interface-type interface-number ] [ count ] |
显示接口向异常状态的Keepalive表项发送的NS报文个数 |
display ipv6 nd scan keepalive statistics [ slot slot-number ] [ interface interface-type interface-number ] |
清除接口向异常状态的Keepalive表项发送的NS报文的计数信息 |
reset ipv6 nd scan keepalive statistics [ slot slot-number ] |
设备处理大量源IPv6地址固定的ND报文会造成CPU繁忙,影响正常的业务处理。为了避免这种问题,可以在设备上开启源IPv6地址固定的ND攻击检测功能。本功能根据ND报文的源IPv6地址对上送CPU的ND报文进行统计,在固定时间(5秒)内,如果收到同一源IPv6地址(源IPv6地址固定)的ND报文超过一定的阈值,则认为存在攻击,系统会将此IPv6地址添加到攻击检测表项中。
在开启了ND日志信息功能的情况下(配置ipv6 nd check log enable命令),系统会根据设置的检查模式对源IPv6地址存在于攻击检测表项中的ND报文有如下处理:
· 如果设置的检查模式为过滤模式,则会打印日志信息并且将该源IPv6地址发送的ND报文过滤掉;
· 如果设置的检查模式为监控模式,则只打印日志信息,不会将该源IPv6地址发送的ND报文过滤掉。
根据ND报文的源IPv6地址对上送CPU的ND报文进行统计时,设备支持如下两种统计方式:
· 基于接口的统计方式:每个接口单独进行报文统计计数。在固定时间(5秒)内,如果某接口收到同一源IPv6地址(源IPv6地址固定)的ND报文超过一定的阈值,则认为存在攻击。
· 基于slot的统计方式:slot上所有接口的报文进行统一计数。在固定时间(5秒)内,如果某slot收到同一源IPv6地址(源IPv6地址固定)的ND报文超过一定的阈值,则认为存在攻击。
切换源IPv6地址固定的ND攻击检查模式时,如果从监控模式切换到过滤模式,则过滤模式立即生效;如果从过滤模式切换到监控模式,已生成的攻击检测表项在老化之前会继续按照过滤模式处理,新增的攻击检测表项会按照监控模式处理。
本功能支持与源MAC地址固定的ND攻击检测功能(配置ipv6 nd source-mac命令)同时配置,优先使用源MAC地址固定的ND攻击检测。
对于网关或一些重要的服务器,可能会发送大量ND报文,可以将这类设备的IPv6地址配置成ND攻击检测的保护IPv6地址。这样,即使该设备存在攻击也不会被检测或过滤。
(1) 进入系统视图。
system-view
(2) 开启源IPv6地址固定的ND攻击检测功能,并选择检查模式。
ipv6 nd source-ip { filter | monitor }
缺省情况下,源IPv6地址固定的ND攻击检测功能处于关闭状态。
(3) 配置源IPv6地址固定的ND报文攻击检测阈值。
ipv6 nd source-ip threshold threshold-value
源IPv6地址固定的ND报文攻击检测表项的阈值为30个报文。
(4) 配置源IPv6地址固定的ND报文攻击检测表项的老化时间。
ipv6 nd source-ip aging-time time
缺省情况下,源IPv6地址固定的ND报文攻击检测表项的老化时间为300秒,即5分钟。
(5) (可选)配置ND攻击检测的保护IPv6地址。
ipv6 nd source-ip exclude-ip ipv6-address&<1-10>
缺省情况下,未配置任何ND攻击检测的保护IPv6地址。
(6) 开启源IPv6地址固定的ND攻击检测日志信息功能。
ipv6 nd source-ip log enable
缺省情况下,源IPv6地址固定的ND攻击检测日志信息功能处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示配置后源IP地址固定的ND攻击检测的运行情况,通过查看显示信息验证配置的效果。
表1-4 源IP地址固定的ND攻击检测显示和维护
操作 |
命令 |
显示检测到的源IP地址固定的ND攻击检测表项 |
display ipv6 nd source-ip { interface interface-type interface-number [ slot slot-number ] | slot slot-number } |
设备处理大量源MAC地址固定的ND报文会造成CPU繁忙,影响正常的业务处理。为了避免这种问题,可以在设备上开启源MAC地址固定的ND攻击检测功能。
本特性根据ND报文的源MAC地址对上送CPU的ND报文进行统计,在固定时间(5秒)内,如果收到同一源MAC地址(源MAC地址固定)的ND报文超过一定的阈值,则认为存在攻击,系统会将此MAC地址添加到攻击检测表项中。
在开启了ND日志信息功能的情况下(配置ipv6 nd check log enable命令),系统会根据设置的检查模式对存在于攻击检测表项中的MAC地址有如下处理:
· 如果设置的检查模式为过滤模式,则会打印日志信息并且将该源MAC地址发送的ND报文过滤掉;
· 如果设置的检查模式为监控模式,则只打印日志信息,不会将该源MAC地址发送的ND报文过滤掉。
对于已添加到源MAC地址固定的ND攻击检测表项中的MAC地址,在等待设置的老化时间后,如果老化时间内丢弃的ND报文个数大于或等于一个特定值,则设备会重置该表项的老化时间;如果小于该特定值,则设备删除该源MAC地址固定的ND攻击表项,MAC地址会重新恢复成普通MAC地址。
根据ND报文的源MAC地址对上送CPU的ND报文进行统计时,设备支持如下两种统计方式:
· 基于接口的统计方式:每个接口单独进行报文统计计数。在一个检测周期内,如果某接口收到同一源MAC地址(源MAC地址固定)的ND报文超过一定的阈值,则认为存在攻击。
· 基于slot的统计方式:slot上所有接口的报文进行统一计数。在一个检测周期内,如果某slot收到同一源MAC地址(源MAC地址固定)的ND报文超过一定的阈值,则认为存在攻击。
切换源MAC地址固定的ND攻击检查模式时,如果从监控模式切换到过滤模式,过滤模式马上生效;如果从过滤模式切换到监控模式,已生成的攻击检测表项在老化之前会继续按照过滤模式处理,新增的攻击检测表项会按照监控模式处理。
对于网关或一些重要的服务器,可能会收到大量ND报文,为了使这些ND报文不被过滤掉,可以将这类设备的MAC地址配置成保护MAC地址,这样,即使该设备上存在攻击也不会被检测或过滤。
(1) 进入系统视图。
system-view
(2) 开启源MAC地址固定的ND攻击检测功能,并指定检查模式。
ipv6 nd source-mac { filter | monitor }
缺省情况下,源MAC地址固定的ND攻击检测功能处于关闭状态。
(3) (可选)配置源MAC地址固定的ND报文攻击检测的阈值。
ipv6 nd source-mac threshold threshold-value
缺省情况下,源MAC地址固定的ND报文攻击检测表项的阈值为30个。
(4) (可选)配置源MAC地址固定的ND报文攻击检测的老化时间。
ipv6 nd source-mac aging-time time
缺省情况下,源MAC地址固定的ND攻击检测表项的老化时间为300秒,即5分钟。
(5) (可选)配置保护MAC地址。
ipv6 nd source-mac exclude-mac mac-address&<1-10>
缺省情况下,未配置任何ND攻击检测的保护MAC地址。
(6) (可选)开启源MAC地址固定的ND攻击检测日志信息功能。
ipv6 nd source-mac log enable
缺省情况下,源MAC地址固定的ND攻击检测日志信息功能处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示配置后源MAC地址固定的ND攻击检测的运行情况,通过查看显示信息验证配置的效果。
表1-5 源MAC地址固定的ND攻击检测显示和维护
操作 |
命令 |
显示检测到的源MAC地址固定的ND攻击检测表项信息 |
display ipv6 nd source-mac { interface interface-type interface-number [ slot slot-number ] | slot slot-number } |
用户可根据业务需求开启指定功能的ND模块的告警:
· 当开启了ND模块邻居表项达到阈值的告警功能后,设备会将当前的邻居表项信息记录在告警信息中,生成的告警信息将发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关特性。
· 当开启了ND模块终端与本机冲突的告警功能后,设备将冲突报文的IPv6地址、MAC地址等信息作为告警信息发送出去,生成的告警信息将发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关特性。
· 当开启了ND模块ND Miss消息限速的告警功能后,设备将报文速率信息作为告警信息发送出去,生成的告警信息将发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关特性。当设备收到目标IP地址不能解析的IP报文时,会向CPU上送ND Miss消息。
· 开启了ND报文队列缓存报文数量超过阈值的告警功能后,当设备的ND报文缓存队列中缓存的报文数量超过队列容量上限的80%时,设备会将当前队列中缓存的报文数量作为告警信息发送到设备的SNMP模块。
· 开启了ND报文发送限速的告警功能后,如果设备每秒发送的ND报文的个数超过了设备定制的阈值,设备会将超速峰值作为告警信息发送出去,生成的告警信息将发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关特性。
· 开启了ND模块终端用户间IPv6地址冲突的告警功能后,设备会将冲突报文的发送端IPv6地址和MAC地址、发生冲突的本地表项的MAC地址等信息作为告警信息发送到设备的SNMP模块。
可以通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关特性。有关告警信息的详细描述,请参见“网络管理和监控配置指导”中的“SNMP”。
(1) 进入系统视图。
system-view
(2) 开启ND模块的告警功能。
snmp-agent trap enable nd [ entry-limit | local-conflict | nd-miss | pkt-threshold | rate-limit | user-ip-conflict ] *
缺省情况下,ND模块的告警功能处于关闭状态。
如果不指定任何参数,则表示打开ND模块的所有告警功能。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!