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

07-ACL和QoS命令参考

01-ACL命令

本章节下载  (391.71 KB)

01-ACL命令


1 ACL

1.1  ACL配置命令

1.1.1  accelerate

accelerate命令用来开启ACL规则的加速匹配功能。

undo accelerate命令用来恢复缺省情况。

【命令】

accelerate

undo accelerate

【缺省情况】

ACL规则的加速匹配功能处于关闭状态。

【视图】

IPv4基本ACL视图/IPv4高级ACL视图

IPv6基本ACL视图/IPv6高级ACL视图

二层ACL视图

【缺省用户角色】

network-admin

【使用指导】

注意

设备上存在大量ACL规则时,执行undo accelerate命令可能会导致设备CPU占用率达到门限状态,影响正常业务处理异常。

 

只有系统ACL资源充足时加速匹配功能才会生效。

只有ACL中的所有规则都支持加速匹配时,执行本命令才能成功开启该ACL的加速匹配功能。

成功开启本功能后,再去修改或添加新的规则时,可能会由于ACL资源不足或新增规则不支持加速导致ACL加速匹配失败。

当设备支持软件加速,并开启本功能后,添加、删除和修改规则时,并不会立即加速,而是延迟一定时间后加速。如果在该时间内,规则又发生变化,则重新计时。当ACL中的规则小于等于100条时,此时间为2秒;当ACL中的规则大于100条时,此时间为20秒。

【举例】

# 开启ACL 2000的加速匹配功能。

<Sysname> system-view

[Sysname] acl basic 2000

[Sysname-acl-ipv4-basic-2000] accelerate

【相关命令】

·     display acl accelerate

1.1.2  acl

acl命令用来创建ACL,并进入ACL视图。如果指定的ACL已存在,则直接进入ACL视图。

undo acl命令用来删除指定或全部ACL。

【命令】

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

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

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

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

undo acl [ ipv6 ] { all | { advanced | basic } { acl-number | name acl-name } }

undo acl mac { all | acl-number | name acl-name }

【缺省情况】

不存在ACL。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

ipv6:指定ACL类型为IPv6 ACL。

basic:指定创建基本ACL。

advanced:指定创建高级ACL。

mac:指定创建二层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个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头。为避免混淆,ACL的名称不允许使用英文单词all。

match-order { auto | config }:指定规则的匹配顺序,auto表示按照自动排序(即“深度优先”原则)的顺序进行规则匹配,config表示按照配置顺序进行规则匹配。缺省情况下,规则的匹配顺序为配置顺序。

all:指定类型中全部ACL。

【使用指导】

通过编号创建的ACL,可以通过如下命令进入其视图:

·     acl [ ipv6 ] number acl-number

·     acl { [ ipv6 ] { advanced | basic } | mac } acl-number

通过acl [ ipv6 ] number acl-number name acl-name命令指定编号和名称创建的ACL,可以使用如下命令进入其视图:

·     acl [ ipv6 ] name acl-name,本命令仅支持进入已创建的基本或高级ACL视图;

·     acl [ ipv6 ] number acl-number [ name acl-name ]

·     acl { [ ipv6 ] { advanced | basic } | mac } name acl-name

通过acl { [ ipv6 ] { advanced | basic } | mac } name acl-name命令指定名称创建的ACL,可以使用如下命令进入其视图:

·     acl [ ipv6 ] name acl-name,本命令仅支持进入已创建的基本或高级ACL视图;

·     acl { [ ipv6 ] { advanced | basic } | mac } name acl-name

当ACL内不存在任何规则时,用户可以使用本命令对该ACL的规则匹配顺序进行修改,否则不允许进行修改。

如果ACL规则的匹配项中包含了除IP五元组(源IP地址、源端口号、目的IP地址、目的端口号、传输层协议)、ICMP报文或ICMPv6报文的消息类型和消息码信息、VPN实例、日志操作和时间段之外的其它匹配项,则设备转发ACL匹配的这类报文时会启用慢转发流程。慢转发时设备会将报文上送控制平面,计算报文相应的表项信息。执行慢转发流程时,设备的转发能力将会有所降低。

【举例】

# 创建一个编号为2000的IPv4基本ACL,并进入其视图。

<Sysname> system-view

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

# 创建一个编号为2000的IPv6基本ACL,并进入其视图。

<Sysname> system-view

[Sysname] acl ipv6 basic 2000

[Sysname-acl-ipv6-basic-2000]

# 创建一个IPv6基本ACL,其名称为flow,并进入其视图。

<Sysname> system-view

[Sysname] acl ipv6 basic name flow

[Sysname-acl-ipv6-basic-flow]

# 创建一个IPv6高级ACL,其名称为abc,并进入其视图。

<Sysname> system-view

[Sysname] acl ipv6 advanced name abc

[Sysname-acl-ipv6-adv-abc]

# 创建一个编号为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

1.1.3  acl copy

acl copy命令用来复制并生成一个新的ACL。

【命令】

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

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

ipv6:指定ACL类型为IPv6 ACL。

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的编号或名称不同外,新生成的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

1.1.4  acl logging interval

acl logging interval命令用来配置报文过滤日志信息的生成与发送周期,同时开启报文的首包上送功能。

undo acl logging interval命令用来恢复缺省情况。

【命令】

acl logging interval interval

undo acl logging interval

【缺省情况】

报文过滤日志信息的生成与发送周期为0分钟,即不记录报文过滤的日志。报文首包上送功能处于关闭状态。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

interval:报文过滤日志信息的生成与发送周期,取值范围为0~1440,且必须为5的整数倍,0表示不进行记录,单位为分钟。

【使用指导】

系统只支持对应用IPv4基本ACL、IPv4高级ACL、IPv6基本ACL或IPv6高级ACL进行报文过滤的报文过滤日志信息进行记录,且在上述ACL中配置规则时必须指定logging参数。

报文过滤日志的生成与发送周期起始于报文过滤中ACL匹配数据流的第一个数据包,报文过滤日志包括周期内被匹配的报文数量以及所使用的ACL规则。在一个周期内:

·     对于规则匹配数据流的第一个数据包,设备会立即生成报文过滤日志并发送到信息中心;

·     对于规则匹配数据流的其他数据包,设备将在周期结束后生成报文过滤日志并发送到信息中心。

有关信息中心的详细介绍请参见“网络管理和监控配置指导”中的“信息中心”。

【举例】

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

<Sysname> system-view

[Sysname] acl logging interval 10

【相关命令】

·     rule (IPv4 advanced ACL view)

·     rule (IPv4 basic ACL view)

·     rule (IPv6 advanced ACL view)

·     rule (IPv6 basic ACL view)

1.1.5  acl trap interval

acl trap interval命令用来配置报文过滤告警信息的生成与发送周期。

undo acl trap interval命令用来恢复缺省情况。

【命令】

acl trap interval interval

undo acl trap interval

【缺省情况】

报文过滤告警信息的生成与发送周期为0分钟,即不记录报文过滤的告警信息。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

interval:报文过滤告警信息的生成与发送周期,取值范围为0~1440,且必须为5的整数倍,0表示不进行记录,单位为分钟。

【使用指导】

系统只支持对应用IPv4基本ACL、IPv4高级ACL、IPv6基本ACL或IPv6高级ACL进行报文过滤的报文过滤告警信息进行记录,且在上述ACL中配置规则时必须指定logging参数。

报文过滤告警信息的生成与发送周期起始于报文过滤中ACL匹配数据流的第一个数据包,报文过滤告警信息包括周期内被匹配的报文数量以及所使用的ACL规则。在一个周期内:

·     对于规则匹配数据流的第一个数据包,设备会立即生成报文过滤告警信息并发送到SNMP模块;

·     对于规则匹配数据流的其他数据包,设备将在周期结束后生成报文过滤告警信息并发送到SNMP模块。

有关SNMP的详细介绍,请参见“网络管理和监控配置指导”中的“SNMP”。

【举例】

# 配置IPv4报文过滤告警信息的生成与发送周期为10分钟。

<Sysname> system-view

[Sysname] acl trap interval 10

【相关命令】

·     rule (IPv4 advanced ACL view)

·     rule (IPv4 basic ACL view)

·     rule (IPv6 advanced ACL view)

·     rule (IPv6 basic ACL view)

1.1.6  description

description命令用来配置ACL的描述信息。

undo description命令用来删除ACL的描述信息。

【命令】

description text

undo description

【缺省情况】

ACL没有任何描述信息。

【视图】

IPv4基本ACL视图/IPv4高级ACL视图

IPv6基本ACL视图/IPv6高级ACL视图

二层ACL视图

【缺省用户角色】

network-admin

【参数】

text:表示ACL的描述信息,为1~127个字符的字符串,区分大小写。

【举例】

# 为IPv4基本ACL 2000配置描述信息。

<Sysname> system-view

[Sysname] acl basic 2000

[Sysname-acl-ipv4-basic-2000] description This is an IPv4 basic ACL.

【相关命令】

·     display acl

1.1.7  display acl

display acl命令用来显示ACL的配置和运行情况。

【命令】

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

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【参数】

ipv6:指定ACL类型为IPv6 ACL。

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的规则匹配顺序为自动排序时,各规则将按照“深度优先”原则由深到浅排列。

【举例】

# 显示所有IPv4 ACL的配置和运行情况。

<Sysname> display acl all

Basic IPv4 ACL 2001, 2 rules, match-order is auto,

This is an IPv4 basic ACL.

ACL's step is 5

ACL accelerated

 rule 5 permit source 1.1.1.1 0 (5 times matched)

 rule 5 comment This rule is used on GigabitEthernet1/0/1.

 rule 10 permit source object-group permit (5 times matched)

Advanced IPv4 ACL 3001, 1 rule,

ACL's step is 5

 rule 0 permit ip source 1.1.1.0 0.0.0.255 destination 3.3.3.0 0.0.0.255 (Dynamic)

表1-1 display acl命令显示信息描述表

字段

描述

Basic IPv4 ACL 2001

该ACL的类型和编号,ACL的类型包括:

·     Basic IPv4 ACL:表示IPv4基本ACL

·     Advanced IPv4 ACL:表示IPv4高级ACL

·     Basic IPv6 ACL:表示IPv6基本ACL

·     Advanced IPv6 ACL:表示IPv6高级ACL

·     MAC ACL:表示二层ACL

2 rules

该ACL内包含的规则数量

match-order is auto

该ACL的规则匹配顺序为自动排序(匹配顺序为配置顺序时不显示本字段)

This is an IPv4 basic ACL.

该ACL的描述信息

ACL's step is 5

该ACL的规则编号的步长值为5

ACL accelerated

该ACL开启了加速功能

rule 5 permit source 1.1.1.1 0

规则5的具体内容,源地址为具体地址

rule 10 permit source object-group permit

规则10的具体内容,源地址为对象组

5 times matched

该规则匹配的次数为5(仅统计软件ACL的匹配次数,当匹配次数为0时不显示本字段)

rule 5 comment This rule is used on GigabitEthernet1/0/1.

规则5的描述信息

Dynamic

该规则由应用模块动态添加

 

1.1.8  display acl accelerate

display acl accelerate命令用来显示ACL的加速状态。

【命令】

display acl accelerate { summary [ ipv6 | mac ] | verbose [ ipv6 | mac ] { acl-number | name acl-name } }

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【参数】

summary:显示ACL加速的概要信息。

verbose:显示ACL加速的详细信息。

ipv6:显示IPv6 ACL的加速状态。

mac:显示二层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个字符的字符串,不区分大小写。

【使用指导】

指定verbose关键字时,将会显示成功开启加速匹配功能的ACL及其中已配置的规则,但对于未开启或未成功开启加速匹配功能的ACL,将不会显示出来。

【举例】

# 显示加速概要信息。

<Sysname> display acl accelerate summary

Basic IPv4 ACL 2000

# 显示加速详细信息。

<Sysname> display acl accelerate verbose 2000

Basic IPv4 ACL 2000.

 rule 0 permit

 rule 1 deny

1.1.9  display packet-filter

display packet-filter命令用来显示ACL在报文过滤中的应用情况。

【命令】

display packet-filter { interface [ interface-type interface-number ] [ inbound | outbound ] | zone-pair security [ source source-zone-name destination destination-zone-name ] }

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【参数】

interface [ interface-type interface-number ]:显示指定接口上ACL在报文过滤中的应用情况。interface-type interface-number表示接口类型和接口编号。若未指定接口类型和接口编号,将显示除VA(Virtual Access,虚拟访问)接口外所有接口上ACL在报文过滤中的应用情况。有关VA接口的详细介绍,请参见“二层技术-广域网接入配置指导”中的“PPP”。

当接口类型为以太网接口时,不需要指定slot参数。

zone-pair security [ source source-zone-name destination destination-zone-name ]:显示指定安全域间实例上ACL在报文过滤中的应用情况。source-zone-name:表示安全域间实例源安全域的名称,为1~31个字符的字符串,不区分大小写。destination-zone-name:表示安全域间实例目的安全域的名称,为1~31个字符的字符串,不区分大小写。

inbound:显示入方向上ACL在报文过滤中的应用情况。

outbound:显示出方向上ACL在报文过滤中的应用情况。

【使用指导】

如果未指定inboundoutbound参数,将同时显示出、入方向上ACL在报文过滤中的应用情况。

【举例】

# 显示接口GigabitEthernet1/0/1入方向上ACL在报文过滤中的应用情况。

<Sysname> display packet-filter interface gigabitethernet 1/0/1 inbound

Interface: GigabitEthernet1/0/1

 Inbound policy:

  IPv4 ACL 2001

  IPv6 ACL 2002 (Failed)

  MAC ACL 4003 (Failed)

  IPv4 default action: Deny

  IPv6 default action: Deny

  MAC default action: Deny

# 显示安全域间实例源域office到目的域library上ACL在报文过滤中的应用情况。

<Sysname> display packet-filter zone-pair security source office destination library

Zone-pair: source office destination library

  IPv4 ACL 2001

  IPv4 ACL 2002

表1-2 display packet-filter命令显示信息描述表

字段

描述

Interface

ACL在指定接口上的应用情况

Zone-pair

ACL在指定安全域间实例上的应用情况

Inbound policy

ACL在入方向上的应用情况

Outbound policy

ACL在出方向上的应用情况

IPv4 ACL 2001

IPv4基本ACL 2001应用成功

IPv6 ACL 2002 (Failed)

IPv6基本ACL 2002应用失败

IPv4 default action

报文过滤的缺省动作,包括:

·     Deny:报文过滤缺省动作为Deny应用成功

·     Deny (Failed):报文过滤缺省动作为Deny应用失败,实际动作仍为Permit

·     Permit:报文过滤缺省动作为Permit

IPv6 default action

报文过滤的缺省动作,包括:

·     Deny:报文过滤缺省动作为Deny应用成功

·     Deny (Failed):报文过滤缺省动作为Deny应用失败,实际动作仍为Permit

·     Permit:报文过滤缺省动作为Permit

MAC default action

报文过滤的缺省动作,包括:

·     Deny:报文过滤缺省动作为Deny应用成功

·     Deny (Failed):报文过滤缺省动作为Deny应用失败,实际动作仍为Permit

·     Permit:报文过滤缺省动作为Permit

1.1.10  display packet-filter statistics

display packet-filter statistics命令用来显示ACL在报文过滤中应用的统计信息。

【命令】

display packet-filter statistics { interface interface-type interface-number { inbound | outbound } [ default | [ ipv6 | mac ] { acl-number | name acl-name } ] | zone-pair security source source-zone-name destination destination-zone-name [ [ ipv6 ] { acl-number | name acl-name } ] } [ brief ]

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【参数】

interface interface-type interface-number:显示指定接口上的统计信息。interface-type interface-number表示接口类型和接口编号。

zone-pair security source source-zone-name destination destination-zone-name:显示指定安全域间实例上的统计信息。source-zone-name:表示安全域间实例源安全域的名称,为1~31个字符的字符串,不区分大小写。destination-zone-name:表示安全域间实例目的安全域的名称,为1~31个字符的字符串,不区分大小写。

inbound:显示入方向上的统计信息。

outbound:显示出方向上的统计信息。

default:显示报文过滤缺省动作的统计信息。

ipv6:指定ACL类型为IPv6 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个字符的字符串,不区分大小写。

brief:显示简要统计信息。

【使用指导】

如果未指定任何可选参数,将显示全部ACL在报文过滤中应用的统计信息。

【举例】

# 显示接口GigabitEthernet1/0/1入方向上全部ACL在报文过滤中应用的统计信息。

<Sysname> display packet-filter statistics interface gigabitethernet 1/0/1 inbound

Interface: GigabitEthernet1/0/1

 Inbound policy:

  IPv4 ACL 2001

   From 2011-06-04 10:25:21 to 2011-06-04 10:35:57

   rule 0 permit source 2.2.2.2 0 counting (2 packets, 256 bytes)

   rule 5 permit source 1.1.1.1 0 counting (Failed)

   rule 10 permit vpn-instance test counting (No resource)

   Totally 2 packets 256 bytes permitted, 0 packets 0 bytes denied

   Totally 100% permitted, 0% denied

 

  IPv6 ACL 2000

 

  MAC ACL 4000

   rule 0 permit

 

  IPv4 default action: Deny

 

  IPv6 default action: Deny

  MAC default action: Deny

# 显示安全域间实例源域office到目的域library上IPv4高级ACL 3001在报文过滤中应用的统计信息。

<Sysname> display packet-filter statistics zone-pair security source office destination library 3001

Zone-pair: source office destination library

IPv4 ACL 3001

   rule 0 permit source 2.2.2.2 0

   rule 5 permit source 1.1.1.1 0 counting (2 packets)

   rule 10 permit vpn-instance test (Failed)

   Totally 2 packets 256 bytes permitted, 0 packets 0 bytes denied

   Totally 100% permitted, 0% denied

表1-3 display packet-filter statistics命令显示信息描述表

字段

描述

Interface

在指定接口上应用的统计信息

Zone-pair

在指定安全域间实例上应用的统计信息

Inbound policy

在入方向上应用的统计信息

Outbound policy

在出方向上应用的统计信息

IPv4 ACL 2001

IPv4基本ACL 2001应用成功

IPv4 ACL 2002 (Failed)

IPv4基本ACL 2002应用失败

2 packets

该规则匹配了2个包(当匹配的包个数为0时不显示本字段)

No resource

该规则对应的统计资源不足。在显示统计信息时,若该规则的统计资源不足,便会显示本字段

rule 5 permit source 1.1.1.1 0 (Failed)

规则5应用失败

Totally 2 packets permitted, 0 packets denied

该ACL允许和拒绝符合条件报文的个数

Totally 100% permitted, 0% denied

该ACL允许符合条件报文的通过率和拒绝符合条件报文的丢弃率

IPv4 default action

报文过滤的缺省动作,包括:

·     Deny:报文过滤缺省动作为Deny应用成功

·     Deny (Failed):报文过滤缺省动作为Deny应用失败,实际动作仍为Permit

·     Permit:报文过滤缺省动作为Permit

IPv6 default action

报文过滤的缺省动作,包括:

·     Deny:报文过滤缺省动作为Deny应用成功

·     Deny (Failed):报文过滤缺省动作为Deny应用失败,实际动作仍为Permit

·     Permit:报文过滤缺省动作为Permit

MAC default action

报文过滤的缺省动作,包括:

·     Deny:报文过滤缺省动作为Deny应用成功

·     Deny (Failed):报文过滤缺省动作为Deny应用失败,实际动作仍为Permit

·     Permit:报文过滤缺省动作为Permit

【相关命令】

·     reset packet-filter statistics

1.1.11  display packet-filter statistics sum

display packet-filter statistics sum命令用来显示ACL在报文过滤中应用的累加统计信息。

【命令】

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

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【参数】

inbound:显示入方向上ACL在报文过滤中应用的累加统计信息。

outbound:显示出方向上ACL在报文过滤中应用的累加统计信息。

ipv6:指定ACL类型为IPv6 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个字符的字符串,不区分大小写。

brief:显示ACL在报文过滤中应用的简要累加统计信息。

【举例】

# 显示入方向上IPv4基本ACL 2001在报文过滤中应用的累加统计信息。

<Sysname> display packet-filter statistics sum inbound 2001

Sum:

 Inbound policy:

  IPv4 ACL 2001

   rule 0 permit source 2.2.2.2 0 counting (2 packets, 256 bytes)

   rule 5 permit source 1.1.1.1 0

   rule 10 permit vpn-instance test

   Totally 2 packets 256 bytes permitted, 0 packets 0 bytes denied

   Totally 100% permitted, 0% denied

# 显示入方向上IPv4基本ACL 2000在报文过滤中应用的简要累加统计信息。

<Sysname> display packet-filter statistics sum inbound 2000 brief

Sum:

 Inbound policy:

  IPv4 ACL 2000

   Totally 2 packets 256 bytes permitted, 0 packets 0 bytes denied

   Totally 100% permitted, 0% denied

表1-4 display packet-filter statistics sum命令显示信息描述表

字段

描述

Sum

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

Inbound policy

ACL在入方向上应用的累加统计信息

Outbound policy

ACL在出方向上应用的累加统计信息

IPv4 ACL 2001

IPv4基本ACL 2001应用的累加统计信息

2 packets, 256 bytes

该规则匹配了2个包,共256字节(当匹配的包个数为0时不显示本字段)

Totally 2 packets 256 bytes permitted, 0 packets 0 bytes denied

该ACL允许和拒绝符合条件报文的个数及字节数

Totally 100% permitted, 0% denied

该ACL允许符合条件报文的通过率和拒绝符合条件报文的丢弃率

 

【相关命令】

·     reset packet-filter statistics

1.1.12  display packet-filter verbose

display packet-filter verbose命令用来显示ACL在报文过滤中的详细应用情况。

【命令】

display packet-filter verbose { interface interface-type interface-number { inbound | outbound } [ [ ipv6 | mac ] { acl-number | name acl-name } ] | zone-pair security source source-zone-name destination destination-zone-name [ [ ipv6 ] { acl-number | name acl-name } ] }

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【参数】

interface interface-type interface-number:显示指定接口上ACL在报文过滤中的详细应用情况。interface-type interface-number表示接口类型和接口编号。当接口类型为以太网接口时,不需要指定slot参数。

zone-pair security source source-zone-name destination destination-zone-name:显示指定安全域间实例上ACL在报文过滤中的详细应用情况。source-zone-name:表示安全域间实例源安全域的名称,为1~31个字符的字符串,不区分大小写。destination-zone-name:表示安全域间实例目的安全域的名称,为1~31个字符的字符串,不区分大小写。

inbound:显示入方向上ACL在报文过滤中的详细应用情况。

outbound:显示出方向上ACL在报文过滤中的详细应用情况。

ipv6:指定ACL类型为IPv6 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个字符的字符串,不区分大小写。

【使用指导】

若未指定acl-numbername acl-name和ACL类型(ipv6mac)参数,将显示全部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)

   rule 10 permit vpn-instance test (Failed)

 

  IPv6 ACL 2000

   rule 0 permit

 

  MAC ACL 4000

 

  IPv4 default action: Deny

 

  IPv6 default action: Deny

 

  MAC default action: Deny

#显示安全域间实例源域office到目的域library上全部ACL在报文过滤中的详细应用情况。

<Sysname> display packet-filter verbose zone-pair security source office destination library

Zone-pair: source office destination library

  IPv4 ACL 2001

   rule 0 permit

   rule 5 permit source 1.1.1.1 0

   rule 10 permit vpn-instance test

表1-5 display packet-filter verbose命令显示信息描述表

字段

描述

Interface

ACL在指定接口上的详细应用情况

Zone-pair

ACL在指定安全域间实例上的详细应用情况

Inbound policy

ACL在入方向上的详细应用情况

Outbound 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

IPv6 default action

报文过滤的缺省动作,包括:

·     Deny:报文过滤缺省动作为Deny应用成功

·     Deny (Failed):报文过滤缺省动作为Deny应用失败,实际动作仍为Permit

·     Permit:报文过滤缺省动作为Permit

MAC default action

报文过滤的缺省动作,包括:

·     Deny:报文过滤缺省动作为Deny应用成功

·     Deny (Failed):报文过滤缺省动作为Deny应用失败,实际动作仍为Permit

·     Permit:报文过滤缺省动作为Permit

1.1.13  packet-filter (interface view)

packet-filter命令用来在接口上应用ACL进行报文过滤。

undo packet-filter命令用来取消在接口上应用ACL进行报文过滤。

【命令】

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

undo packet-filter [ ipv6 | mac ] { acl-number | name acl-name } { inbound | outbound }

【缺省情况】

接口不对报文进行过滤。

【视图】

三层以太网接口视图/三层以太网子接口视图/三层聚合接口视图/VSI虚接口视图

【缺省用户角色】

network-admin

【参数】

ipv6:指定ACL类型为IPv6 ACL。

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:对收到的报文进行过滤。

outbound:对发出的报文进行过滤。

【使用指导】

引用ACL时,需要注意的是:

·     若引用的ACL不存在,或者引用的ACL中没有配置规则,则表示不引用ACL进行报文过滤。

·     在引用的ACL中,若ACL规则指定了vpn-instance参数,则表示该规则仅对VPN报文有效;若规则未指定vpn-instance参数,则表示该规则仅对公网报文有效。

此功能在聚合成员端口上不生效。

【举例】

# 应用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 statistics

·     display packet-filter verbose

1.1.14  packet-filter (zone pair view)

packet-filter命令用来在安全域间实例上应用ACL进行报文过滤。

undo packet-filter命令用来取消在安全域间实例上应用ACL进行报文过滤。

【命令】

packet-filter [ ipv6 ] { acl-number | name acl-name }

undo packet-filter [ ipv6 ] { acl-number | name acl-name }

【缺省情况】

在安全域间实例上没有应用ACL进行报文过滤。

【视图】

安全域间实例视图

【缺省用户角色】

network-admin

【参数】

ipv6:指定ACL类型为IPv6 ACL。若未指定本参数,则表示IPv4 ACL。

acl-number:指定ACL的编号,取值范围及其代表的ACL类型如下:

·     2000~2999:表示基本ACL。

·     3000~3999:表示高级ACL。

name acl-name:指定ACL的名称。acl-name表示ACL的名称,为1~63个字符的字符串,不区分大小写。

【举例】

# 应用IPv4基本ACL 2002对源安全域office到目的安全域library的安全域间实例收到的报文进行过滤。

<Sysname> system-view

[Sysname] zone-pair security source office destination library

[Sysname-zone-pair-security-office-library] packet-filter 2002

【相关命令】

·     display packet-filter

·     display packet-filter statistics

·     display packet-filter verbose

1.1.15  packet-filter default deny

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 statistics

·     display packet-filter verbose

1.1.16  reset acl counter

reset acl counter命令用来清除ACL的统计信息。

【命令】

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

【视图】

用户视图

【缺省用户角色】

network-admin

【参数】

ipv6:指定ACL类型为IPv6 ACL。

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个字符的字符串,不区分大小写。

【举例】

# 清除IPv4基本ACL 2001的统计信息。

<Sysname> reset acl counter 2001

【相关命令】

·     display acl

1.1.17  reset packet-filter statistics

reset packet-filter statistics命令用来清除ACL在报文过滤中应用的统计信息。

【命令】

reset packet-filter statistics { interface [ interface-type interface-number ] { inbound | outbound } [ default | [ ipv6 | mac ] { acl-number | name acl-name } ] | zone-pair security [ source source-zone-name destination destination-zone-name ] [ ipv6 ] { acl-number | name acl-name } ] }

【视图】

用户视图

【缺省用户角色】

network-admin

【参数】

interface [ interface-type interface-number ]:清除指定接口上的统计信息。interface-type interface-number表示接口类型和接口编号。若未指定接口类型和接口编号,将清除所有接口上的统计信息。

zone-pair security [ source source-zone-name destination destination-zone-name ]:清除指定接口上的统计信息。source-zone-name:表示安全域间实例源安全域的名称,为1~31个字符的字符串,不区分大小写。destination-zone-name:表示安全域间实例目的安全域的名称,为1~31个字符的字符串,不区分大小写。

inbound:清除入方向上的统计信息。

outbound:清除出方向上的统计信息。

default:清除缺省动作在报文过滤中应用的统计信息。

ipv6:指定ACL类型为IPv6 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个字符的字符串,不区分大小写。

【使用指导】

如果未指定defaultacl-numbername acl-name和ACL类型(ipv6mac)参数,将清除全部ACL在报文过滤中应用的统计信息。

【举例】

# 清除在接口GigabitEthernet1/0/1入方向上IPv4基本ACL 2001在报文过滤中应用的统计信息。

<Sysname> reset packet-filter statistics interface gigabitethernet 1/0/1 inbound 2001

# 清除在源安全域office到目的安全域library的安全域间实例上IPv4基本ACL 2001在报文过滤中应用的统计信息。

<Sysname> reset packet-filter statistics zone-pair security source office destination library 2001

【相关命令】

·     display packet-filter statistics

·     display packet-filter statistics sum

1.1.18  rule (IPv4 advanced ACL view)

rule命令用来为IPv4高级ACL创建一条规则。

undo rule命令用来为IPv4高级ACL删除一条规则或删除规则中的部分内容。

【命令】

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 address-group-name | dest-address dest-wildcard | any } | destination-port { object-group port-group-name | operator port1 [ port2 ] } | { dscp dscp1 [ to dscp2 ] | { precedence precedence | tos tos } * } | fragment | icmp-type { icmp-type [ icmp-code ] | icmp-message } | logging | source { object-group address-group-name | source-address source-wildcard | any } | source-port { object-group port-group-name | operator port1 [ port2 ] } | time-range time-range-name | ttl operator ttl-value1 [ ttl-value2 ] | vpn-instance vpn-instance-name ] *

undo rule rule-id [ { { ack | fin | psh | rst | syn | urg } * | established } | counting | destination | destination-port | { dscp | { precedence | tos } * } | fragment | icmp-type | logging | source | source-port | time-range | ttl | vpn-instance ] *

undo 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 address-group-name | dest-address dest-wildcard | any } | destination-port { object-group port-group-name | operator port1 [ port2 ] } | { dscp dscp1 [ to dscp2 ] | { precedence precedence | tos tos } * } | fragment | icmp-type { icmp-type [ icmp-code ] | icmp-message } | logging | source { object-group address-group-name | source-address source-wildcard | any } | source-port { object-group port-group-name | operator port1 [ port2 ] } | time-range time-range-name | ttl operator ttl-value1 [ ttl-value2 ] | vpn-instance vpn-instance-name ] *

【缺省情况】

IPv4高级ACL内不存在任何规则。

【视图】

IPv4高级ACL视图

【缺省用户角色】

network-admin

【参数】

rule-id:指定IPv4高级ACL规则的编号,取值范围为0~65534。若未指定本参数,系统将从规则编号的起始值开始,自动分配一个大于现有最大编号的步长最小倍数。譬如现有规则的最大编号为28,步长为5,那么自动分配的新编号将是30。

deny:表示拒绝符合条件的报文。

permit:表示允许符合条件的报文。

protocol:表示IPv4承载的协议类型,可输入的形式如下:

·     数字:取值范围为0~255;

·     名称(括号内为对应的数字):可选取gre(47)、icmp(1)、igmp(2)、ipipinip(4)、ospf(89)、tcp(6)或udp(17)。ip表示所有协议类型。

protocol之后可配置如表1-6所示的规则信息参数。

表1-6 规则信息参数

参数

类别

作用

说明

source { object-group address-group-name | source-address source-wildcard | any }

源地址信息

指定ACL规则的源地址信息

address-group-name:源地址对象组的名称

source-address:源IP地址

source-wildcard:源IP地址的通配符掩码(为0表示主机地址)

any:任意源IP地址

destination { object-group address-group-name | dest-address dest-wildcard | any }

目的地址信息

指定ACL规则的目的地址信息

address-group-name:目的地址对象组的名称

dest-address:目的IP地址

dest-wildcard:目的IP地址的通配符掩码(为0表示主机地址)

any:任意目的IP地址

counting

统计

开启规则匹配软件统计功能,缺省为关闭

 

precedence precedence

报文优先级

指定IP优先级

precedence用数字表示时,取值范围为0~7;用字符表示时,分别对应routinepriorityimmediateflashflash-overridecriticalinternetnetwork

tos tos

报文优先级

指定ToS优先级

tos用数字表示时,取值范围为0~15;用字符表示时,可以选取max-reliability(2)、max-throughput(4)、min-delay(8)、min-monetary-cost(1)、normal(0)

dscp dscp1 [ to dscp2 ]

报文优先级

指定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)。

fragment

分片信息

仅对分片报文的非首个分片有效,而对非分片报文和分片报文的首个分片无效

若未指定该参数,则表示该规则对所有报文(包括非分片报文和分片报文的每个分片)均有效

logging

日志操作

表示记录规则匹配报文的日志信息,包括匹配报文的规则和匹配报文的个数

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

time-range time-range-name

时间段

指定本规则生效的时间段

time-range-name:时间段的名称,为1~32个字符的字符串,不区分大小写。若该时间段尚未配置,该规则仍会成功创建但系统将给出提示信息,并在该时间段的配置完成后此规则才会生效。有关时间段的详细介绍和具体配置过程,请参见“ACL和QoS配置指导”中的“时间段”

ttl operator ttl-value1 [ ttl-value2 ]

TTL

匹配指定TTL值的报文,基于IPv4报文头中的Time to Live字段值进行匹配

operator为操作符,取值可以为lt(小于)、gt(大于)、eq(等于)、neq(不等于)或者range(在范围内,包括边界值)

只有操作符range后必须携带两个TTL值做操作数,例如ttl range 1 100。其它操作符后只需要一个TTL值做操作数

ttl-value1/ttl-value2:TTL值,取值范围为1~255

vpn-instance vpn-instance-name

VPN实例

对指定VPN实例中的报文有效

vpn-instance-name:MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写

应用ACL进行报文过滤,ACL规则中未指定VPN实例时,表示该规则对非VPN报文有效,对VPN报文无效

其他特性引用ACL,ACL规则中未指定VPN实例时,不同业务模块的处理方式有所不同,请参见业务模块中的相关说明

 

protocoltcp(6)或udp(17)时,用户还可配置如表1-7所示的规则信息参数。

表1-7 TCP/UDP特有的规则信息参数

参数

类别

作用

说明

source-port { object-group port-group-name | operator port1 [ port2 ] }

源端口

定义TCP/UDP报文的源端口信息

port-group-name:端口对象组的名称

operator为操作符,取值可以为lt(小于)、gt(大于)、eq(等于)、neq(不等于)或者range(在范围内,包括边界值)。只有操作符range需要两个端口号做操作数,其它的只需要一个端口号做操作数

port1port2:TCP或UDP的端口号,用数字表示时,取值范围为0~65535;用字符表示时,TCP端口号可以选取chargen(19)、bgp(179)、cmd(514)、daytime(13)、discard(9)、dns(53)、domain(53)、echo (7)、exec (512)、finger(79)、ftp(21)、ftp-data(20)、gopher(70)、hostname(101)、irc(194)、klogin(543)、kshell(544)、login(513)、lpd(515)、nntp(119)、pop2(109)、pop3(110)、smtp(25)、sunrpc(111)、tacacs(49)、talk(517)、telnet(23)、time(37)、uucp(540)、whois(43)、www(80);UDP端口号可以选取biff(512)、bootpc(68)、bootps(67)、discard(9)、dns(53)、dnsix(90)、echo (7)、mobilip-ag(434)、mobilip-mn(435)、nameserver(42)、netbios-dgm(138)、netbios-ns(137)、netbios-ssn(139)、ntp(123)、rip(520)、snmp(161)、snmptrap(162)、sunrpc(111)、syslog(514)、tacacs-ds(65)、talk(517)、tftp(69)、time(37)、who(513)、xdmcp(177)

destination-port { object-group port-group-name | operator port1 [ port2 ] }

目的端口

定义TCP/UDP报文的目的端口信息

{ ack ack-value | fin fin-value | psh psh-value | rst rst-value | syn syn-value | urg urg-value } *

TCP报文标识

定义对携带不同标志位(包括ACK、FIN、PSH、RST、SYN和URG六种)的TCP报文的处理规则

TCP协议特有的参数。表示匹配携带不同标志位的TCP报文,各value的取值可为0或1(0表示不携带此标志位,1表示携带此标志位)

对于一条规则中各标志位的配置组合,处理方式为“或”。譬如:当配置为ack 0 psh 1时,则匹配不携带ACK或携带PSH标志位的TCP报文

established

TCP连接建立标识

定义对TCP连接报文的处理规则

TCP协议特有的参数,表示匹配携带ACK或RST标志位的TCP连接报文

protocolicmp(1)时,用户还可配置如表1-8所示的规则信息参数。

表1-8 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-9所示

 

表1-9 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 [ rule-id ] { deny | permit }命令无法删除规则中的部分内容,使用undo rule { deny | permit }命令时,必须输入已存在规则的完整形式。

【举例】

# 为IPv4高级ACL 3000创建规则如下:允许129.9.0.0/16网段内的主机与202.38.160.0/24网段内主机的WWW端口(端口号为80)建立连接。

<Sysname> system-view

[Sysname] acl advanced 3000

[Sysname-acl-ipv4-adv-3000] rule permit tcp source 129.9.0.0 0.0.255.255 destination 202.38.160.0 0.0.0.255 destination-port eq 80

# 为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

# 为IPv4高级ACL 3002创建规则如下:在出、入双方向上都允许建立FTP连接并传输FTP数据。

<Sysname> system-view

[Sysname] acl advanced 3002

[Sysname-acl-ipv4-adv-3002] rule permit tcp source-port eq ftp

[Sysname-acl-ipv4-adv-3002] rule permit tcp source-port eq ftp-data

[Sysname-acl-ipv4-adv-3002] rule permit tcp destination-port eq ftp

[Sysname-acl-ipv4-adv-3002] rule permit tcp destination-port eq ftp-data

# 为IPv4高级ACL 3003创建规则如下:在出、入双方向上都允许SNMP报文和SNMP Trap报文通过。

<Sysname> system-view

[Sysname] acl advanced 3003

[Sysname-acl-ipv4-adv-3003] rule permit udp source-port eq snmp

[Sysname-acl-ipv4-adv-3003] rule permit udp source-port eq snmptrap

[Sysname-acl-ipv4-adv-3003] rule permit udp destination-port eq snmp

[Sysname-acl-ipv4-adv-3003] rule permit udp destination-port eq snmptrap

# 为IPv4高级ACL 3004创建规则如下:允许TTL值为100的UDP报文通过。

<Sysname> system-view

[Sysname] acl advanced 3004

[Sysname-acl-adv-3004] rule permit udp ttl eq 100

【相关命令】

·     acl

·     acl logging interval

·     display acl

·     step

·     time-range(ACL和QoS命令参考/时间段)

1.1.19  rule (IPv4 basic ACL view)

rule命令用来为IPv4基本ACL创建一条规则。

undo rule命令用来为IPv4基本ACL删除一条规则或删除规则中的部分内容。

【命令】

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

undo rule rule-id [ counting | fragment | logging | source | time-range | vpn-instance ] *

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

【缺省情况】

IPv4基本ACL内不存在任何规则。

【视图】

IPv4基本ACL视图

【缺省用户角色】

network-admin

【参数】

rule-id:指定IPv4基本ACL规则的编号,取值范围为0~65534。若未指定本参数,系统将从规则编号的起始值开始,自动分配一个大于现有最大编号的步长最小倍数。譬如现有规则的最大编号为28,步长为5,那么自动分配的新编号将是30。

deny:表示拒绝符合条件的报文。

permit:表示允许符合条件的报文。

counting:表示开启规则匹配软件统计功能,缺省为关闭。

fragment:表示仅对非首片分片报文有效,而对非分片报文和首片分片报文无效。若未指定本参数,表示该规则对非分片报文和分片报文均有效。

logging:表示记录规则匹配报文的日志信息,包括匹配报文的规则和匹配报文的个数。该功能需要使用该ACL的模块支持日志记录功能,例如报文过滤。

source { object-group address-group-name |  source-address source-wildcard | any }:指定规则的源IP地址信息。address-group-name表示源IP地址对象组的名称,source-address表示报文的源IP地址,source-wildcard表示源IP地址的通配符掩码(为0表示主机地址),any表示任意源IP地址。

time-range time-range-name:指定本规则生效的时间段。time-range-name表示时间段的名称,为1~32个字符的字符串,不区分大小写。若该时间段尚未配置,该规则仍会成功创建但系统将给出提示信息,并在该时间段的配置完成后此规则才会生效。有关时间段的详细介绍和具体配置过程,请参见“ACL和QoS配置指导”中的“时间段”。

vpn-instance vpn-instance-name:表示对指定VPN实例中的报文有效。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。应用ACL进行报文过滤,ACL规则中未指定VPN实例时,表示该规则对非VPN报文有效,对VPN报文无效;其他特性引用ACL,ACL规则中未指定VPN实例时,不同业务模块的处理方式有所不同,请参见业务模块中的相关说明。

【使用指导】

使用rule命令时,如果指定编号的规则不存在,则创建一条新的规则;如果指定编号的规则已存在,则对旧规则进行修改,即在其原有内容的基础上叠加新的内容。

新创建或修改的规则不能与已有规则的内容完全相同,否则将提示出错,并导致该操作失败。

新创建或修改的规则若指定对象组,则该对象组必须存在,否则将提示出错,并导致该操作失败。

当ACL的规则匹配顺序为配置顺序时,允许修改该ACL内的任意一条已有规则;当ACL的规则匹配顺序为自动排序时,不允许修改该ACL内的已有规则,否则将提示出错。

display acl all命令可以查看所有已存在的IPv4高级ACL规则和IPv4基本ACL规则。

删除规则时需要注意的是:

·     使用undo rule rule-id命令时,如果没有指定任何可选参数,则删除整条规则;如果指定了可选参数,则只删除该参数所对应的内容。

·     undo rule [ rule-id ] { 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

·     acl logging interval

·     display acl

·     step

·     time-range(ACL和QoS命令参考/时间段)

1.1.20  rule (IPv6 advanced ACL view)

rule命令用来为IPv6高级ACL创建一条规则。

undo rule命令用来为IPv6高级ACL删除一条规则或删除规则中的部分内容。

【命令】

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 address-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 address-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 | ttl operator ttl-value1 [ ttl-value2 ] | vpn-instance vpn-instance-name ] *

undo rule rule-id [ { { ack | fin | psh | rst | syn | urg } * | established } | counting | destination | destination-port | dscp | flow-label | fragment | icmp6-type | logging | routing | hop-by-hop | source | source-port | time-range | ttl | vpn-instance ] *

undo 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 address-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 address-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 | ttl operator ttl-value1 [ ttl-value2 ] | vpn-instance vpn-instance-name ] *

【缺省情况】

IPv6高级ACL内不存在任何规则。

【视图】

IPv6高级ACL视图

【缺省用户角色】

network-admin

【参数】

rule-id:指定IPv6高级ACL规则的编号,取值范围为0~65534。若未指定本参数,系统将从规则编号的起始值开始,自动分配一个大于现有最大编号的步长最小倍数。譬如现有规则的最大编号为28,步长为5,那么自动分配的新编号将是30。

deny:表示拒绝符合条件的报文。

permit:表示允许符合条件的报文。

protocol:表示IPv6承载的协议类型,可输入的形式如下:

·     数字:取值范围为0~255;

·     名称(括号内为对应的数字):可选取gre(47)、icmpv6(58)、ipv6ipv6-ah(51)、ipv6-esp(50)、ospf(89)、tcp(6)或udp(17)。ipv6表示所有协议类型。

protocol之后可配置如表1-10所示的规则信息参数。

表1-10 规则信息参数

参数

类别

作用

说明

source { object-group address-group-name | source-address source-prefix | source-address/source-prefix | any }

源IPv6地址

指定ACL规则的源IPv6地址信息

address-group-name:源地址对象组的名称

source-address:源IPv6地址

source-prefix:源IPv6地址的前缀长度,取值范围1~128

any:任意源IPv6地址

destination { object-group address-group-name | dest-address dest-prefix | dest-address/dest-prefix | any }

目的IPv6地址

指定ACL规则的目的IPv6地址信息

address-group-name:目的地址对象组的名称

dest-address:目的IPv6地址

dest-prefix:目的IPv6地址的前缀长度,取值范围1~128

any:任意目的IPv6地址

counting

统计

开启规则匹配软件统计功能,缺省为关闭

 

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)

flow-label flow-label-value

流标签字段

指定IPv6基本报文头中流标签字段的值

flow-label-value:流标签字段的值,取值范围为0~1048575

fragment

报文分片

仅对分片报文的非首个分片有效,而对非分片报文和分片报文的首个分片无效

若未指定本参数,表示该规则对所有报文(包括非分片报文和分片报文的每个分片)均有效

logging

日志操作

表示记录规则匹配报文的日志信息,包括匹配报文的规则和匹配报文的个数

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

routing [ type routing-type ]

路由头

指定路由头的类型

routing-type:路由头类型的值,取值范围为0~255

若指定了type routing-type参数,表示仅对指定类型的路由头有效;否则,表示对IPv6所有类型的路由头都有效

hop-by-hop [ type hop-type ]

逐跳头

指定逐跳头的类型

hop-type:逐跳头类型的值,取值范围为0~255

若指定了type hop-type参数,表示仅对指定类型的逐跳头有效;否则,表示对IPv6所有类型的逐跳头都有效

time-range time-range-name

时间段

指定本规则生效的时间段

time-range-name:时间段的名称,为1~32个字符的字符串,不区分大小写。若该时间段尚未配置,该规则仍会成功创建但系统将给出提示信息,并在该时间段的配置完成后此规则才会生效。有关时间段的详细介绍和具体配置过程,请参见“ACL和QoS配置指导”中的“时间段”

ttl operator ttl-value1 [ ttl-value2 ]

TTL

匹配指定TTL值的报文,基于IPv6报文头中的Hop limit字段值进行匹配

operator为操作符,取值可以为lt(小于)、gt(大于)、eq(等于)、neq(不等于)或者range(在范围内,包括边界值)

只有操作符range后必须携带两个TTL值做操作数,例如ttl range 1 100。其它操作符后只需要一个TTL值做操作数

ttl-value1/ttl-value2:TTL值,取值范围为1~255

vpn-instance vpn-instance-name

VPN实例

对指定VPN实例中的报文有效

vpn-instance-name:MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写

应用ACL进行报文过滤,ACL规则中未指定VPN实例时,表示该规则对非VPN报文有效,对VPN报文无效

其他特性引用ACL,ACL规则中未指定VPN实例时,不同业务模块的处理方式有所不同,请参见业务模块中的相关说明

protocoltcp(6)或udp(17)时,用户还可配置如表1-11所示的规则信息参数。

表1-11 TCP/UDP特有的规则信息参数

参数

类别

作用

说明

source-port { object-group port-group-name | operator port1 [ port2 ] }

源端口

定义TCP/UDP报文的源端口信息

port-group-name:端口对象组的名称

operator:操作符,取值可以为lt(小于)、gt(大于)、eq(等于)、neq(不等于)或者range(在范围内,包括边界值)。只有range操作符需要两个端口号做操作数,其它操作符只需要一个端口号做操作数

port1/port2:TCP或UDP的端口号,用数字表示时,取值范围为0~65535;用名称表示时,TCP端口号可选取chargen(19)、bgp(179)、cmd(514)、daytime(13)、discard(9)、dns(53)、domain(53)、echo (7)、exec (512)、finger(79)、ftp(21)、ftp-data(20)、gopher(70)、hostname(101)、irc(194)、klogin(543)、kshell(544)、login(513)、lpd(515)、nntp(119)、pop2(109)、pop3(110)、smtp(25)、sunrpc(111)、tacacs(49)、talk(517)、telnet(23)、time(37)、uucp(540)、whois(43)或www(80);UDP端口号可选取biff(512)、bootpc(68)、bootps(67)、discard(9)、dns(53)、dnsix(90)、echo (7)、mobilip-ag(434)、mobilip-mn(435)、nameserver(42)、netbios-dgm(138)、netbios-ns(137)、netbios-ssn(139)、ntp(123)、rip(520)、snmp(161)、snmptrap(162)、sunrpc(111)、syslog(514)、tacacs-ds(65)、talk(517)、tftp(69)、time(37)、who(513)或xdmcp(177)

destination-port { object-group port-group-name | operator port1 [ port2 ] }

目的端口

定义TCP/UDP报文的目的端口信息

{ ack ack-value | fin fin-value | psh psh-value | rst rst-value | syn syn-value | urg urg-value } *

TCP报文标识

定义对携带不同标志位(包括ACK、FIN、PSH、RST、SYN和URG六种)的TCP报文的处理规则

TCP协议特有的参数。表示匹配携带不同标志位的TCP报文,各value的取值可为0或1(0表示不携带此标志位,1表示携带此标志位)

对于一条规则中各标志位的配置组合,处理方式为“或”。譬如:当配置为ack 0 psh 1时,则匹配不携带ACK或携带PSH标志位的TCP报文

established

TCP连接建立标识

定义对TCP连接报文的处理规则

TCP协议特有的参数,表示匹配携带ACK或RST标志位的TCP连接报文

 

protocolicmpv6(58)时,用户还可配置如表1-12所示的规则信息参数。

表1-12 ICMPv6特有的规则信息参数

参数

类别

作用

说明

icmp6-type { icmp6-type icmp6-code | icmp6-message }

ICMPv6报文的消息类型和消息码

指定本规则中ICMPv6报文的消息类型和消息码信息

icmp6-type:ICMPv6消息类型,取值范围为0~255

icmp6-code:ICMPv6消息码,取值范围为0~255

icmp6-message:ICMPv6消息名称。可以输入的ICMPv6消息名称,及其与消息类型和消息码的对应关系如表1-13所示

 

表1-13 ICMPv6消息名称与消息类型和消息码的对应关系

ICMPv6消息名称

ICMPv6消息类型

ICMPv6消息码

echo-reply

129

0

echo-request

128

0

err-Header-field

4

0

frag-time-exceeded

3

1

hop-limit-exceeded

3

0

host-admin-prohib

1

1

host-unreachable

1

3

neighbor-advertisement

136

0

neighbor-solicitation

135

0

network-unreachable

1

0

packet-too-big

2

0

port-unreachable

1

4

redirect

137

0

router-advertisement

134

0

router-solicitation

133

0

unknown-ipv6-opt

4

2

unknown-next-hdr

4

1

 

【使用指导】

使用rule命令时,如果指定编号的规则不存在,则创建一条新的规则;如果指定编号的规则已存在,则对旧规则进行修改,即在其原有内容的基础上叠加新的内容。

创建的规则若与动态规则的内容完全相同,则会覆盖已有动态规则。新创建或修改的规则不能与已有规则的内容完全相同,否则将提示出错,并导致该操作失败。

当ACL的规则匹配顺序为配置顺序时,允许修改该ACL内的任意一条已有规则;当ACL的规则匹配顺序为自动排序时,不允许修改该ACL内的已有规则,否则将提示出错。

新创建或修改的规则若指定对象组,则该对象组必须存在,否则将提示出错,并导致该操作失败。

display acl ipv6 all命令可以查看所有已存在的IPv6高级ACL规则和IPv6基本ACL规则。

删除规则时需要注意的是:

·     使用undo rule rule-id命令时,如果没有指定任何可选参数,则删除整条规则;如果指定了可选参数,则只删除该参数所对应的内容。

·     undo rule [ rule-id ] { deny | permit }命令无法删除规则中的部分内容,使用undo rule { deny | permit }命令时,必须输入已存在规则的完整形式。

【举例】

# 为IPv6高级ACL 3000创建规则如下:允许2030:5060::/64网段内的主机与FE80:5060::/96网段内主机的WWW端口(端口号为80)建立连接。

<Sysname> system-view

[Sysname] acl ipv6 advanced 3000

[Sysname-acl-ipv6-adv-3000] rule permit tcp source 2030:5060::/64 destination fe80:5060::/96 destination-port eq 80

# 为IPv6高级ACL 3001创建规则如下:允许IPv6报文通过,但拒绝发往FE80:5060:1001::/48网段的ICMPv6报文通过。

<Sysname> system-view

[Sysname] acl ipv6 advanced 3001

[Sysname-acl-ipv6-adv-3001] rule deny icmpv6 destination fe80:5060:1001:: 48

[Sysname-acl-ipv6-adv-3001] rule permit ipv6

# 为IPv6高级ACL 3002创建规则如下:在出、入双方向上都允许建立FTP连接并传输FTP数据。

<Sysname> system-view

[Sysname] acl ipv6 advanced 3002

[Sysname-acl-ipv6-adv-3002] rule permit tcp source-port eq ftp

[Sysname-acl-ipv6-adv-3002] rule permit tcp source-port eq ftp-data

[Sysname-acl-ipv6-adv-3002] rule permit tcp destination-port eq ftp

[Sysname-acl-ipv6-adv-3002] rule permit tcp destination-port eq ftp-data

# 为IPv6高级ACL 3003创建规则如下:在出、入双方向上都允许SNMP报文和SNMP Trap报文通过。

<Sysname> system-view

[Sysname] acl ipv6 advanced 3003

[Sysname-acl-ipv6-adv-3003] rule permit udp source-port eq snmp

[Sysname-acl-ipv6-adv-3003] rule permit udp source-port eq snmptrap

[Sysname-acl-ipv6-adv-3003] rule permit udp destination-port eq snmp

[Sysname-acl-ipv6-adv-3003] rule permit udp destination-port eq snmptrap

# 为IPv6高级ACL 3004创建规则如下:在含有逐跳头的报文中,只允许转发含有MLD选项(Type=5)的报文,丢弃其他报文。

<Sysname> system-view

[Sysname] acl ipv6 advanced 3004

[Sysname-acl-ipv6-adv-3004] rule permit ipv6 hop-by-hop type 5

[Sysname-acl-ipv6-adv-3004] rule deny ipv6 hop-by-hop

# 为IPv6高级ACL 3005创建规则如下:允许TTL值为100的UDP报文通过。

<Sysname> system-view

[Sysname] acl ipv6 advanced 3005

[Sysname-acl-ipv6-adv-3005] rule permit udp ttl eq 100

【相关命令】

·     acl

·     acl logging interval

·     display acl

·     step

·     time-range(ACL和QoS命令参考/时间段)

1.1.21  rule (IPv6 basic ACL view)

rule命令用来为IPv6基本ACL创建一条规则。

undo rule命令用来为IPv6基本ACL删除一条规则或删除规则中的部分内容。

【命令】

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

undo rule rule-id [ counting | fragment | logging | routing | source | time-range | vpn-instance ] *

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

【缺省情况】

IPv6基本ACL内不存在任何规则。

【视图】

IPv6基本ACL视图

【缺省用户角色】

network-admin

【参数】

rule-id:指定IPv6基本ACL规则的编号,取值范围为0~65534。若未指定本参数,系统将从规则编号的起始值开始,自动分配一个大于现有最大编号的步长最小倍数。譬如现有规则的最大编号为28,步长为5,那么自动分配的新编号将是30。

deny:表示拒绝符合条件的报文。

permit:表示允许符合条件的报文。

counting:表示开启规则匹配软件统计功能,缺省为关闭。

fragment:表示仅对非首片分片报文有效,而对非分片报文和首片分片报文无效。若未指定本参数,表示该规则对非分片报文和分片报文均有效。

logging:表示记录规则匹配报文的日志信息,包括匹配报文的规则和匹配报文的个数。该功能需要使用该ACL的模块支持日志记录功能,例如报文过滤。

routing [ type routing-type ]:表示对所有或指定类型的路由头有效,routing-type表示路由头类型的值,取值范围为0~255。若指定了type routing-type参数,表示仅对指定类型的路由头有效;否则,表示对IPv6所有类型的路由头都有效。

source { object-group address-group-name | source-address source-prefix | source-address/source-prefix | any }:指定规则的源IPv6地址信息。address-group-name表示源IP地址对象组的名称,source-address表示报文的源IPv6地址,source-prefix表示源IPv6地址的前缀长度,取值范围为1~128,any表示任意源IPv6地址。

time-range time-range-name:指定本规则生效的时间段。time-range-name表示时间段的名称,为1~32个字符的字符串,不区分大小写。若该时间段尚未配置,该规则仍会成功创建但系统将给出提示信息,并在该时间段的配置完成后此规则才会生效。有关时间段的详细介绍和具体配置过程,请参见“ACL和QoS配置指导”中的“时间段”。

vpn-instance vpn-instance-name:表示对指定VPN实例中的报文有效。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。应用ACL进行报文过滤,ACL规则中未指定VPN实例时,表示该规则对非VPN报文有效,对VPN报文无效;其他特性引用ACL,ACL规则中未指定VPN实例时,不同业务模块的处理方式有所不同,请参见业务模块中的相关说明。

【使用指导】

使用rule命令时,如果指定编号的规则不存在,则创建一条新的规则;如果指定编号的规则已存在,则对旧规则进行修改,即在其原有内容的基础上叠加新的内容。

新创建或修改的规则不能与已有规则的内容完全相同,否则将提示出错,并导致该操作失败。

新创建或修改的规则若指定对象组,则该对象组必须存在,否则将提示出错,并导致该操作失败。

当ACL的规则匹配顺序为配置顺序时,允许修改该ACL内的任意一条已有规则;当ACL的规则匹配顺序为自动排序时,不允许修改该ACL内的已有规则,否则将提示出错。

display acl ipv6 all命令可以查看所有已存在的IPv6高级ACL规则和IPv6基本ACL规则。

删除规则时需要注意的是:

·     使用undo rule rule-id命令时,如果没有指定任何可选参数,则删除整条规则;如果指定了可选参数,则只删除该参数所对应的内容。

·     undo rule [ rule-id ] { deny | permit }命令无法删除规则中的部分内容,使用undo rule { deny | permit }命令时,必须输入已存在规则的完整形式。

【举例】

# 为IPv6基本ACL 2000创建规则如下:仅允许来自1001::/16、3124:1123::/32和FE80:5060:1001::/48网段的报文通过,而拒绝来自所有其它网段的报文通过。

<Sysname> system-view

[Sysname] acl ipv6 basic 2000

[Sysname-acl-ipv6-basic-2000] rule permit source 1001:: 16

[Sysname-acl-ipv6-basic-2000] rule permit source 3124:1123:: 32

[Sysname-acl-ipv6-basic-2000] rule permit source fe80:5060:1001:: 48

[Sysname-acl-ipv6-basic-2000] rule deny source any

【相关命令】

·     acl

·     acl logging interval

·     display acl

·     step

·     time-range(ACL和QoS命令参考/时间段)

1.1.22  rule (Layer 2 ACL view)

rule命令用来为二层ACL创建一条规则。

undo rule命令用来为二层ACL删除一条规则或删除规则中的部分内容。

【命令】

rule [ rule-id ] { deny | permit } [ cos dot1p | 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 ] *

undo rule rule-id [ counting | time-range ] *

undo rule [ rule-id ] { deny | permit } [ cos dot1p | 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内不存在任何规则。

【视图】

二层ACL视图

【缺省用户角色】

network-admin

【参数】

rule-id:指定二层ACL规则的编号,取值范围为0~65534。若未指定本参数,系统将从规则编号的起始值开始,自动分配一个大于现有最大编号的步长最小倍数。譬如现有规则的最大编号为28,步长为5,那么自动分配的新编号将是30。

deny:表示拒绝符合条件的报文。

permit:表示允许符合条件的报文。

cos dot1p:指定802.1p优先级。dot1p表示802.1p优先级,可输入的形式如下:

·     数字:取值范围为0~7;

·     名称:best-effortbackgroundspareexcellent-effortcontrolled-loadvideovoicenetwork-management,依次对应于数字0~7。

counting:表示开启规则匹配软件统计功能,缺省为关闭。

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个字符的字符串,不区分大小写。若该时间段尚未配置,该规则仍会成功创建但系统将给出提示信息,并在该时间段的配置完成后此规则才会生效。有关时间段的详细介绍和具体配置过程,请参见“ACL和QoS配置指导”中的“时间段”。

【使用指导】

使用rule命令时,如果指定编号的规则不存在,则创建一条新的规则;如果指定编号的规则已存在,则对旧规则进行修改,即在其原有内容的基础上叠加新的内容。

新创建或修改的规则不能与已有规则的内容完全相同,否则将提示出错,并导致该操作失败。

当ACL的规则匹配顺序为配置顺序时,允许修改该ACL内的任意一条已有规则;当ACL的规则匹配顺序为自动排序时,不允许修改该ACL内的已有规则,否则将提示出错。

display acl mac all命令可以查看所有已存在的二层ACL规则。

删除规则时需要注意的是:

·     使用undo rule rule-id命令时,如果没有指定任何可选参数,则删除整条规则;如果指定了可选参数,则只删除该参数所对应的内容。

·     undo rule [ rule-id ] { 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命令参考/时间段)

1.1.23  rule comment

rule comment命令用来为规则配置描述信息。

undo rule comment命令用来删除指定规则的描述信息。

【命令】

rule rule-id comment text

undo rule rule-id comment

【缺省情况】

规则没有描述信息。

【视图】

IPv4基本ACL视图/IPv4高级ACL视图

IPv6基本ACL视图/IPv6高级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

1.1.24  step

step命令用来配置规则编号的步长。

undo step命令用来恢复缺省情况。

【命令】

step step-value

undo step

【缺省情况】

规则编号的步长为5,起始值为0。

【视图】

IPv4基本ACL视图/IPv4高级ACL视图

IPv6基本ACL视图/IPv6高级ACL视图

二层ACL视图

【缺省用户角色】

network-admin

【参数】

step-value:表示规则编号的步长值,取值范围为1~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保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们