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

09-ACL和QoS配置指导

目录

01-ACL配置

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

docurl=/cn/Service/Document_Software/Document_Center/Routers/Catalog/SR_Router/SR8800/Configure/Operation_Manual/H3C_SR8800_CG-R3347-6W102/09/201211/762423_30005_0.htm

01-ACL配置


1 ACL配置

说明

·       本文将用于IPv4和IPv6的ACL分别简称为IPv4 ACL和IPv6 ACL。若非特别指明,本文所指的ACL均包括IPv4 ACL和IPv6 ACL。

·       本文中的“SPC单板”指的是单板丝印以“SPC”开头(如SPC-GT48L)的单板,“SPE单板”指的是单板丝印以“SPE”开头(如SPE-1020-E-II)的单板。

 

1.1  ACL简介

ACL(Access Control List,访问控制列表)是用来实现流识别功能的。网络设备为了过滤报文,需要配置一系列的匹配条件对报文进行分类,这些条件可以是报文的源地址、目的地址、端口号等。

当设备的端口接收到报文后,即根据当前端口上应用的ACL规则对报文的字段进行分析,在识别出特定的报文之后,根据预先设定的策略允许或禁止该报文通过。

由ACL定义的报文匹配规则,可以被其它需要对流量进行区分的场合引用,如包过滤、QoS中流分类规则的定义等。

1.1.1  ACL的分类

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

表1-1 ACL的分类

ACL类型

编号范围

适用的IP版本

规则制订依据

基本ACL

2000~2999

IPv4

只根据报文的源IP地址信息制定匹配规则

IPv6

只根据报文的源IPv6地址信息制定匹配规则

高级ACL

3000~3999

IPv4

根据报文的源IP地址信息、目的IP地址信息、IP承载的协议类型、协议的特性等三、四层信息制定匹配规则

IPv6

根据报文的源IPv6地址信息、目的IPv6地址信息、IPv6承载的协议类型、协议的特性等三、四层信息制定匹配规则

二层ACL

4000~4999

IPv4&IPv6

根据报文的源MAC地址、目的MAC地址、802.1p优先级、二层协议类型等二层信息制定匹配规则

用户自定义ACL

5000~5999

IPv4&IPv6

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

 

1.1.2  ACL的编号和名称

用户在创建ACL时必须为其指定编号,系统将根据用户所指定的编号来创建不同类型的ACL。

通常名称比编号更易于记忆和识别,因此用户在创建ACL时,还可以选择是否为其指定名称,而且只能在创建ACL时为其指定名称。ACL一旦创建,便不允许对其名称进行修改或删除。

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

说明

二层ACL的编号和名称以及用户自定义ACL的编号和名称全局唯一;IPv4基本和高级ACL的编号和名称只在IPv4中唯一;IPv6基本和高级ACL的编号和名称也只在IPv6中唯一。

 

1.1.3  ACL的匹配顺序

一个ACL由一条或多条描述报文匹配选项的判断语句组成,这样的判断语句就称为“规则”。由于每条规则中的报文匹配选项不同,从而使这些规则之间可能存在重复甚至矛盾的地方,因此在将一个报文与ACL的各条规则进行匹配时,就需要有明确的匹配顺序来确定规则执行的优先级。ACL的规则匹配顺序有以下两种:

·              配置顺序:按照用户配置规则的先后顺序进行匹配,但由于本质上系统是按照规则编号由小到大进行匹配,因此后插入的规则如果编号较小也有可能先被匹配。

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

说明

·       用户自定义ACL的规则只能按照配置顺序进行匹配。

·       当报文与各条规则进行匹配时,一旦匹配上某条规则,就不会再继续匹配下去,系统将依据该规则对该报文执行相应的操作。

 

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

ACL类型

“深度优先”排序法则

IPv4基本ACL

(1)    先看规则中是否携带有VPN实例,携带VPN实例者优先

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

(3)    如果源IP地址范围也相同,再比较配置顺序,配置在前者优先

IPv4高级ACL

(1)    先看规则中是否携带有VPN实例,携带VPN实例者优先

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

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

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

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

(6)    如果四层端口号范围也相同,再比较配置顺序,配置在前者优先

IPv6基本ACL

(1)    先看规则中是否携带有VPN实例,携带VPN实例者优先

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

(3)    如果源IPv6地址范围相同,再比较配置顺序,配置在前者优先

IPv6高级ACL

(1)    先看规则中是否携带有VPN实例,携带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规则只需在某个或某些特定的时间段内生效(即进行报文过滤),这也称为基于时间段的ACL过滤。为此,用户可以先配置一个或多个时间段,然后在ACL规则下引用这些时间段,那么该规则将只在指定的时间段内生效。

此外,如果某ACL规则所引用的时间段尚未配置,系统将给出提示信息,并仍允许该规则成功创建,但该规则将不会在其引用的时间段完成配置前生效。

1.1.6  ACL对IPv4分片报文的处理

传统的报文过滤并不处理所有的IPv4报文分片,而只对首片分片报文进行匹配处理,而对后续分片一律放行。这样,网络攻击者可能构造后续的分片报文进行流量攻击,就带来了安全隐患。H3C的设备能够对IPv4分片报文进行如下处理:

·              对所有的分片报文进行三层(IP层)匹配过滤。

·              对于包含高级信息的IPv4 ACL规则项(譬如TCP/UDP端口号、ICMP类型等),提供标准匹配和精确匹配两种匹配方式,缺省的匹配方式为标准匹配方式。

说明

标准匹配和精确匹配的含义如下:

·       标准匹配:只匹配三层信息,而三层以外的信息将被忽略。

·       精确匹配:对IPv4 ACL定义的所有的规则项进行匹配。

这两种匹配方式只有包过滤防火墙支持,具体介绍请参见“安全配置指导”中的“包过滤防火墙”。

 

1.1.7  流模板

流模板的主要功能是对硬件下发的ACL规则中所能包含的信息进行限制。在接口下发的ACL规则中包含的信息必须是该接口下发流模板中定义信息的子集。比如,流模板定义了源IP地址、目的IP地址、源TCP端口、目的TCP端口等限制,只有在上述范围内的ACL规则可以正确下发到硬件中,用于包过滤、QoS等功能;否则ACL规则将不能下发到硬件中,导致包过滤、QoS等功能不能引用此ACL规则。

设备支持的流模板包括缺省流模板和用户自定义流模板。其中,用户自定义流模板又可分为标准型和扩展型。

注意

流模板只对基于硬件处理的ACL有效,对基于软件处理的ACL不生效。

 

1.1.8  ACL的应用

ACL作为一种规则,可以应用在诸多领域。其中最基本的应用就是利用ACL规则进行报文过滤,即使用不同类型的ACL规则对相应类型的报文进行匹配过滤。此外,通过与其它功能的配合,ACL还可应用于诸如策略路由、包过滤防火墙、QoS策略等领域,有关ACL在这些领域的具体应用,请参见相关的配置指导。

如果ACL同时在入方向应用策略路由、包过滤防火墙、QoS策略,那么它的生效优先级如下图所示:

图1-1 应用在入方向的优先级示意图

 

如果ACL同时在出方向应用策略路由、包过滤防火墙、QoS策略,那么它的生效优先级如下图所示:

图1-2 应用在出方向的优先级示意图

 

关于包过滤防火墙的配置请参见“安全配置指导”中的“包过滤防火墙”;关于策略路由配置请参见“三层技术-IP路由配置指导”中的“策略路由”、“IPv6策略路由”;关于QoS策略参见“ACL和QoS配置指导”中的“QoS”。

1.2  ACL配置任务简介

表1-3 IPv4 ACL配置任务简介

配置任务

说明

详细配置

配置ACL的生效时间段

可选

本配置任务适用于IPv4和IPv6

1.3.1 

配置基本ACL

四者至少选其一

本配置任务适用于IPv4和IPv6

1.3.2 

配置高级ACL

本配置任务适用于IPv4和IPv6

1.3.3 

配置二层ACL

本配置任务适用于IPv4和IPv6

1.3.4 

配置用户自定义ACL

本配置任务适用于IPv4和IPv6

1.3.5 

复制ACL

可选

本配置任务适用于IPv4和IPv6

1.3.6 

配置流模板

可选

本配置任务适用于IPv4和IPv6

1.3.7 

 

1.3  配置ACL

1.3.1  配置ACL的生效时间段

时间段可分为以下两种:

·              周期时间段:该时间段以一周为周期循环生效。

·              绝对时间段:该时间段在指定时间范围内生效。

表1-4 配置ACL的生效时间段

操作

命令

说明

进入系统视图

system-view

-

创建时间段

time-range time-range-name { start-time to end-time days [ from time1 date1 ] [ to time2 date2 ] | from time1 date1 [ to time2 date2 ] | to time2 date2 }

必选

缺省情况下,不存在任何时间段

 

说明

·       使用同一名称可以配置多条不同的时间段,以达到这样的效果:各周期时间段之间以及各绝对时间段之间分别取并集之后,再取二者的交集作为最终生效的时间范围。

·       最多可以创建256个不同名称的时间段,而同一名称下最多可以配置32条周期时间段和12条绝对时间段。

 

1.3.2  配置基本ACL

1. 配置IPv4基本ACL

IPv4基本ACL只根据报文的源IP地址信息制定匹配规则,对IPv4报文进行相应的分析处理。

表1-5 配置IPv4基本ACL

操作

命令

说明

进入系统视图

system-view

-

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

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

必选

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

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

配置ACL的描述信息

description text

可选

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

配置规则编号的步长

step step-value

可选

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

创建规则

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

必选

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

重复执行本命令可以创建多条规则

logging参数需要使用该ACL的模块支持日志记录功能才能生效,例如包过滤防火墙

配置规则的描述信息

rule rule-id comment text

可选

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

使能ACL的规则匹配统计功能

hardware-count enable

可选

缺省情况下,ACL的规则匹配统计功能处于关闭状态

 

说明

如果在创建IPv4基本ACL时为其指定了名称,则也可以使用acl name acl-name命令通过指定名称的方式进入其视图。

 

2. 配置IPv6基本ACL

IPv6基本ACL只根据报文的源IPv6地址信息制定匹配规则,对IPv6报文进行相应的分析处理。

表1-6 配置IPv6基本ACL

操作

命令

说明

进入系统视图

system-view

-

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

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

必选

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

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

配置ACL的描述信息

description text

可选

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

配置规则编号的步长

step step-value

可选

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

创建规则

rule [ rule-id ] { deny | permit } [ counting | fragment | logging | source { ipv6-address prefix-length | ipv6-address/prefix-length | any } | time-range time-range-name | vpn-instance vpn-instance-name ] *

必选

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

重复执行本命令可以创建多条规则

logging参数需要使用该ACL的模块支持日志记录功能才能生效,例如包过滤防火墙

配置规则的描述信息

rule rule-id comment text

可选

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

使能ACL的规则匹配统计功能

hardware-count enable

可选

缺省情况下,ACL的规则匹配统计功能处于关闭状态

 

说明

·       如果在创建IPv6基本ACL时为其指定了名称,则也可以使用acl ipv6 name acl6-name命令通过指定名称的方式进入其视图。

·       对于SPC单板,只有ACL key长度为80Bytes的情况下,在QoS策略中配置IPv6 基本ACL时才会配置成功。关于ACL key长度的介绍请参见“ACL和QoS命令参考”中的“ACL”。

 

1.3.3  配置高级ACL

1. 配置IPv4高级ACL

IPv4高级ACL可以使用报文的源IPv4地址信息、目的IPv4地址信息、IPv4承载的协议类型、协议的特性(例如TCP或UDP的源端口、目的端口,TCP标记,ICMP协议的消息类型、消息码等)等信息来制定匹配规则。IPv4高级ACL支持对以下三种报文优先级进行分析处理:

·              ToS(Type of Service,服务类型)优先级;

·              IP优先级;

·              DSCP(Differentiated Services Codepoint,差分服务编码点)优先级。

用户可以利用IPv4高级ACL定义比IPv4基本ACL更准确、丰富、灵活的匹配规则。

表1-7 配置IPv4高级ACL

操作

命令

说明

进入系统视图

system-view

-

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

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

必选

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

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

配置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 { dest-addr dest-wildcard | any } | destination-port operator port1 [ port2 ] | dscp dscp | fragment | icmp-type { icmp-type [ icmp-code ] | icmp-message } | logging | precedence precedence | reflective | source { sour-addr sour-wildcard | any } | source-port operator port1 [ port2 ] | time-range time-range-name | tos tos | vpn-instance vpn-instance-name ] *

必选

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

重复执行本命令可以创建多条规则

logging参数需要使用该ACL的模块支持日志记录功能才能生效,例如包过滤防火墙

配置规则的描述信息

rule rule-id comment text

可选

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

使能ACL的规则匹配统计功能

hardware-count enable

可选

缺省情况下,ACL的规则匹配统计功能处于关闭状态

 

说明

如果在创建IPv4高级ACL时为其指定了名称,则也可以使用acl name acl-name命令通过指定名称的方式进入其视图。

 

2. 配置IPv6高级ACL

IPv6高级ACL可以使用报文的源IPv6地址信息、目的IPv6地址信息、IPv6承载的协议类型、协议的特性(例如TCP或UDP的源端口、目的端口,ICMP协议的消息类型、消息码等)等信息来制定匹配规则。

用户可以利用IPv6高级ACL定义比IPv6基本ACL更准确、丰富、灵活的规则。

表1-8 配置IPv6高级ACL

操作

命令

说明

进入系统视图

system-view

-

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

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

必选

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

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

配置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 { dest dest-prefix | dest/dest-prefix | any } | destination-port operator port1 [ port2 ] | dscp dscp | flow-label flow-label-value | fragment | icmp6-type { icmp6-type icmp6-code | icmp6-message } | logging | source { source source-prefix | source/source-prefix | any } | source-port operator port1 [ port2 ] | time-range time-range-name | vpn-instance vpn-instance-name ] *

必选

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

重复执行本命令可以创建多条规则

logging参数需要使用该ACL的模块支持日志记录功能才能生效,例如包过滤防火墙

配置规则的描述信息

rule rule-id comment text

可选

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

使能ACL的规则匹配统计功能

hardware-count enable

可选

缺省情况下,ACL的规则匹配统计功能处于关闭状态

 

说明

·       如果在创建IPv6高级ACL时为其指定了名称,则也可以使用acl ipv6 name acl6-name命令通过指定名称的方式进入其视图。

·       对于SPC单板,只有ACL key长度为80Bytes的情况下,在QoS策略中配置IPv6 高级ACL时才会配置成功。关于ACL key长度的介绍请参见“ACL和QoS命令参考”中的“ACL”。

 

1.3.4  配置二层ACL

二层ACL根据报文的源MAC地址、目的MAC地址、802.1p优先级、二层协议类型等二层信息制定匹配规则,对报文进行相应的分析处理。

表1-9 配置二层ACL

操作

命令

说明

进入系统视图

system-view

-

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

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

必选

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

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

配置ACL的描述信息

description text

可选

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

配置规则编号的步长

step step-value

可选

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

创建规则

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

必选

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

重复执行本命令可以创建多条规则

配置规则的描述信息

rule rule-id comment text

可选

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

使能ACL的规则匹配统计功能

hardware-count enable

可选

缺省情况下,ACL的规则匹配统计功能处于关闭状态

 

说明

如果在创建二层ACL时为其指定了名称,则也可以使用acl name acl-name命令通过指定名称的方式进入其视图。

 

1.3.5  配置用户自定义ACL

说明

用户自定义ACL,仅在SPC单板支持,SPE单板不支持。

 

用户自定义ACL可以以报文的报文头、IP头等为基准,指定从第几个字节开始与掩码进行“与”操作,将从报文提取出来的字符串和用户定义的字符串进行比较,找到匹配的报文,然后进行相应的处理。

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

操作

命令

说明

进入系统视图

system-view

-

配置ACL key的长度模式

acl mode { 3 | 4 }

必选

缺省情况下,ACL key的长度模式为2

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

acl number acl-number [ name acl-name ]

必选

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

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

配置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

可选

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

使能ACL的规则匹配统计功能

hardware-count enable

可选

缺省情况下,ACL的规则匹配统计功能处于关闭状态

 

说明

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

·       用户自定义ACL的规则只能按照配置顺序进行匹配。

 

1.3.6  复制ACL

用户可以通过复制一个已存在的ACL,来生成一个新的同类型ACL。除了ACL的编号和名称不同外,新生成的ACL(即目的ACL)的匹配顺序、规则匹配统计功能的使能情况、规则编号的步长、所包含的规则、规则的描述信息以及ACL的描述信息等都与源ACL的相同。

1. 复制IPv4 ACL

表1-11 复制IPv4 ACL

操作

命令

说明

进入系统视图

system-view

-

复制生成一个新的同类型IPv4 ACL

acl copy { source-acl-number | name source-acl-name } to { dest-acl-number | name dest-acl-name }

必选

 

说明

·       目的IPv4 ACL的类型要与源IPv4 ACL的类型相同,且源IPv4 ACL必须存在,目的IPv4 ACL必须不存在。

·       当源或目的ACL为WLAN ACL时,都不允许为其指定名称。

 

2. 复制IPv6 ACL

表1-12 复制IPv6 ACL

操作

命令

说明

进入系统视图

system-view

-

复制生成一个新的同类型IPv6 ACL

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

必选

 

说明

目的IPv6 ACL的类型要与源IPv6 ACL的类型相同,且源IPv6 ACL必须存在,目的IPv6 ACL必须不存在。

 

1.3.7  配置流模板

说明

流模板功能仅在SPE单板支持,SPC单板不支持。

 

表1-13 配置流模板

操作

命令

说明

进入系统视图

system-view

-

配置用户自定义流模板

flow-template flow-template-name basic { customer-vlan-id | dip | dmac | dport | dscp | ethernet-protocol | fragments | icmp-code | icmp-type | ip-precedence | ip-protocol | mpls-exp | service-cos | sip | smac | sport | tcp-flag | tos } *

必选

进入接口视图或端口组视图

进入接口视图

interface interface-type interface-number

二者必选其一

进入接口视图后,下面进行的配置只在当前接口生效;进入端口组视图后,下面进行的配置将在端口组中的所有接口生效

进入端口组视图

port-group manual port-group-name

在接口上应用用户自定义流模板

flow-template flow-template-name

可选

缺省情况下,接口下配置缺省流模板

 

说明

·       如果用户想在接口上应用用户自定义流模板,则必须先配置一个用户自定义流模板。

·       一个接口上只能应用一个用户自定义流模板。

·       SPE单板的ACL key长度为18Bytes时,缺省流模板包含的字段有:sip、dip、ip-protocol、sport以及dport。

·       SPE单板的ACL key长度为36Bytes时,缺省流模板包含的字段有:sip、dip、ip-protocol、sport、dport、icmp-code、icmp-type、tos、dscp、ip-precedence、mpls-exp、tcp-flag以及fragment。

 

1.3.8   ACL key的长度模式配置

ACL key的长度模式定义了ACL流模板可配置的字段长度。当在设备上需要配置大量的ACL规则时,ACL key的长度模式可能需要修改,通过下面的配置即可进行配置。

表1-14 配置ACL key的长度模式

操作

命令

说明

进入系统视图

system-view

-

配置ACL key的长度模式

acl mode { 1 | 2 | 3 | 4 }

必选

缺省情况下,ACL key的长度模式为2

 

说明

·       ACL key长度模式配置之后,需要重启设备后才能生效,但不需要保存此项配置。

·       在插有ATM子卡的SPE单板上配置ACL key长度模式无效。

·       ACL key长度模式配置对于SPE单板的IPv6 ACL无效。

·       对于SPC单板,只有ACL key长度为80Bytes的情况下,在QoS策略中配置IPv6 ACL时才会配置成功。关于ACL key长度的介绍请参见“ACL和QoS命令参考”中的“ACL”。

 

1.4  ACL显示和维护

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

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

表1-15 ACL显示和维护

配置

命令

显示IPv4 ACL的配置和运行情况

display acl { acl-number | all | name acl-name } [ slot slot-number ] [ | { begin | exclude | include } regular-expression ]

显示IPv6 ACL的配置和运行情况

display acl ipv6 { acl6-number | all | name acl6-name } [ slot slot-number ] [ | { begin | exclude | include } regular-expression ]

显示ACL key的长度模式

display acl mode [ | { begin | exclude | include } regular-expression ]

显示ACL资源的使用情况

display acl resource [ slot slot-number ] [ | { begin | exclude | include } regular-expression ]

显示用户自定义流模板在接口上的应用信息

display flow-template interface [ interface-type interface-number ] [ | { begin | exclude | include } regular-expression ]

显示用户自定义流模板的配置信息

display flow-template user-defined [ flow-template-name ] [ | { begin | exclude | include } regular-expression ]

显示时间段的配置和状态信息

display time-range { time-range-name | all } [ | { begin | exclude | include } regular-expression ]

清除IPv4 ACL统计信息

reset acl counter { acl-number | all | name acl-name }

清除IPv6 ACL统计信息

reset acl ipv6 counter { acl6-number | all | name acl6-name }

 

1.5  ACL典型配置举例

1.5.1  IPv4 ACL典型配置举例

1. 组网需求

·              某公司内的各部门之间通过Device 实现互连,该公司的工作时间为每周工作日的8点到18点。

·              通过配置,允许总裁办在任意时间访问工资查询服务器;禁止其它部门在上班时间(8:00至18:00)访问工资查询服务器。

2. 组网图

图1-3 配置ACL组网图

 

3. 配置步骤

(1)      定义上班时间段

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

<Device> system-view

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

(2)      定义到工资服务器的ACL

# 进入高级IPv4 ACL视图,编号为3000。

[Device] acl number 3000

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

[Device-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

[Device-acl-adv-3000] quit

# 进入高级IPv4 ACL视图,编号为3100。

[Device] acl number 3100

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

[Device-acl-adv-3100] rule 2 permit ip source any destination 129.110.1.2 0.0.0.0 time-range trname

[Device-acl-adv-3100] quit

(3)      应用ACL到流分类中

# 配置流分类。

[Device] traffic classifier c1

[Device-classifier-c1] if-match acl 3000

[Device-classifier-c1] quit

[Device] traffic classifier c2

[Device-classifier-c2] if-match acl 3100

[Device-classifier-c2] quit

(4)      报文流动作

# 配置流动作

[Device] traffic behavior b1

[Device-behavior-b1] filter permit

[Device-behavior-b1] quit

[Device] traffic behavior b2

[Device-behavior-b2] filter deny

[Device-behavior-b2] quit

(5)      关联分类规则和动作

# 配置QoS策略

[Device] qos policy p1

[Device-qospolicy-p1] classifier c1 behavior b1

[Device-qospolicy-p1] classifier c2 behavior b2

[Device-qospolicy-p1] quit

(6)      把策略应用到接口上

# 将QoS 策略用于GE2/1/1出方向。

[Device] interface GigabitEthernet 2/1/1

[Device-GigabitEthernet2/1/1] qos apply policy p1 outbound

1.5.2  IPv6 ACL配置举例

1. 组网需求

在接口GigabitEthernet2/1/1配置IPv6报文过滤,允许接收源IPv6地址为4050::9000到4050::90FF的报文,禁止接收其它报文。

2. 配置步骤

(1)      定义ACL

# 配置IPv6 ACL(IPv6 ACL编号为2000),规则如下。

<Sysname> system-view

[Sysname] acl ipv6 number 2000

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

# 配置IPv6 ACL(IPv6 ACL编号为2100),规则如下。

[Sysname] acl ipv6 number 2100

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

[Sysname-acl6-basic-2000] quit

(2)      应用ACL到流分类中

# 配置流分类

[Sysname] traffic classifier c1

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

[Sysname-classifier-c1] quit

[Sysname] traffic classifier c2

[Sysname-classifier-c2] if-match acl ipv6 2100

[Sysname-classifier-c2] quit

(3)      报文流动作

# 配置流动作

[Sysname] traffic behavior b1

[Sysname-behavior-b1] filter permit

[Sysname-behavior-b1] quit

[Sysname] traffic behavior b2

[Sysname-behavior-b2] filter deny

[Sysname-behavior-b2] quit

(4)      关联分类规则和动作

# 配置QoS策略

[Sysname] qos policy p1

[Sysname-qospolicy-p1] classifier c1 behavior b1

[Sysname-qospolicy-p1] classifier c2 behavior b2

[Sysname-qospolicy-p1] quit

(5)      把策略应用到接口上

# 将QoS 策略用于GigabitEthernet2/1/1出方向。

[Sysname] interface GigabitEthernet 2/1/1

[Sysname-GigabitEthernet2/1/1] qos apply policy p1 outbound

1.5.3  流模板配置举例

1. 组网需求

配置用户自定义流模板,并在接口上应用。

2. 配置步骤

# 配置标准型用户自定义流模板aaa。

<Sysname> system-view

[Sysname] flow-template aaa basic smac customer-vlan-id

# 在接口GigabitEthernet2/1/1上应用用户自定义流模板aaa。

[Sysname] interface Gigabitethernet 2/1/1

[Sysname-GigabitEthernet2/1/1] flow-template aaa

# 显示用户自定义流模板aaa的信息。

[Sysname] display flow-template user-defined aaa

user-defined flow template: basic

 name:aaa, index:1, total reference counts:1

 fields: smac customer-vlan-id

# 显示所有用户自定义流模板的信息。

[Sysname] display flow-template user-defined

user-defined flow template: basic

 name:aaa, index:1, total reference counts:1

 fields: smac customer-vlan-id

 

user-defined flow template: basic

 name:1, index:2, total reference counts:0

 fields: service-cos

 

user-defined flow template: basic

 name:2, index:3, total reference counts:0

 fields: ip-protocol dscp

# 显示所有接口上用户自定义流模板的信息。

[Sysname] display flow-template interface

Interface: GigabitEthernet2/1/1

user-defined flow template: basic

 name:aaa, index:1, total reference counts:1

 fields: smac customer-vlan-id

# 删除用户自定义流模板。如果用户自定义流模板已在接口应用,须先在接口取消应用。

[Sysname] interface Gigabitethernet 2/1/1

[Sysname-GigabitEthernet2/1/1] undo flow-template

[Sysname-GigabitEthernet2/1/1] quit

[Sysname] undo flow-template name aaa

1.5.4  ACL key长度模式的配置举例

1. 组网需求

配置SPE单板的ACL key长度模式为18Bytes,SPC单板的ACL key长度模式为80Bytes。

2. 配置步骤

# 配置ACL key的长度模式为3。

<Sysname> system-view

[Sysname] acl mode 3

ACL has been set to mode 3, and will take effect after the next system reboot.

# 显示ACL key长度。

[Sysname] display acl mode

Current ACL mode              : mode 2 (SPE ACL key long, SPC ACL key short)

Acl mode after system restart : mode 3 (SPE ACL key short, SPC ACL key long)

Notice: Changing ACL mode will take effect only after system restart.

# 重启设备。

[Sysname] return

<Sysname> reboot

 

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

新华三官网
联系我们