• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

09-ACL和QoS配置指导

目录

01-ACL配置

本章节下载 01-ACL配置  (330.02 KB)

docurl=/cn/Service/Document_Software/Document_Center/Switches/Catalog/S12500/S12500/Configure/Operation_Manual/H3C_S12500_CG-R7374-6W732/09/201505/868923_30005_0.htm

01-ACL配置


1 ACL

说明

·     设备支持两种运行模式:独立运行模式和IRF模式,缺省情况为独立运行模式。有关IRF模式的介绍,请参见“虚拟化技术配置指导”中的“IRF”。

·     本文中提到的EB类单板、EC1类单板、EC2类单板、EF类单板、FD类单板和FG类单板指的是丝印后缀分别为EB、EC1、EC2、EF、FD、FG的单板。

 

1.1  ACL简介

ACL(Access Control List,访问控制列表)是一或多条规则的集合,用于识别报文流。这里的规则是指描述报文匹配条件的判断语句,匹配条件可以是报文的源地址、目的地址、端口号等。网络设备依照这些规则识别出特定的报文,并根据预先设定的策略对其进行处理。

ACL可以应用在诸多领域,其中最基本的就是应用ACL进行报文过滤,具体配置过程请参见“1.3.7  应用ACL进行报文过滤”。此外,ACL还可应用于诸如路由、安全、QoS等业务中,有关ACL在这些业务中的具体应用方式,请参见相关的配置指导。

提示

ACL本身只能识别报文,而无法对识别出的报文进行处理,对这些报文的具体处理方式由应用ACL的业务模块来决定。

 

1.1.1  ACL的编号和名称

用户在创建ACL时必须为其指定编号,不同的编号对应不同类型的ACL,如表1-1所示;同时,为了便于记忆和识别,用户在创建ACL时还可选择是否为其设置名称。ACL一旦创建,便不允许用户再为其设置名称、修改或删除其原有名称。

当ACL创建完成后,用户就可以通过指定编号或名称的方式来指定该ACL,以便对其进行操作。

说明

基本ACL、高级ACL的编号和名称各在其适用的IP版本(IPv4和IPv6)中唯一。

 

1.1.2  ACL的分类

根据规则制订依据的不同,可以将ACL分为如表1-1所示的几种类型

表1-1 ACL的分类

ACL类型

编号范围

适用的IP版本

规则制订依据

基本ACL

2000~2999

IPv4

报文的源IPv4地址

IPv6

报文的源IPv6地址

高级ACL

3000~3999

IPv4

报文的源IPv4地址、目的IPv4地址、报文优先级、IPv4承载的协议类型及特性等三、四层信息

IPv6

报文的源IPv6地址、目的IPv6地址、报文优先级、IPv6承载的协议类型及特性等三、四层信息

二层ACL

4000~4999

IPv4和IPv6

报文的源MAC地址、目的MAC地址、802.1p优先级、链路层协议类型等二层信息

用户自定义ACL

5000~5999

IPv4和IPv6

以报文头为基准,指定从报文的第几个字节开始与掩码进行“与”操作,并将提取出的字符串与用户定义的字符串进行比较,从而找出相匹配的报文

 

1.1.3  ACL的规则匹配顺序

当一个ACL中包含多条规则时,报文会按照一定的顺序与这些规则进行匹配,一旦匹配上某条规则便结束匹配过程。ACL的规则匹配顺序有以下两种:

·     配置顺序:按照规则编号由小到大进行匹配。

·     自动排序:按照“深度优先”原则由深到浅进行匹配,各类型ACL的“深度优先”排序法则如表1-2所示。

说明

用户自定义ACL的规则只能按照配置顺序进行匹配,其它类型的ACL则可选择按照配置顺序或自动顺序进行匹配。

 

表1-2 各类型ACL的“深度优先”排序法则

ACL类型

“深度优先”排序法则

IPv4基本ACL

(1)     先判断规则的匹配条件中是否包含VPN实例,包含者优先

(2)     如果VPN实例的包含情况相同,再比较源IPv4地址范围,较小者优先

(3)     如果源IPv4地址范围也相同,再比较配置的先后次序,先配置者优先

IPv4高级ACL

(1)     先判断规则的匹配条件中是否包含VPN实例,包含者优先

(2)     如果VPN实例的包含情况相同,再比较协议范围,指定有IPv4承载的协议类型者优先

(3)     如果协议范围也相同,再比较源IPv4地址范围,较小者优先

(4)     如果源IPv4地址范围也相同,再比较目的IPv4地址范围,较小者优先

(5)     如果目的IPv4地址范围也相同,再比较四层端口(即TCP/UDP端口)号的覆盖范围,较小者优先

(6)     如果四层端口号的覆盖范围无法比较,再比较配置的先后次序,先配置者优先

IPv6基本ACL

(1)     先判断规则的匹配条件中是否包含VPN实例,包含者优先

(2)     如果VPN实例的包含情况相同,再比较源IPv6地址范围,较小者优先

(3)     如果源IPv6地址范围也相同,再比较配置的先后次序,先配置者优先

IPv6高级ACL

(1)     先判断规则的匹配条件中是否包含VPN实例,包含者优先

(2)     如果VPN实例的包含情况相同,再比较协议范围,指定有IPv6承载的协议类型者优先

(3)     如果协议范围相同,再比较源IPv6地址范围,较小者优先

(4)     如果源IPv6地址范围也相同,再比较目的IPv6地址范围,较小者优先

(5)     如果目的IPv6地址范围也相同,再比较四层端口(即TCP/UDP端口)号的覆盖范围,较小者优先

(6)     如果四层端口号的覆盖范围无法比较,再比较配置的先后次序,先配置者优先

二层ACL

(1)     先比较源MAC地址范围,较小者优先

(2)     如果源MAC地址范围相同,再比较目的MAC地址范围,较小者优先

(3)     如果目的MAC地址范围也相同,再比较配置的先后次序,先配置者优先

 

说明

·     比较IPv4地址范围的大小,就是比较IPv4地址通配符掩码中“0”位的多少:“0”位越多,范围越小。通配符掩码(又称反向掩码)以点分十进制表示,并以二进制的“0”表示“匹配”,“1”表示“不关心”,这与子网掩码恰好相反,譬如子网掩码255.255.255.0对应的通配符掩码就是0.0.0.255。此外,通配符掩码中的“0”或“1”可以是不连续的,这样可以更加灵活地进行匹配,譬如0.255.0.255就是一个合法的通配符掩码。

·     比较IPv6地址范围的大小,就是比较IPv6地址前缀的长短:前缀越长,范围越小。

·     比较MAC地址范围的大小,就是比较MAC地址掩码中“1”位的多少:“1”位越多,范围越小。

 

1.1.4  ACL的步长

ACL中的每条规则都有自己的编号,这个编号在该ACL中是唯一的。在创建规则时,可以手工为其指定一个编号,如未手工指定编号,则由系统为其自动分配一个编号。由于规则的编号可能影响规则匹配的顺序,因此当由系统自动分配编号时,为了方便后续在已有规则之前插入新的规则,系统通常会在相邻编号之间留下一定的空间,这个空间的大小(即相邻编号之间的差值)就称为ACL的步长。譬如,当步长为5时,系统会将编号0、5、10、15……依次分配给新创建的规则。

系统为规则自动分配编号的方式如下:系统从0开始,按照步长自动分配一个大于现有最大编号的最小编号。譬如原有编号为0、5、9、10和12的五条规则,步长为5,此时如果创建一条规则且不指定编号,那么系统将自动为其分配编号15。

如果步长发生了改变,ACL内原有全部规则的编号都将自动从0开始按新步长重新排列。譬如,某ACL内原有编号为0、5、9、10和15的五条规则,当修改步长为2之后,这些规则的编号将依次变为0、2、4、6和8。

1.1.5  ACL对分片报文的处理

传统报文过滤只对分片报文的首个分片进行匹配过滤,对后续分片一律放行,因此网络攻击者通常会构造后续分片进行流量攻击。为提高网络安全性,ACL规则缺省会匹配所有非分片报文和分片报文的全部分片,但这样又带来效率低下的问题。为了兼顾网络安全和匹配效率,可将过滤规则配置为仅对后续分片有效。

1.2  ACL配置任务简介

表1-3 ACL配置任务简介

配置任务

说明

详细配置

配置基本ACL

四者至少选其一

1.3.1 

配置高级ACL

1.3.2 

配置二层ACL

1.3.3 

配置用户自定义ACL

1.3.4 

复制ACL

可选

1.3.5 

配置ACL的硬件模式

可选

1.3.6 

应用ACL进行报文过滤

可选

1.3.7 

 

1.3  配置ACL

1.3.1  配置基本ACL

1. 配置IPv4基本ACL

IPv4基本ACL根据报文的源IP地址来制订规则,对IPv4报文进行匹配。

表1-4 配置IPv4基本ACL

操作

命令

说明

进入系统视图

system-view

-

创建IPv4基本ACL,并进入IPv4基本ACL视图

acl number acl-number [ name acl-name ] [ match-order { auto | config } ]

缺省情况下,不存在任何ACL

IPv4基本ACL的编号范围为2000~2999

如果在创建IPv4基本ACL时为其设置了名称,则也可使用acl name acl-name命令进入其视图

(可选)配置ACL的描述信息

description text

缺省情况下,ACL没有任何描述信息

(可选)配置规则编号的步长

step step-value

缺省情况下,规则编号的步长为5

创建规则

rule [ rule-id ] { deny | permit } [ counting | fragment | logging | source { object-group addr-group-name | source-address source-wildcard | any } | time-range time-range-name | vpn-instance vpn-instance-name ] *

缺省情况下,IPv4基本ACL内不存在任何规则

logging参数需要使用该ACL的模块支持日志记录功能,例如报文过滤

当设备为PE设备时,对于VPN私网侧的报文无法匹配IPv4基本ACL规则中的VPN实例(即无法匹配rule中的vpn-instance参数)。当设备为MCE设备时VPN的报文也无法匹配IPv4基本ACL规则中的VPN实例。关于PE设备、MCE设备的介绍请参见“MPLS配置指导”中的“MPLS L3VPN”

(可选)为指定规则配置描述信息

rule rule-id comment text

缺省情况下,规则没有任何描述信息

 

2. 配置IPv6基本ACL

IPv6基本ACL根据报文的源IPv6地址来制订规则,对IPv6报文进行匹配。

表1-5 配置IPv6基本ACL

操作

命令

说明

进入系统视图

system-view

-

创建IPv6基本ACL,并进入IPv6基本ACL视图

acl ipv6 number acl-number [ name acl-name ] [ match-order { auto | config } ]

缺省情况下,不存在任何ACL

IPv6基本ACL的编号范围为2000~2999

如果在创建IPv6基本ACL时为其设置了名称,则也可使用acl ipv6 name acl-name命令进入其视图

(可选)配置ACL的描述信息

description text

缺省情况下,ACL没有任何描述信息

(可选)配置规则编号的步长

step step-value

缺省情况下,规则编号的步长为5

创建规则

rule [ rule-id ] { deny | permit } [ counting | fragment | logging | routing [ type routing-type ] | source { object-group addr-group-name | source-address source-prefix | source-address/source-prefix | any } | time-range time-range-name | vpn-instance vpn-instance-name ] *

缺省情况下,IPv6基本ACL内不存在任何规则

logging参数需要使用该ACL的模块支持日志记录功能,例如报文过滤

设备暂不支持vpn-instance参数

(可选)为指定规则配置描述信息

rule rule-id comment text

缺省情况下,规则没有任何描述信息

 

1.3.2  配置高级ACL

1. 配置IPv4高级ACL

IPv4高级ACL可根据报文的源IP地址、目的IP地址、报文优先级、IP承载的协议类型及特性(如TCP/UDP的源端口和目的端口、TCP报文标识、ICMP协议的消息类型和消息码等)等信息来制定规则,对IPv4报文进行匹配。用户可利用IPv4高级ACL制订比IPv4基本ACL更准确、丰富、灵活的规则。

表1-6 配置IPv4高级ACL

操作

命令

说明

进入系统视图

system-view

-

创建IPv4高级ACL,并进入IPv4高级ACL视图

acl number acl-number [ name acl-name ] [ match-order { auto | config } ]

缺省情况下,不存在任何ACL

IPv4高级ACL的编号范围为3000~3999

如果在创建IPv4高级ACL时为其设置了名称,则也可使用acl name acl-name命令进入其视图

(可选)配置ACL的描述信息

description text

缺省情况下,ACL没有任何描述信息

(可选)配置规则编号的步长

step step-value

缺省情况下,规则编号的步长为5

创建规则

rule [ rule-id ] { deny | permit } protocol [ { { ack ack-value | fin fin-value | psh psh-value | rst rst-value | syn syn-value | urg urg-value } * | established } | counting | destination { object-group addr-group-name | dest-address dest-wildcard | any } | destination-port { object-group port-group-name | operator port1 [ port2 ] } | { dscp dscp | { precedence precedence | tos tos } * } | fragment | icmp-type { icmp-type [ icmp-code ] | icmp-message } | logging | source { object-group addr-group-name | source-address source-wildcard | any } | source-port { object-group port-group-name | operator port1 [ port2 ] } | time-range time-range-name | vpn-instance vpn-instance-name ] *

缺省情况下,IPv4高级ACL内不存在任何规则

logging参数需要使用该ACL的模块支持日志记录功能,例如报文过滤

当设备为PE设备时,对于VPN私网侧的报文无法匹配IPv4高级ACL规则中的VPN实例(即无法匹配rule中的vpn-instance参数)。当设备为MCE设备时VPN的报文也无法匹配IPv4高级ACL规则中的VPN实例。关于PE设备、MCE设备的介绍请参见“MPLS配置指导”中的“MPLS L3VPN”

当EB/EC2/FD类单板工作在ACL基本模式时,该类单板引用的IPv4高级ACL不支持vpn-instance参数

(可选)为指定规则配置描述信息

rule rule-id comment text

缺省情况下,规则没有任何描述信息

 

2. 配置IPv6高级ACL

IPv6高级ACL可根据报文的源IPv6地址、目的IPv6地址、报文优先级、IPv6承载的协议类型及特性(如TCP/UDP的源端口和目的端口、TCP报文标识、ICMPv6协议的消息类型和消息码等)等信息来制定规则,对IPv6报文进行匹配。用户可利用IPv6高级ACL制订比IPv6基本ACL更准确、丰富、灵活的规则。

表1-7 配置IPv6高级ACL

操作

命令

说明

进入系统视图

system-view

-

创建IPv6高级ACL,并进入IPv6高级ACL视图

acl ipv6 number acl-number [ name acl-name ] [ match-order { auto | config } ]

缺省情况下,不存在任何ACL

IPv6高级ACL的编号范围3000~3999

如果在创建IPv6高级ACL时为其设置了名称,则也可使用acl ipv6 name acl-name命令进入其视图

(可选)配置ACL的描述信息

description text

缺省情况下,ACL没有任何描述信息

(可选)配置规则编号的步长

step step-value

缺省情况下,规则编号的步长为5

创建规则

rule [ rule-id ] { deny | permit } protocol [ { { ack ack-value | fin fin-value | psh psh-value | rst rst-value | syn syn-value | urg urg-value } * | established } | counting | destination { object-group addr-group-name | dest-address dest-prefix | dest-address/dest-prefix | any } | destination-port { object-group port-group-name | operator port1 [ port2 ] } | dscp dscp | flow-label flow-label-value | fragment | icmp6-type { icmp6-type icmp6-code | icmp6-message } | logging | routing [ type routing-type ] | hop-by-hop [ type hop-type ] | source { object-group addr-group-name | source-address source-prefix | source-address/source-prefix | any } | source-port { object-group port-group-name | operator port1 [ port2 ] } | time-range time-range-name | vpn-instance vpn-instance-name ] *

缺省情况下,IPv6高级ACL内不存在任何规则

logging参数需要使用该ACL的模块支持日志记录功能,例如报文过滤

设备暂不支持vpn-instance参数

(可选)为指定规则配置描述信息

rule rule-id comment text

缺省情况下,规则没有任何描述信息

 

1.3.3  配置二层ACL

二层ACL可根据报文的源MAC地址、目的MAC地址、802.1p优先级、链路层协议类型等二层信息来制订规则,对报文进行匹配。

表1-8 配置二层ACL

操作

命令

说明

进入系统视图

system-view

-

创建二层ACL,并进入二层ACL视图

acl number acl-number [ name acl-name ] [ match-order { auto | config } ]

缺省情况下,不存在任何ACL

二层ACL的编号范围为4000~4999

如果在创建二层ACL时为其设置了名称,则也可使用acl name acl-name命令进入其视图

(可选)配置ACL的描述信息

description text

缺省情况下,ACL没有任何描述信息

(可选)配置规则编号的步长

step step-value

缺省情况下,规则编号的步长为5

创建规则

rule [ rule-id ] { deny | permit } [ cos vlan-pri | counting | dest-mac dest-address dest-mask | { lsap lsap-type lsap-type-mask | type protocol-type protocol-type-mask } | source-mac source-address source-mask | time-range time-range-name ] *

缺省情况下,二层ACL内不存在任何规则

设备暂不支持lsap参数

当EB/EC2/FD类单板工作在ACL标准模式时,该类单板引用的二层ACL规则中protocol-type protocol-type-mask不支持配置为0x86DD 0xFFFF(匹配IPv6报文)

(可选)为指定规则配置描述信息

rule rule-id comment text

缺省情况下,规则没有任何描述信息

 

1.3.4  配置用户自定义ACL

用户自定义ACL可以以报文头为基准,指定从报文的第几个字节开始与掩码进行“与”操作,并将提取出的字符串与用户定义的字符串进行比较,从而找出相匹配的报文。

表1-9 配置用户自定义ACL

操作

命令

说明

进入系统视图

system-view

-

创建用户自定义ACL,并进入用户自定义ACL视图

acl number acl-number [ name acl-name ]

缺省情况下,不存在任何ACL

用户自定义ACL的编号范围为5000~5999

如果在创建用户自定义ACL时为其指定了名称,则也可使用acl name acl-name命令进入其视图

(可选)配置ACL的描述信息

description text

缺省情况下,ACL没有任何描述信息

创建规则

rule [ rule-id ] { deny | permit } [ { { ipv4 | ipv6 | l2 | l4 } rule-string rule-mask offset }&<1-8> ] [ counting | time-range time-range-name ] *

缺省情况下,用户自定义ACL内不存在任何规则

(可选)为指定规则配置描述信息

rule rule-id comment text

缺省情况下,规则没有任何描述信息

 

1.3.5  复制ACL

用户可通过复制一个已存在的ACL(即源ACL),来生成一个新的同类型ACL(即目的ACL)。除了ACL的编号和名称不同外,目的ACL与源ACL完全相同。

提示

目的ACL要与源ACL的类型相同,且目的ACL必须不存在,否则将导致复制失败。

 

表1-10 复制ACL

操作

命令

说明

进入系统视图

system-view

-

复制并生成一个新的ACL

acl [ ipv6 ] copy { source-acl-number | name source-acl-name } to { dest-acl-number | name dest-acl-name }

-

 

1.3.6  配置ACL的硬件模式

提示

·     本配置不会立即生效,必须在保存配置后待系统下次启动时才生效。

·     在组成IRF的所有设备上,ACL硬件模式的配置必须相同,否则这些设备将无法组成IRF。有关IRF的详细介绍,请参见“虚拟化技术配置指导”中的“IRF”。

·     本配置仅缺省MDC支持。有关MDC的详细介绍,请参见“虚拟化技术配置指导”中的“MDC”。

 

针对不同型号的单板,ACL硬件模式的配置方式有所不同,具体分为以下两种:

1. 指定ACL的硬件模式

当设备上有EB/EC2/FD类单板时,用户可以为该类单板指定ACL的硬件模式。

·     在ACL基本模式下,EB/EC2/FD单板仅支持IPv4基本ACL、IPv4高级ACL和二层ACL。

·     在ACL高级模式下,EB/EC2/FD单板除了支持IPv4基本ACL、IPv4高级ACL和二层ACL外,还支持IPv6基本ACL、IPv6高级ACL和用户自定义ACL。

切换ACL工作模式可能会导致ACL相关的配置失效,请谨慎使用。

表1-11 指定ACL的硬件模式

操作

命令

说明

进入系统视图

system-view

-

指定ACL的硬件模式

acl hardware-mode { advanced | basic }

缺省情况下,EB/EC2/FD类单板工作在ACL高级模式

 

2. 开启或关闭ACL硬件模式下的IPv6功能

当设备上有EC1/EF/FG类单板时,用户可以根据实际组网需要开启或关闭ACL硬件模式下的IPv6功能。

·     当IPv6功能关闭时,EC1/EF/FG类单板仅支持IPv4基本ACL、IPv4高级ACL和二层ACL。

·     当IPv6功能开启时,EC1/EF/FG类单板除了支持IPv4基本ACL、IPv4高级ACL和二层ACL外,还支持IPv6基本ACL、IPv6高级ACL和用户自定义ACL。

开启或关闭ACL硬件模式下的IPv6功能可能会导致ACL相关的配置失效,请谨慎使用。

表1-12 开启或关闭ACL硬件模式下的IPv6功能

操作

命令

说明

进入系统视图

system-view

-

开启或关闭ACL硬件模式下的IPv6功能

acl hardware-mode ipv6 { disable | enable }

缺省情况下,ACL硬件模式下的IPv6功能处于关闭状态

 

1.3.7  应用ACL进行报文过滤

ACL最基本的应用就是进行报文过滤,即通过将ACL规则应用到指定接口的入或出方向上,从而对该接口收到或发出的报文进行过滤。应用ACL对报文进行过滤时,优先级由高到低依次为:全局应用ACL进行报文过滤、在接口上应用ACL进行报文过滤、在VLAN中应用ACL进行报文过滤。

说明

对出方向上的报文(即使用outbound参数)进行过滤时,不支持使用用户自定义ACL。

 

1. 全局应用ACL进行报文过滤

表1-13 全局应用ACL进行报文过滤

操作

命令

说明

进入系统视图

system-view

-

全局应用ACL进行报文过滤

packet-filter [ ipv6 ] { acl-number | name acl-name } global { inbound | outbound } [ hardware-count ]

缺省情况下,全局不对报文进行过滤

 

说明

全局在一个方向上最多可应用32个ACL进行报文过滤。

 

2. 在接口上应用ACL进行报文过滤

表1-14 在接口上应用ACL进行报文过滤

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

在接口上应用ACL进行报文过滤

packet-filter [ ipv6 ] { acl-number | name acl-name } { inbound | outbound } [ hardware-count ]

缺省情况下,接口不对报文进行过滤

 

说明

·     一个接口在一个方向上最多可应用32个ACL进行报文过滤。

·     在VLAN接口上使用packet-filter命令对发出的IPv4报文(即使用outbound参数)进行过滤时,仅对三层单播报文生效。

·     当EB/EC2/FD类单板工作在ACL基本模式时,VLAN接口上配置的出方向IPv4报文过滤功能在该类单板上不支持。

 

3. 在VLAN中应用ACL进行报文过滤

表1-15 在VLAN中应用ACL进行报文过滤

操作

命令

说明

进入系统视图

system-view

-

在VLAN中应用ACL进行报文过滤

packet-filter [ ipv6 ] { acl-number | name acl-name } vlan vlan-list { inbound | outbound } [ hardware-count ]

缺省情况下,在VLAN中不对报文进行过滤

 

说明

一个VLAN在一个方向上最多可应用32个ACL进行报文过滤。

 

4. 配置报文过滤日志的生成与发送周期

在配置了报文过滤日志的生成与发送周期之后,设备将周期性地生成报文过滤日志信息并发送到信息中心,包括该周期内被匹配的报文数量以及所使用的ACL规则。关于信息中心的详细介绍请参见“网络管理和监控配置指导”中的“信息中心”。

表1-16 配置报文过滤日志的生成与发送周期

操作

命令

说明

进入系统视图

system-view

-

配置报文过滤日志的生成与发送周期

acl [ ipv6 ] logging interval interval

缺省情况下,报文过滤日志的生成与发送周期为0分钟,即不记录报文过滤的日志

 

5. 配置报文过滤的缺省动作

系统缺省的报文过滤动作为Permit,即允许未匹配上ACL规则的报文通过。通过本配置可更改报文过滤的缺省动作为Deny,即禁止未匹配上ACL规则的报文通过。

表1-17 配置报文过滤的缺省动作为deny

操作

命令

说明

进入系统视图

system-view

-

配置报文过滤的缺省动作为Deny

packet-filter default deny

缺省情况下,报文过滤的缺省动作为Permit,即允许未匹配上ACL规则的报文通过

 

6. 配置报文过滤缺省动作统计功能

提示

在接口上只有应用了ACL进行报文过滤,才允许使能报文过滤缺省动作统计功能。

 

使能了报文过滤缺省动作统计功能之后,接口将对报文过滤缺省动作的执行次数进行统计。

表1-18 配置报文过滤缺省动作统计功能

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

在接口上使能报文过滤缺省动作统计功能

packet-filter default { inbound | outbound } hardware-count

缺省情况下,报文过滤的缺省动作统计功能处于关闭状态

 

1.4  ACL显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示ACL配置后的运行情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除ACL的统计信息。

表1-19 ACL显示和维护

配置

命令

显示ACL的配置和运行情况

display acl [ ipv6 ] { acl-number | all | name acl-name }

显示ACL的硬件模式及其IPv6状态

display acl hardware-mode

显示ACL在报文过滤中的应用情况(独立运行模式)

display packet-filter { interface [ interface-type interface-number ] [ inbound | outbound ] | { global | interface vlan-interface vlan-interface-number | vlan [ vlan-id ] } [ inbound | outbound ] [ slot slot-number ] }

显示ACL在报文过滤中的应用情况(IRF模式)

display packet-filter { interface [ interface-type interface-number ] [ inbound | outbound ] | { global | interface vlan-interface vlan-interface-number | vlan [ vlan-id ] } [ inbound | outbound ] [ chassis chassis-number slot slot-number ] }

显示ACL在报文过滤中应用的统计信息以及报文过滤缺省动作的统计信息

display packet-filter statistics { global | interface interface-type interface-number | vlan vlan-id } { inbound | outbound } [ default | [ ipv6 ] { acl-number | name acl-name } ] [ brief ]

显示ACL在报文过滤中应用的累加统计信息

display packet-filter statistics sum { inbound | outbound } [ ipv6 ] { acl-number | name acl-name } [ brief ]

显示ACL在报文过滤中的详细应用情况(独立运行模式)

display packet-filter verbose { global | interface interface-type interface-number | vlan vlan-id } { inbound | outbound } [ [ ipv6 ] { acl-number | name acl-name } ] [ slot slot-number ]

显示ACL在报文过滤中的详细应用情况(IRF模式)

display packet-filter verbose { global | interface interface-type interface-number | vlan vlan-id } { inbound | outbound } [ [ ipv6 ] { acl-number | name acl-name } ] [ chassis chassis-number slot slot-number ]

显示QoS和ACL资源的使用情况(独立运行模式)

display qos-acl resource [ slot slot-number ]

显示QoS和ACL资源的使用情况(IRF模式)

display qos-acl resource [ chassis chassis-number slot slot-number ]

清除ACL的统计信息

reset acl [ ipv6 ] counter { acl-number | all | name acl-name }

清除ACL在报文过滤中应用的统计信息(包括累加统计信息)以及报文过滤缺省动作的统计信息

reset packet-filter statistics { global | interface [ interface-type interface-number ] | vlan [ vlan-id ] } { inbound | outbound } [ default | [ ipv6 ] { acl-number | name acl-name } ]

 

1.5  ACL典型配置举例

说明

缺省情况下,以太网接口、VLAN接口及聚合接口处于down状态。如果要使这些接口能够正常工作,请先使用undo shutdown命令使接口状态处于up状态。

 

1.5.1  IPv4 ACL典型配置举例

1. 组网需求

·     公司企业网通过Switch实现各部门之间的互连。

·     要求正确配置ACL,禁止其它部门在上班时间(8:00至18:00)访问工资查询服务器(IP地址为129.110.1.2),而总裁办公室(IP地址为129.111.1.2)不受限制,可以随时访问。

2. 组网图

图1-1 配置ACL组网图

 

3. 配置步骤

(1)     定义上班时间段

# 定义8:00至18:00的周期时间段。

<Switch> system-view

[Switch] time-range trname 8:00 to 18:00 working-day

(2)     定义ACL

# 定义总裁办公室到工资服务器的访问规则。

[Switch] acl number 3000

[Switch-acl-adv-3000] rule 1 permit ip source 129.111.1.2 0.0.0.0 destination 129.110.1.2 0.0.0.0

[Switch-acl-adv-3000] quit

# 定义其它部门到工资服务器的访问规则。

[Switch] acl number 3001

[Switch-acl-adv-3001] rule 1 permit ip source any destination 129.110.1.2 0.0.0.0 time-range trname

[Switch-acl-adv-3001] quit

(3)     定义QoS策略并在端口上应用。

# 配置流分类和流行为。

[Switch] traffic classifier test_permit

[Switch-classifier-test_permit] if-match acl 3000

[Switch-classifier-test_permit] quit

[Switch] traffic behavior test_permit

[Switch-behavior-test_permit] filter permit

[Switch-behavior-test_permit] quit

[Switch] traffic classifier test_deny

[Switch-classifier-test_deny] if-match acl 3001

[Switch-classifier-test_deny] quit

[Switch] traffic behavior test_deny

[Switch-behavior-test_deny] filter deny

[Switch-behavior-test_deny] quit

# 配置QoS策略。

[Switch] qos policy test

[Switch-qospolicy-test] classifier test_permit behavior test_permit

[Switch-qospolicy-test] classifier test_deny behavior test_deny

[Switch-qospolicy-test] quit

# 在GigabitEthernet4/0/1~GigabitEthernet4/0/3端口的入方向上应用QoS策略。

[Switch] interface gigabitethernet 4/0/1

[Switch-GigabitEthernet4/0/1] qos apply policy test inbound

[Switch-GigabitEthernet4/0/1] quit

[Switch] interface gigabitethernet 4/0/2

[Switch-GigabitEthernet4/0/2] qos apply policy test inbound

[Switch-GigabitEthernet4/0/2] quit

[Switch] interface gigabitethernet 4/0/3

[Switch-GigabitEthernet4/0/3] qos apply policy test inbound

[Switch-GigabitEthernet4/0/3] quit

1.5.2  IPv6 ACL典型配置举例

1. 组网需求

在以太网端口GigabitEthernet4/0/1上配置IPv6报文过滤,允许接收源IPv6地址为4050::9000到4050::90FF的报文,禁止接收其他报文。

2. 配置步骤

# 配置源地址为4050::9000到4050::90FF的ACL规则。

<Sysname> system-view

[Sysname] acl ipv6 number 2000

[Sysname-acl6-basic-2000] rule permit source 4050::9000/120

[Sysname-acl6-basic-2000] quit

# 配置其他源地址的ACL规则。

[Sysname] acl ipv6 number 2001

[Sysname-acl6-basic-2001] rule permit source any

[Sysname-acl6-basic-2001] quit

# 配置允许接收源地址为4050::9000到4050::90FF的类和流行为。

[Sysname] traffic classifier c_permit

[Sysname-classifier-c_permit] if-match acl ipv6 2000

[Sysname-classifier-c_permit] quit

[Sysname] traffic behavior b_permit

[Sysname-behavior-b_permit] filter permit

[Sysname-behavior-b_permit] quit

# 配置拒绝其它源地址的类和流行为。

[Sysname] traffic classifier c_deny

[Sysname-classifier-c_deny] if-match acl ipv6 2001

[Sysname-classifier-c_deny] quit

[Sysname] traffic behavior b_deny

[Sysname-behavior-b_deny] filter deny

[Sysname-behavior-b_deny] quit

# 配置QoS策略。

[Sysname] qos policy test

[Sysname-qospolicy-test] classifier c_permit behavior b_permit

[Sysname-qospolicy-test] classifier c_deny behavior b_deny

[Sysname-qospolicy-test] quit

# 在端口GigabitEthernet4/0/1入方向上应用策略。

[Sysname] interface gigabitethernet 4/0/1

[Sysname-GigabitEthernet4/0/1] qos apply policy test inbound

[Sysname-GigabitEthernet4/0/1] quit

1.5.3  ACL进行报文过滤典型配置举例

1. 组网需求

·     要求通过在Switch的VLAN接口上配置报文过滤功能,实现在每天的8:00~18:00时间段对来自Host A的IPv4(三层)报文进行过滤,并对符合条件的报文进行统计并记录日志信息。

·     之后配置需求有变更,要求对来自Host B的IPv4(三层)报文进行过滤。要求通过动态修改ACL规则,实现配置需求的变更。

2. 组网图

图1-2 应用ACL进行报文过滤典型配置组网图

 

3. 配置步骤

# 配置时间段study,在每天的8:00到18:00生效。

<Switch> system-view

[Switch] time-range study 8:00 to 18:00 daily

# 配置VLAN接口,将接口GigabitEthernet3/0/1加入到指定VLAN。

[Switch] vlan 2

[Switch-vlan2] port gigabitethernet 3/0/1

[Switch-vlan2] quit

# 创建基本IPv4 ACL 2009。

[Switch] acl number 2009

# 定义一个规则,禁止源IP地址为192.168.1.2/32的报文通过(即禁止Host A的报文通过),并对符合条件的报文进行统计并记录日志信息。

[Switch-acl-basic-2009] rule 5 deny source 192.168.1.2 0 time-range study logging counting

[Switch-acl-basic-2009] quit

# 配置IPv4报文过滤日志的生成与发送周期为10分钟。

[Switch] acl logging frequence 10

# 应用基本IPv4 ACL 2009对VLAN接口收到的IPv4报文进行过滤。

[Switch] interface vlan-interface 2

[Switch-Vlan-interface2] ip address 192.168.1.1 24

[Switch-Vlan-interface2] packet-filter 2009 inbound

[Switch-Vlan-interface2] quit

# 配置系统信息的输出规则,将级别为informational的日志信息输出至控制台。

[Switch] info-center source default logfile level informational

# 修改ACL规则,禁止源IP地址为192.168.1.3/32的报文通过(即禁止Host B的报文通过),设备支持ACL动态修改,可直接修改已经生效ACL规则,修改后即生效。

[Switch] acl number 2009

[Switch-acl-basic-2009] rule 5 deny source 192.168.1.3 0

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们