01-ACL命令
本章节下载: 01-ACL命令 (268.26 KB)
目 录
1.1.6 display packet-filter verbose
1.1.7 display qos-acl resource
1.1.9 packet-filter default deny
1.1.10 rule (IPv4 advanced ACL view)
1.1.11 rule (IPv4 basic ACL view)
acl命令用来创建ACL,并进入ACL视图。如果指定的ACL已存在,则直接进入ACL视图。
undo acl命令用来删除指定或全部ACL。
【命令】
指定number创建IPv4 ACL、二层ACL:
acl { name acl-name | number acl-number [ name acl-name ] [ match-order { auto | config } ] }
undo acl { all | name acl-name | number acl-number }
指定关键字创建ACL:
· 指定advanced或basic创建IPv4 ACL
acl { advanced | basic } { acl-number | name acl-name } [ match-order { auto | config } ]
undo acl { all | { advanced | basic } { acl-number | name acl-name } }
· 指定mac创建二层ACL
acl mac { acl-number | name acl-name } [ match-order { auto | config } ]
undo acl mac { all | acl-number | name acl-name }
【缺省情况】
不存在ACL。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
basic:指定创建基本ACL。
advanced:指定创建高级ACL。
mac:指定创建二层ACL。
number acl-number:指定ACL的编号。
acl-number表示ACL的编号,取值范围及其代表的ACL类型如下:
· 2000~2999:表示基本ACL。
· 3000~3999:表示高级ACL。
· 4000~4999:表示二层ACL。
name acl-name:指定ACL的名称。acl-name表示ACL的名称,为1~63个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头。为避免混淆,ACL的名称不允许使用英文单词all。
match-order { auto | config }:指定规则的匹配顺序,auto表示按照自动排序(即“深度优先”原则)的顺序进行规则匹配,config表示按照配置顺序进行规则匹配。缺省情况下,规则的匹配顺序为配置顺序。
all:指定类型中全部ACL。
【使用指导】
指定number创建的ACL,可以通过如下命令进入其视图:
· acl number acl-number;
· acl { { advanced | basic } | mac } acl-number。
通过acl number acl-number name acl-name命令指定number和name创建的ACL,可以使用如下命令进入其视图:
· acl name acl-name,本命令仅支持进入已创建的基本或高级ACL视图;
· acl number acl-number [ name acl-name ];
· acl { { advanced | basic } | mac } name acl-name。
通过acl { { advanced | basic } | mac } name acl-name命令指定name创建的ACL,可以使用如下命令进入其视图:
· acl name acl-name,本命令仅支持进入已创建的基本或高级ACL视图;
· acl { { advanced | basic } | mac } name acl-name。
当ACL内不存在任何规则时,用户可以使用本命令对该ACL的规则匹配顺序进行修改,否则不允许修改。
如果ACL规则的匹配项中包含了除IP五元组(源IP地址、源端口号、目的IP地址、目的端口号、传输层协议)、ICMP报文或ICMPv6报文的消息类型和消息码信息、日志操作和时间段之外的其它匹配项,则设备转发ACL匹配的这类报文时会启用慢转发流程。慢转发时设备会将报文上送控制平面,计算报文相应的表项信息。执行慢转发流程时,设备的转发能力将会有所降低。
【举例】
# 创建一个编号为2000的IPv4基本ACL,并进入其视图。
[Sysname] acl basic 2000
[Sysname-acl-ipv4-basic-2000]
# 创建一个IPv4基本ACL,指定其名称为flow,并进入其视图。
<Sysname> system-view
[Sysname] acl basic name flow
[Sysname-acl-ipv4-basic-flow]
# 创建一个编号为3000的IPv4高级ACL,并进入其视图。
<Sysname> system-view
[Sysname] acl advanced 3000
[Sysname-acl-ipv4-adv-3000]
# 创建一个编号为4000的二层ACL,并进入其视图。
<Sysname> system-view
[Sysname] acl mac 4000
[Sysname-acl-mac-4000]
# 创建一个二层ACL,其名称为flow,并进入其视图。
<Sysname> system-view
[Sysname] acl mac name flow
[Sysname-acl-mac-flow]
【相关命令】
· display acl
acl copy命令用来复制并生成一个新的ACL。
【命令】
acl [ mac ] copy { source-acl-number | name source-acl-name } to { dest-acl-number | name dest-acl-name }
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
mac:指定ACL类型为二层ACL。
source-acl-number:指定源ACL的编号,该ACL必须存在。本参数的取值范围及其代表的ACL类型如下:
· 2000~2999:表示基本ACL。
· 3000~3999:表示高级ACL。
· 4000~4999:表示二层ACL。
name source-acl-name:指定源ACL的名称,该ACL必须存在。source-acl-name为1~63个字符的字符串,不区分大小写。
dest-acl-number:指定目的ACL的编号,该ACL必须不存在。本参数的取值范围及其代表的ACL类型如下:
· 2000~2999:表示基本ACL。
· 3000~3999:表示高级ACL。
· 4000~4999:表示二层ACL。
name dest-acl-name:指定目的ACL的名称,该ACL必须不存在。dest-acl-name为1~63个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头。为避免混淆,ACL的名称不允许使用英文单词all。
【使用指导】
目的ACL的类型要与源ACL的类型相同。
当通过编号指定源或目的ACL时:
· 如果编号在2000~3999范围内。
· 如果编号在4000~4999范围内,可以不输入mac关键字,直接指定编号。
当通过名称指定源或目的ACL时,对于二层ACL,必须输入mac关键字,否则表示IPv4 ACL。
除了ACL的编号或名称不同外,新生成的ACL(即目的ACL)的匹配顺序、规则编号的步长、所包含的规则、规则的描述信息以及ACL的描述信息等都与源ACL的相同。
【举例】
# 通过复制已存在的IPv4基本ACL 2001,来生成一个新的编号为2002的同类型ACL。
<Sysname> system-view
[Sysname] acl copy 2001 to 2002
# 通过复制已存在的IPv4基本ACL test,来生成名为paste的同类型ACL。
<Sysname> system-view
[Sysname] acl copy name test to name paste
description命令用来配置ACL的描述信息。
undo description命令用来删除ACL的描述信息。
【命令】
description text
undo description
【缺省情况】
ACL没有任何描述信息。
【视图】
IPv4基本ACL视图/IPv4高级ACL视图
二层ACL视图
【缺省用户角色】
network-admin
【参数】
text:表示ACL的描述信息,为1~127个字符的字符串,区分大小写。
【举例】
<Sysname> system-view
[Sysname] acl basic 2000
[Sysname-acl-ipv4-basic-2000] description This is an IPv4 basic ACL.
【相关命令】
· display acl
display acl命令用来显示ACL的配置和运行情况。
【命令】
display acl [ mac ] { acl-number | all | name acl-name }
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
mac:指定ACL类型为二层ACL。
acl-number:显示指定编号的ACL的配置和运行情况。acl-number表示ACL的编号,取值范围及其代表的ACL类型如下:
· 2000~2999:表示基本ACL。
· 3000~3999:表示高级ACL。
· 4000~4999:表示二层ACL。
all:显示指定类型中全部ACL的配置和运行情况。
name acl-name:显示指定名称的ACL的配置和运行情况。acl-name表示ACL的名称,为1~63个字符的字符串,不区分大小写。
【使用指导】
本命令将按照实际匹配顺序来排列ACL内的规则,即:当ACL的规则匹配顺序为配置顺序时,各规则将按照编号由小到大排列;当ACL的规则匹配顺序为自动排序时,各规则将按照“深度优先”原则由深到浅排列。
如果未指定mac参数,则表示IPv4 ACL。
【举例】
# 显示IPv4基本ACL 2001的配置和运行情况。
<Sysname> display acl 2001
Basic IPv4 ACL 2001, 1 rule, match-order is auto,
This is an IPv4 basic ACL.
ACL's step is 5, start ID is 0
rule 5 permit source 1.1.1.1 0
rule 5 comment This rule is used on GigabitEthernet1/0/1.
表1-1 display acl命令显示信息描述表
字段 |
描述 |
Basic IPv4 ACL 2001 |
该ACL的类型和编号 |
1 rule |
该ACL内包含的规则数量 |
match-order is auto |
该ACL的规则匹配顺序为自动排序(匹配顺序为配置顺序时不显示本字段) |
This is an IPv4 basic ACL. |
该ACL的描述信息 |
ACL's step is 5 |
该ACL的规则编号的步长值为5 |
start ID is 0 |
该ACL的规则编号的起始值为0 |
rule 5 permit source 1.1.1.1 0 |
规则5的具体内容,源地址为具体地址 |
rule 5 comment This rule is used on GigabitEthernet1/0/1. |
规则5的描述信息 |
display packet-filter命令用来显示ACL在报文过滤中的应用情况。
【命令】
display packet-filter { { global | interface [ interface-type interface-number ] } [ inbound ] } [ slot slot-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
interface [ interface-type interface-number ]:显示指定接口上ACL在报文过滤中的应用情况。interface-type interface-number表示接口类型和接口编号。若未指定接口类型和接口编号,将显示所有接口上ACL在报文过滤中的应用情况。当接口类型为以太网接口时,不需要指定slot参数。
inbound:显示入方向上ACL在报文过滤中的应用情况。
slot slot-number:指定设备编号,取值只能为1。
【举例】
# 显示接口GigabitEthernet1/0/1入方向上ACL在报文过滤中的应用情况。
<Sysname> display packet-filter interface gigabitethernet 1/0/1 inbound
Interface: GigabitEthernet1/0/1
Inbound policy:
IPv4 ACL 2001
MAC ACL 4003
表1-2 display packet-filter命令显示信息描述表
字段 |
描述 |
Interface |
ACL在指定接口上的应用情况 |
Inbound policy |
ACL在入方向上的应用情况 |
IPv4 ACL 2001 |
IPv4基本ACL 2001应用成功 |
display packet-filter verbose命令用来显示ACL在报文过滤中的详细应用情况。
【命令】
display packet-filter verbose { { global | interface interface-type interface-number } [ [ mac ] { acl-number | name acl-name } } [ slot slot-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
interface interface-type interface-number:显示指定接口上ACL在报文过滤中的详细应用情况。interface-type interface-number表示接口类型和接口编号。当接口类型为以太网接口时,不需要指定slot参数。
inbound:显示入方向上ACL在报文过滤中的详细应用情况。
mac:指定ACL类型为二层ACL。
acl-number:显示指定编号ACL在报文过滤中的详细应用情况。acl-number表示ACL的编号,取值范围及其代表的ACL类型如下:
· 2000~2999:表示基本ACL。
· 3000~3999:表示高级ACL。
· 4000~4999:表示二层ACL。
name acl-name:显示指定名称ACL在报文过滤中的详细应用情况。acl-name表示ACL的名称,为1~63个字符的字符串,不区分大小写。
slot slot-number:指定设备编号,取值只能为1。
【使用指导】
若未指定acl-number、name acl-name和ACL类型(mac)参数,将显示全部IPv4 ACL在报文过滤中的详细应用情况。
【举例】
# 显示接口GigabitEthernet1/0/1入方向上全部ACL在报文过滤中的详细应用情况。
<Sysname> display packet-filter verbose interface gigabitethernet 1/0/1 inbound
Interface: GigabitEthernet1/0/1
Inbound policy:
IPv4 ACL 2001
rule 0 permit
rule 5 permit source 1.1.1.1 0 (Failed)
MAC ACL 4000
IPv4 default action: Deny
MAC default action: Deny
表1-3 display packet-filter verbose命令显示信息描述表
字段 |
描述 |
Interface |
ACL在指定接口上的详细应用情况 |
Inbound policy |
ACL在入方向上的详细应用情况 |
IPv4 ACL 2001 |
IPv4基本ACL 2001应用成功 |
IPv4 ACL 2002 (Failed) |
IPv4基本ACL 2002应用失败 |
rule 5 permit source 1.1.1.1 0 (Failed) |
规则5应用失败 |
IPv4 default action |
报文过滤的缺省动作,包括: · Deny:报文过滤缺省动作为Deny应用成功 · Deny (Failed):报文过滤缺省动作为Deny应用失败,实际动作仍为Permit · Permit:报文过滤缺省动作为Permit |
MAC default action |
报文过滤的缺省动作,包括: · Deny:报文过滤缺省动作为Deny应用成功 · Deny (Failed):报文过滤缺省动作为Deny应用失败,实际动作仍为Permit · Permit:报文过滤缺省动作为Permit |
display qos-acl resource命令用来显示QoS和ACL资源的使用情况。
【命令】
display qos-acl resource [ slot slot-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
slot slot-number:指定设备编号,取值只能为1。
【使用指导】
如果指定的设备不支持统计QoS和ACL资源,将不会显示该设备上QoS和ACL资源的使用情况。
【举例】
# 显示QoS和ACL资源的使用情况。
<Sysname> display qos-acl resource
Interfaces: GE1/0/1 to GE1/0/8, XGE1/0/9 to XGE1/0/10 (slot 1)
---------------------------------------------------------------------
Type Total Reserved Configured Remaining Usage
---------------------------------------------------------------------
PCL ACL 256 26 23 207 19%
表1-4 display qos-acl resource命令显示信息描述表
字段 |
描述 |
Interfaces |
资源对应的接口范围 |
Type |
资源类型:取值为PCL ACL,表示用于策略的ACL资源,包括协议报文使用ACL以及应用模块引用ACL时占用的资源 |
Total |
资源总数 |
Reserved |
预留的资源数 |
Configured |
已经使用的资源数 |
Remaining |
剩余可用的资源数 |
Usage |
预留的资源数与已配置的资源数之和占资源总数的百分比,分子按实际计算结果的整数部分显示,例如实际计算结果为50.8%,此处显示为50%。 |
packet-filter命令用来在接口上应用ACL进行报文过滤。
undo packet-filter命令用来取消在接口上应用ACL进行报文过滤。
【命令】
packet-filter [ mac ] { acl-number | name acl-name } inbound [ hardware-count ]
undo packet-filter [ mac ] { acl-number | name acl-name } inbound
【缺省情况】
接口不对报文进行过滤。
【视图】
二层以太网接口视图
【缺省用户角色】
network-admin
【参数】
mac:指定ACL类型为二层ACL。
acl-number:指定ACL的编号,取值范围及其代表的ACL类型如下:
· 2000~2999:表示基本ACL。
· 3000~3999:表示高级ACL。
· 4000~4999:表示二层ACL。
name acl-name:指定ACL的名称。acl-name表示ACL的名称,为1~63个字符的字符串,不区分大小写。
inbound:对收到的报文进行过滤。
【使用指导】
通过编号引用ACL,请遵循如下规则:
· 当需要引用IPv4类型ACL时,请直接指定acl-number。
· 当需要引用二层ACL时,可首先指定mac关键字再指定acl-number,或直接指定acl-number。
通过名称引用ACL,请遵循如下规则:
· 当需要引用IPv4类型ACL时,请直接指定name acl-name。
· 当需要引用二层类型ACL时,必须首先指定mac关键字,再指定name acl-name。
一个接口在一个方向上最多可应用2个ACL进行报文过滤,包括一个IPv4 ACL(IPv4基本ACL或IPv4高级ACL)和一个二层ACL。
不建议在设备作为三层网关的场景下配置接口的报文过滤功能,否则可能会导致三层转发异常。
【举例】
# 应用IPv4基本ACL 2001对接口GigabitEthernet1/0/1收到的报文进行过滤。
<Sysname> system-view
[Sysname] interface gigabitethernet 1/0/1
[Sysname-GigabitEthernet1/0/1] packet-filter 2001 inbound
· display packet-filter
· display packet-filter verbose
packet-filter default deny命令用来配置报文过滤的缺省动作为Deny,即禁止未匹配上ACL规则的报文通过。
undo packet-filter default deny命令用来恢复缺省情况。
【命令】
packet-filter default deny
undo packet-filter default deny
【缺省情况】
报文过滤的缺省动作为Permit,即允许未匹配上ACL规则的报文通过。
【视图】
系统视图
【缺省用户角色】
network-admin
【使用指导】
配置报文过滤的缺省动作会在所有的应用对象下添加一个缺省动作应用,该应用也会像其它应用的ACL一样显示。
【举例】
# 配置报文过滤的缺省动作为Deny。
<Sysname> system-view
[Sysname] packet-filter default deny
【相关命令】
· display packet-filter
· display packet-filter verbose
rule命令用来为IPv4高级ACL创建一条规则。
undo rule命令用来为IPv4高级ACL删除一条规则或删除规则中的部分内容。
【命令】
rule [ rule-id ] { deny | permit } protocol [ destination { dest-address dest-wildcard | any } | { dscp dscp | { precedence precedence | tos tos } * } | icmp-type { icmp-type [ icmp-code ] | icmp-message } | | source { source-address source-wildcard | any } | time-range time-range-name ] *
undo rule rule-id [ destination | dscp | { precedence | tos } * | icmp-type | source | time-range ] *
undo rule { deny | permit } protocol [ destination { dest-address dest-wildcard | any } | dscp dscp | { precedence precedence | tos tos } * | icmp-type { icmp-type [ icmp-code ] | icmp-message } | source { source-address source-wildcard | any } | time-range time-range-name ] *
【缺省情况】
IPv4高级ACL内不存在任何规则。
【视图】
IPv4高级ACL视图
【缺省用户角色】
network-admin
【参数】
rule-id:指定IPv4高级ACL规则的编号,取值范围为0~65534。若未指定本参数,系统将从规则编号的起始值开始,自动分配一个大于现有最大编号的步长最小倍数。譬如现有规则的最大编号为28,步长为5,那么自动分配的新编号将是30。
deny:表示拒绝符合条件的报文。
permit:表示允许符合条件的报文。
protocol:表示IPv4承载的协议类型,可输入如表1-5所示的数字(取值范围为0~255)或关键字。protocol不能为6、17、tcp或udp。
数字 |
关键字 |
说明 |
- |
ip |
匹配IP协议报文 |
1 |
icmp |
匹配ICMP协议报文 |
2 |
igmp |
匹配IGMP协议报文 |
4 |
ipinip |
匹配IPinIP协议报文 |
protocol之后可配置如表1-6所示的规则信息参数。
参数 |
类别 |
作用 |
说明 |
source { source-address source-wildcard | any } |
源地址信息 |
指定ACL规则的源地址信息 |
source-address:源IP地址 source-wildcard:源IP地址的通配符掩码(为0表示主机地址) any:任意源IP地址 |
destination { dest-address dest-wildcard | any } |
目的地址信息 |
指定ACL规则的目的地址信息 |
dest-address:目的IP地址 dest-wildcard:目的IP地址的通配符掩码(为0表示主机地址) any:任意目的IP地址 |
precedence precedence |
报文优先级 |
指定IP优先级 |
precedence用数字表示时,取值范围为0~7;用字符表示时,分别对应routine、priority、immediate、flash、flash-override、critical、internet、network |
tos tos |
报文优先级 |
指定ToS优先级 |
tos用数字表示时,取值范围为0~15;用字符表示时,可以选取max-reliability(2)、max-throughput(4)、min-delay(8)、min-monetary-cost(1)、normal(0) |
dscp dscp |
报文优先级 |
指定DSCP优先级 |
dscp用数字表示时,取值范围为0~63;用文符表示时,可以选取af11(10)、af12(12)、af13(14)、af21(18)、af22(20)、af23(22)、af31(26)、af32(28)、af33(30)、af41(34)、af42(36)、af43(38)、cs1(8)、cs2(16)、cs3(24)、cs4(32)、cs5(40)、cs6(48)、cs7(56)、default(0)、ef(46) |
time-range time-range-name |
时间段 |
指定本规则生效的时间段 |
time-range-name:时间段的名称,为1~32个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头。若该时间段尚未配置,该规则仍会成功创建但系统将给出提示信息,并在该时间段的配置完成后此规则才会生效。有关时间段的详细介绍和具体配置过程,请参见“ACL和QoS配置指导”中的“时间段” |
当protocol为icmp(1)时,用户还可配置如表1-7所示的规则信息参数。
表1-7 ICMP特有的规则信息参数
参数 |
类别 |
作用 |
说明 |
icmp-type { icmp-type icmp-code | icmp-message } |
ICMP报文的消息类型和消息码信息 |
指定本规则中ICMP报文的消息类型和消息码信息 |
icmp-type:ICMP消息类型,取值范围为0~255 icmp-code:ICMP消息码,取值范围为0~255 icmp-message:ICMP消息名称。可以输入的ICMP消息名称,及其与消息类型和消息码的对应关系如表1-8所示 |
表1-8 ICMP消息名称与消息类型和消息码的对应关系
ICMP消息名称 |
ICMP消息类型 |
ICMP消息码 |
echo |
8 |
0 |
echo-reply |
0 |
0 |
fragmentneed-DFset |
3 |
4 |
host-redirect |
5 |
1 |
host-tos-redirect |
5 |
3 |
host-unreachable |
3 |
1 |
information-reply |
16 |
0 |
information-request |
15 |
0 |
net-redirect |
5 |
0 |
net-tos-redirect |
5 |
2 |
net-unreachable |
3 |
0 |
parameter-problem |
12 |
0 |
port-unreachable |
3 |
3 |
protocol-unreachable |
3 |
2 |
reassembly-timeout |
11 |
1 |
source-quench |
4 |
0 |
source-route-failed |
3 |
5 |
timestamp-reply |
14 |
0 |
timestamp-request |
13 |
0 |
ttl-exceeded |
11 |
0 |
【使用指导】
使用rule命令时,如果指定编号的规则不存在,则创建一条新的规则;如果指定编号的规则已存在,则对旧规则进行修改,即在其原有内容的基础上叠加新的内容。
新创建或修改的规则不能与已有规则的内容完全相同,否则将提示出错,并导致该操作失败。
当ACL的规则匹配顺序为配置顺序时,允许修改该ACL内的任意一条已有规则;当ACL的规则匹配顺序为自动排序时,不允许修改该ACL内的已有规则,否则将提示出错。
display acl all命令可以查看所有已存在的IPv4高级ACL规则和IPv4基本ACL规则。
删除规则时需要注意的是:
· 使用undo rule rule-id命令时,如果没有指定任何可选参数,则删除整条规则;如果指定了可选参数,则只删除该参数所对应的内容。
· undo rule { deny | permit }命令无法删除规则中的部分内容,使用undo rule { deny | permit }命令时,必须输入已存在规则的完整形式。
【举例】
# 为IPv4高级ACL 3001创建规则如下:允许IP报文通过,但拒绝发往192.168.1.0/24网段的ICMP报文通过。
<Sysname> system-view
[Sysname] acl advanced 3001
[Sysname-acl-ipv4-adv-3001] rule deny icmp destination 192.168.1.0 0.0.0.255
[Sysname-acl-ipv4-adv-3001] rule permit ip
【相关命令】
· acl
· display acl
· step
· time-range(ACL和QoS命令参考/时间段)
rule命令用来为IPv4基本ACL创建一条规则。
undo rule命令用来为IPv4基本ACL删除一条规则或删除规则中的部分内容。
【命令】
rule [ rule-id ] { deny | permit } [ source { source-address source-wildcard | any } | time-range time-range-name ] *
undo rule rule-id [ source | time-range ] *
undo rule { deny | permit } [ source { source-address source-wildcard | any } | time-range time-range-name ] *
【缺省情况】
IPv4基本ACL内不存在任何规则。
【视图】
IPv4基本ACL视图
【缺省用户角色】
network-admin
【参数】
rule-id:指定IPv4基本ACL规则的编号,取值范围为0~65534。若未指定本参数,系统将从规则编号的起始值开始,自动分配一个大于现有最大编号的步长最小倍数。譬如现有规则的最大编号为28,步长为5,那么自动分配的新编号将是30。
deny:表示拒绝符合条件的报文。
permit:表示允许符合条件的报文。
source { source-address source-wildcard | any }:指定规则的源IP地址信息。source-address表示报文的源IP地址,source-wildcard表示源IP地址的通配符掩码(为0表示主机地址),any表示任意源IP地址。
time-range time-range-name:指定本规则生效的时间段。time-range-name表示时间段的名称,为1~32个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头。若该时间段尚未配置,该规则仍会成功创建但系统将给出提示信息,并在该时间段的配置完成后此规则才会生效。有关时间段的详细介绍和具体配置过程,请参见“ACL和QoS配置指导”中的“时间段”。
【使用指导】
当ACL用于QoS策略的流分类或用于报文过滤功能时,只能配置匹配二层报文的规则。
使用rule命令时,如果指定编号的规则不存在,则创建一条新的规则;如果指定编号的规则已存在,则对旧规则进行修改,即在其原有内容的基础上叠加新的内容。
新创建或修改的规则不能与已有规则的内容完全相同,否则将提示出错,并导致该操作失败。
当ACL的规则匹配顺序为配置顺序时,允许修改该ACL内的任意一条已有规则;当ACL的规则匹配顺序为自动排序时,不允许修改该ACL内的已有规则,否则将提示出错。
display acl all命令可以查看所有已存在的IPv4高级ACL规则和IPv4基本ACL规则。
删除规则时需要注意的是:
· 使用undo rule rule-id命令时,如果没有指定任何可选参数,则删除整条规则;如果指定了可选参数,则只删除该参数所对应的内容。
· undo rule { deny | permit }命令无法删除规则中的部分内容,使用undo rule { deny | permit }命令时,必须输入已存在规则的完整形式。
【举例】
# 为IPv4基本ACL 2000创建规则如下:仅允许来自10.0.0.0/8、172.17.0.0/16和192.168.1.0/24网段的报文通过,而拒绝来自所有其它网段的报文通过。
<Sysname> system-view
[Sysname] acl basic 2000
[Sysname-acl-ipv4-basic-2000] rule permit source 10.0.0.0 0.255.255.255
[Sysname-acl-ipv4-basic-2000] rule permit source 172.17.0.0 0.0.255.255
[Sysname-acl-ipv4-basic-2000] rule permit source 192.168.1.0 0.0.0.255
[Sysname-acl-ipv4-basic-2000] rule deny source any
【相关命令】
· acl
· display acl
· step
· time-range(ACL和QoS命令参考/时间段)
rule命令用来为二层ACL创建一条规则。
undo rule命令用来为二层ACL删除一条规则或删除规则中的部分内容。
【命令】
rule [ rule-id ] { deny | permit } [ cos dot1p | 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 ] *
undo rule rule-id [ time-range ] *
undo rule { deny | permit } [ cos dot1p | 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内不存在任何规则。
【视图】
二层ACL视图
【缺省用户角色】
network-admin
【参数】
rule-id:指定二层ACL规则的编号,取值范围为0~65534。若未指定本参数,系统将从规则编号的起始值开始,自动分配一个大于现有最大编号的步长最小倍数。譬如现有规则的最大编号为28,步长为5,那么自动分配的新编号将是30。
deny:表示拒绝符合条件的报文。
permit:表示允许符合条件的报文。
cos dot1p:指定802.1p优先级。dot1p表示802.1p优先级,可输入的形式如下:
· 数字:取值范围为0~7;
· 名称:best-effort、background、spare、excellent-effort、controlled-load、video、voice和network-management,依次对应于数字0~7。
dest-mac dest-address dest-mask:指定目的MAC地址范围。dest-address表示目的MAC地址,格式为H-H-H。dest-mask表示目的MAC地址的掩码,格式为H-H-H。
lsap lsap-type lsap-type-mask:指定LLC封装中的DSAP字段和SSAP字段。lsap-type表示数据帧的封装格式,取值范围为十六进制数0~ffff。lsap-type-mask表示LSAP的类型掩码,用于指定屏蔽位,取值范围为十六进制数0~ffff。
type protocol-type protocol-type-mask:指定链路层协议类型。protocol-type表示数据帧类型,对应Ethernet_II类型和Ethernet_SNAP类型帧中的type域,取值范围为十六进制数0~ffff。protocol-type-mask表示类型掩码,用于指定屏蔽位,取值范围为十六进制数0~ffff。
source-mac source-address source-mask:指定源MAC地址范围。source-address表示源MAC地址,格式为H-H-H。source-mask表示源MAC地址的掩码,格式为H-H-H。
time-range time-range-name:指定本规则生效的时间段。time-range-name表示时间段的名称,为1~32个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头。若该时间段尚未配置,该规则仍会成功创建但系统将给出提示信息,并在该时间段的配置完成后此规则才会生效。有关时间段的详细介绍和具体配置过程,请参见“ACL和QoS配置指导”中的“时间段”。
【使用指导】
使用rule命令时,如果指定编号的规则不存在,则创建一条新的规则;如果指定编号的规则已存在,则对旧规则进行修改,即在其原有内容的基础上叠加新的内容。
新创建或修改的规则不能与已有规则的内容完全相同,否则将提示出错,并导致该操作失败。
当ACL的规则匹配顺序为配置顺序时,允许修改该ACL内的任意一条已有规则;当ACL的规则匹配顺序为自动排序时,不允许修改该ACL内的已有规则,否则将提示出错。
display acl mac all命令可以查看所有已存在的二层ACL规则。
删除规则时需要注意的是:
· 使用undo rule rule-id命令时,如果没有指定任何可选参数,则删除整条规则;如果指定了可选参数,则只删除该参数所对应的内容。
· undo rule { deny | permit }命令无法删除规则中的部分内容,使用undo rule { deny | permit }命令时,必须输入已存在规则的完整形式。
【举例】
# 为二层ACL 4000创建规则如下:允许ARP报文通过,但拒绝RARP报文通过。
<Sysname> system-view
[Sysname] acl mac 4000
[Sysname-acl-mac-4000] rule permit type 0806 ffff
[Sysname-acl-mac-4000] rule deny type 8035 ffff
【相关命令】
· acl
· display acl
· step
· time-range(ACL和QoS命令参考/时间段)
rule comment命令用来为规则配置描述信息。
undo rule comment命令用来删除指定规则的描述信息。
【命令】
rule rule-id comment text
undo rule rule-id comment
【缺省情况】
规则没有描述信息。
【视图】
IPv4基本ACL视图/IPv4高级ACL视图
二层ACL视图
【缺省用户角色】
network-admin
【参数】
rule-id:指定规则的编号,该规则必须存在。取值范围为0~65534。
text:表示规则的描述信息,为1~127个字符的字符串,区分大小写。
【使用指导】
使用rule comment命令时,如果指定的规则没有描述信息,则为其添加描述信息,否则修改其描述信息。
【举例】
# 为IPv4基本ACL 2000配置规则0,并为该规则配置描述信息。
<Sysname> system-view
[Sysname] acl basic 2000
[Sysname-acl-ipv4-basic-2000] rule 0 deny source 1.1.1.1 0
[Sysname-acl-ipv4-basic-2000] rule 0 comment This rule is used on gigabitethernet 1/0/1.
【相关命令】
· display acl
rule remark命令用来创建一条规则注释信息。
undo rule remark命令用来删除一条或多条规则注释信息。
【命令】
rule [ rule-id ] remark text
undo rule [ rule-id ] remark [ text ]
【缺省情况】
ACL内没有任何规则注释信息。
【视图】
IPv4基本ACL视图/IPv4高级ACL视图
二层ACL视图
【缺省用户角色】
network-admin
【参数】
rule-id:指定规则的编号(该编号对应的规则可以存在也可以不存在),取值范围为0~65534。该编号用来确定规则注释信息显示的位置:
· 在配置顺序下:若该编号与现有某规则的编号相同,则该注释信息将紧邻该规则之前显示;否则,将按照编号由小到大显示。
· 在自动排序下:若该编号与现有某规则的编号相同,则该注释信息将紧邻该规则之前显示;否则,将在所有规则的最后显示。
text:表示规则注释信息,为1~127个字符的字符串,区分大小写。
【使用指导】
需要注意的是:
· 使用rule remark命令时,如果没有指定rule-id参数,系统将按照步长从0开始,自动分配一个大于现有规则中最大编号的最小编号。
· 使用undo rule remark命令时,如果没有指定rule-id和text参数,将删除所有规则注释信息;如果没有指定rule-id但指定了text参数,则只删除指定内容的规则注释信息。
【举例】
# 假设规则编号为10~25的这四条规则是为VIP用户制订的,为方便后续维护,对这四条规则进行如下注释:开头和结尾分别注释为“Rules for VIP_start”和“Rules for VIP_end”。
<Sysname> system-view
[Sysname] acl basic 2000
[Sysname-acl-basic-2000] rule 10 remark Rules for VIP_start
[Sysname-acl-basic-2000] rule 26 remark Rules for VIP_end
[Sysname-acl-basic-2000] display this
#
acl number 2000
rule 0 permit source 14.1.1.0 0.0.0.255
rule 5 permit source 10.1.1.1 0 time-range work-time
rule 10 remark Rules for VIP_start
rule 10 permit source 192.168.0.0 0.0.0.255
rule 15 permit source 1.1.1.1 0
rule 20 permit source 10.1.1.1 0
rule 26 remark Rules for VIP_end
#
return
【相关命令】
· display acl
step命令用来配置规则编号的步长。
undo step命令用来恢复缺省情况。
【命令】
step step-value [ start start-value ]
undo step
【缺省情况】
规则编号的步长为5,起始值为0。
【视图】
IPv4基本ACL视图/IPv4高级ACL视图
二层ACL视图
【缺省用户角色】
network-admin
【参数】
step-value:表示规则编号的步长值,取值范围为1~20。
start-value:表示规则编号的起始值。取值范围为0~20。
【使用指导】
系统为规则自动分配编号的方式如下:系统从规则编号的起始值开始,自动分配一个大于现有最大编号的步长最小倍数的编号。譬如原有编号为0、5、9、10和12的五条规则,步长为5,此时如果创建一条规则且不指定编号,那么系统将自动为其分配编号15。
如果步长或规则编号的起始值发生了改变,ACL内原有全部规则的编号都将自动从规则编号的起始值开始按步长重新排列。譬如,某ACL内原有编号为0、5、9、10和15的五条规则,当修改步长为2之后,这些规则的编号将依次变为0、2、4、6和8。
【举例】
# 将IPv4基本ACL 2000的规则编号的步长配置为2。
<Sysname> system-view
[Sysname] acl basic 2000
[Sysname-acl-ipv4-basic-2000] step 2
【相关命令】
· display acl
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!