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

H3C WP2000系列无线PoE注入器 命令参考-Release 2211-6W100

23-ACL命令

本章节下载  (240.11 KB)

23-ACL命令


1 ACL命令

1.1  ACL命令

1.1.1  acl

【命令】

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

undo acl { all | number acl-number }

【视图】

系统视图

【参数】

all:所有的ACL(Access Control List,访问控制列表)。

number acl-number:ACL序号,取值范围为:

l              2000~2999:表示基本ACL。

l              3000~3999:表示高级ACL(3998与3999是系统为集群管理预留的编号,用户无法配置)。

l              4000~4999:表示二层ACL。

l              5000~5999:表示IPv6 ACL。

match-order:指定对该ACL规则的匹配顺序,匹配顺序如下:

l              auto:按照“深度优先”的顺序进行规则匹配。

l              config:按照用户配置规则的先后顺序进行规则匹配。

关于autoconfig这两种匹配顺序的详细介绍请参见“ACL操作”中的描述。

需要注意的是,在定义二层ACL和IPv6 ACL时没有match-order参数,二层ACL和IPv6 ACL的匹配顺序为config

【描述】

acl命令用来定义ACL,并进入相应的ACL视图。undo acl命令用来删除指定的ACL,或者删除全部ACL。

缺省情况下,ACL规则的匹配顺序为config

用户也可以通过本命令修改一个已经存在的ACL的匹配顺序,但必须在ACL中没有规则的时候修改,对已经包含规则的ACL是无法修改其匹配顺序的。

进入相应的ACL视图之后,可以用rule命令增加此ACL的规则。

相关配置可参考命令rule

【举例】

# 定义基本ACL 2000,并配置其匹配顺序为“深度优先”。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] acl number 2000 match-order auto

# 为基本ACL 2000创建三条源IP地址范围(反掩码中“0”位的数量)不同的规则。

[Sysname-acl-basic-2000] rule 1 permit source 1.1.1.1 0.255.255.255

[Sysname-acl-basic-2000] rule 2 permit source 2.2.2.2 0.0.255.255

[Sysname-acl-basic-2000] rule 3 permit source 3.3.3.3 0.0.0.255

# 使用display acl命令查看基本ACL 2000的配置信息。

[Sysname-acl-basic-2000] display acl 2000

Basic ACL  2000, 3 rules, match-order is auto

Acl's step is 1

 rule 3 permit source 3.3.3.0 0.0.0.255

 rule 2 permit source 2.2.0.0 0.0.255.255

 rule 1 permit source 1.0.0.0 0.255.255.255

以上信息表明,设备按照“深度优先”的原则对基本ACL 2000内的规则进行排序,即按照规则反掩码中“0”位的数量由多到少的顺序排列。

1.1.2  description

【命令】

description text

undo description

【视图】

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

【参数】

text:ACL的描述信息,取值范围为1~127个字符,可以包含空格和特殊字符。

【描述】

description命令用来定义ACL的描述信息,描述该ACL的具体用途、应用于哪些端口等信息,方便用户对ACL进行区分和识别。undo description命令用来删除ACL的描述信息。

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

【举例】

# 定义高级ACL 3000的描述信息为“This acl is used for filtering all HTTP packets”。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] acl number 3000

[Sysname-acl-adv-3000] description This acl is used for filtering all HTTP packets

# 使用display acl命令查看高级ACL 3000的配置信息。

[Sysname-acl-adv-3000] display acl 3000

Advanced ACL  3000, 0 rule

This acl is used for filtering all HTTP packets

Acl's step is 1

# 删除高级ACL 3000的描述信息。

[Sysname-acl-adv-3000] undo description

1.1.3  display acl

【命令】

display acl { all | acl-number }

【视图】

任意视图

【参数】

all:所有的ACL。

acl-number:指定ACL的序号,取值范围为2000~5999。

【描述】

display acl命令用来显示ACL的配置信息。

需要注意的是,如果用户在配置ACL的时候指定了match-order参数,则在使用display acl命令时,显示的是设备按照auto(深度优先)或config(配置顺序)对ACL中的规则进行排序后的结果。

【举例】

# 显示基本ACL 2000的详细配置信息。

<Sysname> display acl 2000

Basic ACL  2000, 1 rule

Acl's step is 1

 rule 0 permit source 1.1.1.1 0

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

字段

描述

Basic ACL  2000

这个ACL属于基本ACL,序号为2000

1 rule

这个基本ACL包含1条规则

Acl's step is 1

这个基本ACL的规则序号的步长值为1

 

1.1.4  display acl remaining entry

【命令】

display acl remaining entry

【视图】

任意视图

【参数】

【描述】

display acl remaning entry命令用来显示设备的ACL表项资源。

用户可以根据该命令的输出信息来了解ACL规则消耗的表项资源数,确认ACL无法下发的原因是否与表项资源耗尽有关。

【举例】

# 显示设备的ACL表项资源。

<Sysname> display acl remaining entry

  Resource  Total   Reserved  Configured  Remaining   Start     End

  Type      Number  Number    Number      Number   Port Name  Port Name

--------------------------------------------------------------------------

     Rule    1024       13          1        1010     Eth1/0/1   GE1/2/1

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

字段名

描述

Resource Type

ACL表项资源类型,Rule表示可以下发的规则数量

Total Number

ACL表项资源的总数

Reserved Number

系统ACL用去的资源数目

Configured Number

用户定义的ACL占用的资源数目

Remaining Number

剩余的ACL资源数目

Start Port Name

End Port Name

该表项所对应的起始端口号和结束端口号

 

1.1.5  display ipv6-acl-template

【命令】

display ipv6-acl-template

【视图】

任意视图

【参数】

【描述】

display ipv6-acl-template命令用来显示IPv6 ACL模板的配置信息。

【举例】

# 显示IPv6 ACL模板的配置信息。

<Sysname> display ipv6-acl-template

  Ipv6 acl template : src-ip dest-ip

1.1.6  display packet-filter

【命令】

display packet-filter { global | interface interface-type interface-number | port-group [ group-id ] | unitid unit-id | vlan [ vlan-id ] }

【视图】

任意视图

【参数】

global:表示显示全局包过滤的应用信息。

interface interface-type interface-number:端口类型和端口编号。表示显示指定端口的包过滤的应用信息。

port-group group-id:端口组编号。表示显示指定端口组的包过滤的应用信息。

unitid unit-idUnit ID,取值只能为1。表示显示设备上的包过滤的应用信息。

vlan vlan-id:VLAN编号。表示显示指定VLAN上的包过滤的应用信息。

【描述】

display packet-filter命令用来显示包过滤的应用信息。

【举例】

# 显示设备上的包过滤的应用信息。

<Sysname> display packet-filter unitid 1

Ethernet1/0/1

 Inbound:

 Acl 2000 rule 0  running

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

字段

描述

Ethernet1/0/1

应用包过滤的端口

Inbound

过滤方向为入方向

Acl 2000 rule 0

过滤规则为基本ACL 2000的0号规则

running

规则的下发状态,包含以下两种:

l      running:表示激活

l      not running:表示没有激活,通常是由于此规则引用的时间段不生效所致

 

1.1.7  display time-range

【命令】

display time-range { all | time-name }

【视图】

任意视图

【参数】

all:所有的时间段。

time-name:为时间段的名称,以英文字母a~z或A~Z为起始字母的字符串,取值范围为1~32个字符。

【描述】

display time-range命令用来显示时间段的配置和状态,当前处于激活状态的时间段将显示Active,处于非激活状态的时间段将显示Inactive。

相关配置可参考命令time-range

【举例】

# 显示所有的时间段。

<Sysname> display time-range all

Current time is 17:01:34 May/21/2007 Monday

 

Time-range : tr ( Active )

 12:00 to 18:00 working-day

 

Time-range : tr1 ( Inactive )

 From 12:00 Jan/1/2008 to 12:00 Jun/1/2008

表1-4 display time-range命令显示信息描述表

字段

描述

Current time is 17:01:34 May/21/2007 Monday

系统的当前时间

Time-range

时间段的名称

Active

时间段的状态,包含以下两种:

l      Active:表示此时间段处于激活状态,已经生效

l      Inactive:表示此时间段处于非激活状态,没有生效

12:00 to 18:00 working-day

周期时间段,范围为工作日的12点到18点

From 12:00 Jan/1/2008 to 12:00 Jun/1/2008

绝对时间段,范围为2008年1月1日12点到2008年6月1日12点

 

1.1.8  ipv6-acl-template

【命令】

ipv6-acl-template { dscp | ip-protocol | src-ip | dest-ip | src-port | dest-port | icmpv6-type | icmpv6-code } *

undo ipv6-acl-template

【视图】

系统视图

【参数】

dscp:表示IPv6报文中的流量类型(Traffic-class)字段;

ip-protocol:表示IPv6报文中的下一报头(Next header)字段;

src-ip:表示IPv6报文中的源地址字段;

dest-ip:表示IPv6报文中的目的地址字段;

src-port:表示IPv6报文中TCP或UDP协议的源端口字段;

dest-port:表示IPv6报文中TCP或UDP协议的目的端口字段;

icmpv6-type:表示IPv6报文中ICMP协议的消息类型字段;

icmpv6-code:表示IPv6报文中ICMP协议的消息码字段。

【描述】

ipv6-acl-template命令用来配置IPv6 ACL模板。undo ipv6-acl-template命令用来删除IPv6 ACL模板。

缺省情况下,没有配置IPv6 ACL模板。

需要注意的是:

l              WP2000系列无线PoE注入器只支持配置一个IPv6 ACL模板。

l              如果用户需要在模板中配置src-portdest-porticmpv6-typeicmpv6-code字段时,必须先配置ip-protocol字段。

l              在已经存在模板的情况下,如果定义新的模板,需把原有的模板先删除再配置新的模板;如果模板被已经下发的IPv6 ACL规则引用,则不允许删除模板。

【举例】

# 定义IPv6 ACL模板,内容为匹配IPv6报文的源地址和目的地址字段。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] ipv6-acl-template src-ip dest-ip

1.1.9  packet-filter

【命令】

packet-filter inbound acl-rule

undo packet-filter inbound acl-rule

【视图】

系统视图/以太网端口视图/端口组视图

【参数】

inbound:表示对接收的数据包进行过滤。

acl-rule:应用的ACL规则,可以是多种ACL的组合。组合方式如表1-1所示。

表1-5 组合应用ACL的方式

组合方式

acl-rule的形式

单独应用一个IP型ACL(基本ACL或高级ACL)中的所有规则

ip-group acl-number

单独应用一个IP型ACL(基本ACL或高级ACL)中的一条规则

ip-group acl-number rule rule-id

单独应用一个二层ACL中的所有规则

link-group acl-number

单独应用一个二层ACL中的一条规则

link-group acl-number rule rule-id

单独应用一个IPv6 ACL中的所有规则

user-group acl-number

 

单独应用一个IPv6 ACL中的一条规则

user-group acl-number rule rule-id

 

同时应用IP型ACL(基本ACL或高级ACL)中一条规则和二层型ACL的一条规则

ip-group acl-number rule rule-id link-group acl-number rule rule-id

 

ip-group acl-number:表示基本或高级ACL序号,取值范围为2000~3999。

link-group acl-number:表示二层ACL序号,取值范围为4000~4999。

user-group acl-number:表示IPv6 ACL序号,取值范围为5000~5999。

rule rule-id:ACL规则编号,取值范围为0~65534。如果不指定规则编号则表示ACL中的所有规则。

【描述】

packet-filter命令用来在全局、端口或端口组上应用ACL,对数据包进行过滤。undo packet-filter命令用来取消ACL在全局、端口或端口组上的应用。

【举例】

# 在端口Ethernet 1/0/1上应用基本ACL 2000中的所有规则,对端口接收的数据包进行过滤。假设基本ACL 2000已经创建并且相关规则已经存在。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] interface Ethernet 1/0/1

[Sysname-Ethernet1/0/1] packet-filter inbound ip-group 2000

[Sysname-Ethernet1/0/1] quit

# 在端口Ethernet 1/0/4上应用高级ACL 3000中的规则1和二层ACL 4000中的规则2,对端口接收的数据包进行过滤。假设高级ACL 3000和二层ACL 4000已经创建并且相关规则已经存在。

[Sysname] interface Ethernet 1/0/4

[Sysname-Ethernet1/0/4] packet-filter inbound ip-group 3000 rule 1 link-group 4000 rule 2

完成上述配置后,用户可以使用display packet-filter命令来查看包过滤的应用信息。

1.1.10  packet-filter vlan

【命令】

packet-filter vlan vlan-id inbound acl-rule

undo packet-filter vlan vlan-id inbound acl-rule

【视图】

系统视图

【参数】

vlan-id:VLAN编号。

inbound:表示对接收的数据包进行过滤。

acl-rule:应用的ACL,可以是多种ACL的组合。组合方式说明如表1-5所示。

【描述】

packet-filter vlan命令用来在VLAN上应用ACL,对VLAN中的所有端口上的数据包进行过滤。undo packet-filter vlan命令用来取消ACL在VLAN上的应用。

VLAN下发的ACL只能对带有802.1Q标签头的报文生效。关于802.1Q标签头的详细介绍请参见本手册“VLAN”部分。

 

当用户需要在某一个VLAN内的所有端口上应用同一条ACL时,可以使用packet-filter vlan命令来批量下发ACL,减少配置的工作量。

【举例】

# 在VLAN 10上应用基本ACL 2000中的所有规则,对VLAN 10中的所有端口接收的数据包进行过滤。假设VLAN 10和基本ACL 2000已经创建并且相关规则已经存在。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] packet-filter vlan 10 inbound ip-group 2000

完成上述配置后,用户可以使用display packet-filter命令来查看包过滤的应用信息。

1.1.11  rule(基本ACL)

【命令】

rule [ rule-id ] { deny | permit } [ rule-string ]

undo rule rule-id [ fragment | source | time-range ]*

【视图】

基本ACL视图

【参数】

1. rule命令的参数

rule-id:ACL规则编号,取值范围为0~65534。

deny:表示丢弃符合条件的数据包。

permit:表示允许符合条件的数据包通过。

rule-string:ACL规则信息,具体参数说明如表1-6所示。

表1-6 基本ACL规则信息

参数

类别

作用

说明

fragment

分片信息

定义规则仅对非尾片分片报文有效

-

source { sour-addr sour-wildcard | any }

源地址信息

定义基本ACL规则的源地址信息

sour-addr为指定源IP地址,采用点分十进制表示;sour-wildcard为目标子网掩码的反码,采用点分十进制表示;sour-wildcard可以为0,代表主机地址

any代表任意源IP地址

time-range time-name

时间段信息

定义规则生效的时间段

time-name:指定规则生效的时间段名称,为1~32个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头,为避免混淆,时间段的名字不可以使用英文单词all

 

sour-wildcard为目标子网掩码的反码,采用点分十进制表示。例如,如果用户想指定子网掩码255.255.0.0,则需要输入0.0.255.255。

 

2. undo rule命令的参数

rule-id:ACL规则编号,必须是一个已经存在的ACL规则编号。如果用户不知道ACL规则的编号,可以使用display acl命令来查看。

fragment:删除编号对应的ACL规则的对非尾片分片报文有效的设置。

source:删除编号对应的ACL规则的源IP地址的设置。

time-range:删除编号对应的ACL规则的时间段的设置。

H3C WP2000系列无线PoE注入器在硬件下发基本ACL时,不支持fragment参数。

 

【描述】

rule命令用来定义ACL规则。undo rule命令用来删除ACL规则或者规则中的某些属性信息。

在删除一条ACL规则时,如果不指定其他参数,设备将这个ACL规则完全删除;否则设备只删除该ACL规则中相应的属性信息。

需要注意的是:

l              当基本ACL的匹配顺序为config时,用户可以修改该ACL中的任何一条已经存在的规则,在修改ACL中的某条规则时,该规则中没有修改到的部分仍旧保持原来的状态;当基本ACL的匹配顺序为auto时,用户不能修改该ACL中的任何一条已经存在的规则,否则系统会提示错误信息。

l              在创建一条ACL规则的时候,用户可以不指定规则的编号,设备将自动为这个规则分配一个编号:如果此ACL中没有规则,编号为0;如果此ACL中已有规则,编号为现有规则的最大编号+1;如果此ACL中现有规则的最大编号为65534,则系统会提示错误信息,此时用户必须指定规则的编号才能创建成功。

l              新创建或修改后的规则不能和已经存在的规则相同,否则会导致创建或修改不成功,系统会提示该规则已经存在。

l              当基本ACL的匹配顺序为auto时,新创建的规则将按照“深度优先”的原则插入到已有的规则中,但是所有规则对应的编号不会改变。

【举例】

# 创建基本ACL 2000,定义规则1,禁止源IP地址为192.168.0.1的报文通过。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] acl number 2000

[Sysname-acl-basic-2000] rule 1 deny source 192.168.0.1 0

[Sysname-acl-basic-2000] quit

# 创建基本ACL 2001,定义规则1,禁止非尾片分片报文通过。

[Sysname] acl number 2001

[Sysname-acl-basic-2001] rule 1 deny fragment

[Sysname-acl-basic-2001] quit

# 创建基本ACL 2002,定义规则1,禁止所有报文在时间段trname所表示的时间范围内通过。

[Sysname] acl number 2002

[Sysname-acl-basic-2002] rule 1 deny time-range trname

完成上述配置后,用户可以使用display acl命令查看ACL的配置信息。

1.1.12  rule(高级ACL)

【命令】

rule [ rule-id ] { deny | permit } protocol [ rule-string ]

undo rule rule-id  [ destination | destination-port | dscp | fragment | icmp-type | igmp-type | precedence | source | source-port | time-range | tos | ttl ]*

【视图】

高级ACL视图

【参数】

1. rule命令的参数说明

rule-id:ACL规则编号,取值范围为0~65534。

deny:表示丢弃符合条件的数据包。

permit:表示允许符合条件的数据包通过。

protocol:IP承载的协议类型。用数字表示时,取值范围为1~255;用名字表示时,可以选取gre(47)、icmp(1)、igmp(2)、ipipinip(4)、ospf(89)、tcp(6)、udp(17)。

rule-string:ACL规则信息,具体参数说明如表1-7所示。

表1-7 高级ACL规则信息

参数

类别

作用

说明

source { sour-addr sour-wildcard | any }

源地址信息

定义ACL规则的源地址信息

sour-addr sour-wildcard用来确定数据包的源地址,点分十进制表示;sour-wildcard可以为0,表示主机地址

any代表任意源地址

destination { dest-addr dest-wildcard | any }

目的地址信息

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

dest-addr dest-wildcard用来确定数据包的目的地址,点分十进制表示;dest-wildcard可以为0,表示主机地址

any代表任意目的地址

precedence precedence

报文优先级

IP优先级

用数字表示时,取值范围为0~7

tos tos

报文优先级

ToS优先级

用数字表示时,取值范围为0~15

dscp dscp

报文优先级

DSCP优先级

用数字表示时,取值范围为0~63

fragment

分片信息

定义规则仅对非尾片分片报文有效

-

ttl ttl

TTL信息

定义规则的TTL字段信息

ttl的取值范围为0~255

time-range time-name

时间段信息

定义规则生效的时间段

time-name:指定规则生效的时间段名称,为1~32个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头,为避免混淆,时间段的名字不可以使用英文单词all

 

sour-wildcarddest-wildcard为目标子网掩码的反码,点分十进制表示。例如,如果用户想指定子网掩码255.255.0.0,则需要输入0.0.255.255。

 

如果选择dscp关键字,除了直接输入数值0~63外,用户也可输入如表1-8所示的关键字。

表1-8 DSCP关键字说明

关键字

DSCP值(十进制)

DSCP值(二进制)

af11

10

001010

af12

12

001100

af13

14

001110

af21

18

010010

af22

20

010100

af23

22

010110

af31

26

011010

af32

28

011100

af33

30

011110

af41

34

100010

af42

36

100100

af43

38

100110

be

0

000000

cs1

8

001000

cs2

16

010000

cs3

24

011000

cs4

32

100000

cs5

40

101000

cs6

48

110000

cs7

56

111000

ef

46

101110

 

如果选择precedence关键字,除了直接输入数值0~7外,用户也可输入如表1-9所示的关键字。

表1-9 IP Precedence关键字说明

关键字

IP Precedence(十进制)

IP Precedence(二进制)

routine

0

000

priority

1

001

immediate

2

010

flash

3

011

flash-override

4

100

critical

5

101

internet

6

110

network

7

111

 

如果选择tos关键字,除了直接输入数值0~15外,用户也可输入如表1-10所示的关键字。

表1-10 ToS关键字说明

关键字

ToS(十进制)

ToS(二进制)

normal

0

0000

min-monetary-cost

1

0001

max-reliability

2

0010

max-throughput

4

0100

min-delay

8

1000

 

当协议类型选择为TCP或者UDP时,用户还可以定义如表1-11所示信息。

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

参数

类别

作用

说明

source-port operator port1 [ port2 ]

源端口

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

operator为操作符,取值可以为lt(小于)、gt(大于)、eq(等于)、neq(不等于)或者range(在指定范围内);只有操作符range需要两个端口号做操作数,其他操作符只需要一个端口号做操作数

port1port2:TCP或UDP的端口号,用名字或数字表示,数字的取值范围为0~65535

配置操作符为range时,port2的取值不需要一定大于port1的取值,设备会自动识别取值范围;当port1port2的取值相同时,设备会将操作符range转换为eq

另外需要注意的是,当用户配置操作符为lt 1或gt 65534时,设备会将其转换为eq 0或eq 65535

destination-port operator port1 [ port2 ]

目的端口

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

established

TCP连接建立标识

表示此条规则仅对TCP建立连接的第一个SYN报文有效

TCP协议特有的参数

 

当TCP或UDP的端口号用名字表示时,用户还可以定义如表1-12所示信息。

表1-12 TCP或UDP端口取值信息

协议类型

取值信息

TCP

CHARgen(19)、bgp(179)、cmd(514)、daytime(13)、discard(9)、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)

 

H3C WP2000系列无线PoE注入器在硬件下发高级ACL时,有如下限制:

l    不支持fragment参数。

l    配置TTL字段信息时,只支持ttl取值为01或者255

l    配置源端口/目的端口信息时,不支持neq操作符。

l    配置源端口/目的端口信息时,range操作符最多只支持配置四组端口范围。

 

当协议类型选择为ICMP时,用户还可以定义如表1-13所示信息。

表1-13 ICMP特有的规则信息

参数

类别

作用

说明

icmp-type icmp-type icmp-code

ICMP报文的类型和消息码信息

定义规则中ICMP报文的类型和消息码信息

icmp-type:ICMP消息类型,取值为0~255

icmp-code:ICMP的消息码,取值为0~255

 

当协议类型选择为ICMP时,用户也可以直接在icmp-type参数后输入ICMP的消息名称,如表1-14所示。

表1-14 ICMP消息

名称

ICMP TYPE

ICMP CODE

echo

Type=8

Code=0

echo-reply

Type=0

Code=0

fragmentneed-DFset

Type=3

Code=4

host-redirect

Type=5

Code=1

host-tos-redirect

Type=5

Code=3

host-unreachable

Type=3

Code=1

information-reply

Type=16

Code=0

information-request

Type=15

Code=0

net-redirect

Type=5

Code=0

net-tos-redirect

Type=5

Code=2

net-unreachable

Type=3

Code=0

parameter-problem

Type=12

Code=0

port-unreachable

Type=3

Code=3

protocol-unreachable

Type=3

Code=2

reassembly-timeout

Type=11

Code=1

source-quench

Type=4

Code=0

source-route-failed

Type=3

Code=5

timestamp-reply

Type=14

Code=0

timestamp-request

Type=13

Code=0

ttl-exceeded

Type=11

Code=0

 

当协议类型选择为IGMP时,用户还可以定义如表1-15所示信息。

表1-15 IGMP特有的规则信息

参数

类别

作用

说明

igmp-type igmp-type

IGMP报文信息

定义规则匹配的IGMP报文子类型

igmp-type的取值范围为0~15

 

2. undo rule命令的参数说明

rule-id:ACL规则编号,必须是一个已经存在的ACL规则编号。如果用户不知道ACL规则的编号,可以使用display acl命令来查看。

source:删除编号对应的ACL规则的源IP地址的设置。

source-port:删除编号对应的ACL规则的源端口的设置,本参数仅在规则定义的协议是TCP或者UDP的情况下有效。

destination:删除编号对应的ACL规则的目的IP地址的设置。

destination-port:删除编号对应的ACL规则的目的端口的设置,本参数仅在规则定义的协议是TCP或者UDP的情况下有效。

icmp-type:删除编号对应的ACL规则的ICMP类型和消息码的设置,本参数仅在规则定义的协议是ICMP的情况下有效。

igmp-type:删除编号对应的ACL规则的IGMP子类型的设置,本参数仅在规则定义的协议是IGMP的情况下有效。

precedence:删除编号对应的ACL规则的IP Precedence的相关设置。

tos:删除编号对应的ACL规则的ToS的相关设置。

dscp:删除编号对应的ACL规则的DSCP的相关设置。

ttl:删除编号对应的ACL规则的TTL的相关设置。

time-range:删除编号对应的ACL规则的时间段的设置。

fragment:删除编号对应的ACL规则的对非尾片分片报文有效的设置。

【描述】

rule命令用来定义ACL规则。undo rule命令用来删除ACL规则或者ACL规则中的某些属性信息。

在删除一条ACL规则时,如果不指定其他参数,设备将这个ACL规则完全删除;否则设备只删除该ACL规则中相应的属性信息。

需要注意的是:

l              当高级ACL的匹配顺序为config时,用户可以修改该ACL中的任何一条已经存在的规则,在修改ACL中的某条规则时,该规则中没有修改到的部分仍旧保持原来的状态;当高级ACL的匹配顺序为auto时,用户不能修改该ACL中的任何一条已经存在的规则,否则系统会提示错误信息。

l              在创建一条ACL规则的时候,用户可以不指定规则的编号,设备将自动为这个规则分配一个编号:如果此ACL中没有规则,编号为0;如果此ACL中已有规则,编号为现有规则的最大编号+1;如果此ACL中现有规则的最大编号为65534,则系统会提示错误信息,此时用户必须指定规则的编号才能创建成功。

l              新创建或修改后的规则不能和已经存在的规则相同,否则会导致创建或修改不成功,系统会提示该规则已经存在。

l              当高级ACL的匹配顺序为auto时,新创建的规则将按照“深度优先”的原则插入到已有的规则中,但是所有规则对应的编号不会改变。

【举例】

# 创建高级ACL 3000,定义规则1,拒绝源IP地址为192.168.0.1并且DSCP优先级为46的IP报文通过。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] acl number 3000

[Sysname-acl-adv-3000] rule 1 deny ip source 192.168.0.1 0 dscp 46

[Sysname-acl-adv-3000] quit

# 创建高级ACL 3001,定义规则1,允许从129.9.0.0/16网段的主机向202.38.160.0/24网段的主机发送的目的端口号为80的TCP报文通过。

[Sysname] acl number 3001

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

完成上述配置后,用户可以使用display acl命令查看ACL的配置信息。

1.1.13  rule(二层ACL)

【命令】

rule [ rule-id ] { deny | permit } [ rule-string ]

undo rule rule-id

【视图】

二层ACL视图

【参数】

rule-idACL规则编号,取值范围为0~65534。

deny:表示丢弃符合条件的数据包。

permit:表示允许符合条件的数据包通过。

rule-string:ACL规则信息,具体参数说明如表1-16所示。

表1-16 二层ACL规则信息

参数

类别

作用

说明

format-type

链路层封装类型

定义规则中的链路层封装类型

format-type:取值可以为802.3/802.2802.3ether_iisnap

lsap lsap-code lsap-wildcard

LSAP字段

定义规则的LSAP字段

lsap-code:数据帧的封装格式,16比特的十六进制数

lsap-wildcard:lsap值的掩码, 16比特的十六进制数,用于指定屏蔽位

source { source-mac-addr source-mac-mask | vlan-id | vlan operator vlan-id1 [ vlan-id2 ] }*

源MAC信息或源VLAN信息

定义规则的源MAC地址范围或源VLAN ID

source-mac-addr:源MAC地址,格式为H-H-H

source-mac-mask:源MAC地址的掩码,格式为H-H-H

vlan-idvlan-id1vlan-id2:源VLAN ID,取值范围为1~4094

operator:操作符,取值可以为lt(小于)、gt(大于)、eq(等于)、neq(不等于)或者range(在指定范围内)只有操作符range需要两个VLAN ID做操作数,其他操作符只需要一个VLAN ID做操作数

配置操作符为range时,vlan-id2的取值不需要一定大于vlan-id1的取值,设备会自动识别取值范围

另外需要注意的是,当用户配置操作符为lt 2或gt 4093时,设备会将其转换为eq 1或eq 4094

dest dest-mac-addr dest-mac-mask

目的MAC信息

定义规则的目的MAC地址范围

dest-mac-addr:目的MAC地址,格式为H-H-H

dest-mac-mask:目的MAC地址的掩码,格式为H-H-H

cos vlan-pri

802.1p优先级

定义规则的802.1p优先级

vlan-pri:取值范围为0~7

c-tag-vlan c-tag-vlan-begin [ to c-tag-vlan-end ]

内层VLAN信息

定义规则的内层VLAN信息

c-tag-vlan-beginc-tag-vlan-end:VLAN ID,取值范围为1~4094

c-tag-vlan参数通常与QinQ功能配合使用,关于QinQ功能的详细介绍请参见“VLAN-VPN”部分

time-range time-name

时间段信息

定义规则生效的时间段

time-name:指定规则生效的时间段名称,为1~32个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头,为避免混淆,时间段的名字不可以使用英文单词all

type protocol-type protocol-mask

以太网帧的协议类型

定义以太网帧的协议类型

protocol-type:协议类型

protocol-mask:协议类型掩码

 

H3C WP2000系列无线PoE注入器在硬件下发二层ACL时,有如下限制:

l    不支持802.3/802.2802.3参数。

l    配置源VLAN信息时,不支持neq操作符。

l    配置源VLAN信息时,range操作符最多只支持配置四组VLAN范围。

 

【描述】

rule命令用来定义ACL规则。undo rule命令用来删除ACL规则。

在删除一条ACL规则时,需要指定该ACL规则的编号。如果用户不知道ACL规则的编号,可以使用display acl命令来查看。

需要注意的是:

l              用户可以修改二层ACL中的任何一条已经存在的规则,在修改ACL中的某条规则时,该规则中没有修改到的部分仍旧保持原来的状态。

l              在创建一条ACL规则的时候,用户可以不指定规则的编号,设备将自动为这个规则分配一个编号:如果此ACL中没有规则,编号为0;如果此ACL中已有规则,编号为现有规则的最大编号+1;如果此ACL中现有规则的最大编号为65534,则系统会提示错误信息,此时用户必须指定规则的编号才能创建成功。

l              新创建或修改后的规则不能和已经存在的规则相同,否则会导致创建或修改不成功,系统会提示该规则已经存在。

【举例】

# 创建二层ACL 4000,定义规则1,禁止从MAC地址000d-88f5-97ed发送到MAC地址0011-4301-991e且802.1p优先级为3的报文通过。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] acl number 4000

[Sysname-acl-ethernetframe-4000] rule 1 deny cos 3 source 000d-88f5-97ed ffff-ffff-ffff dest 0011-4301-991e ffff-ffff-ffff

1.1.14  rule(IPv6 ACL)

【命令】

rule [ rule-id ] { deny | permit } [ dscp rule-string  rule-mask ] [ ip-protocol rule-string  rule-mask ] [ src-ip ipv6-address prefix-length ] [ dest-ip ipv6-address prefix-length ] [ [ src-port rule-string  rule-mask | dest-port rule-string  rule-mask ] * | [ icmpv6-type rule-string  rule-mask | icmpv6-code rule-string  rule-mask ] * ] [ time-range time-name ]

undo rule rule-id

【视图】

IPv6 ACL视图

【参数】

rule-id:ACL规则编号,取值范围为0~65534。

deny:表示丢弃符合条件的数据包。

permit:表示允许符合条件的数据包通过。

dscp rule-string  rule-mask:定义规则为匹配IPv6报文的流量类型(Traffic-class)信息。rule-stringrule-mask为内容字符串和掩码字符串,长度取值为2,且必须为16进制数。

ip-protocol rule-string  rule-mask:定义规则为匹配IPv6报文的下一报头信息。rule-stringrule-mask为内容字符串和掩码字符串,长度取值为2,且必须为16进制数。

src-ip ipv6-address prefix-length:定义规则为匹配IPv6报文的源IP地址信息。ipv6-address prefix-length为IPv6地址和前缀长度,其中prefix-length取值范围为1~128。

dest-ip ipv6-address prefix-length:定义规则为匹配IPv6报文的目的IP地址信息。ipv6-address prefix-length为IPv6地址和前缀长度,其中prefix-length取值范围为1~128。

src-port rule-string  rule-mask:定义规则为匹配IPv6报文的TCP或UDP协议源端口信息。rule-stringrule-mask为内容字符串和掩码字符串,长度取值为4,且必须为16进制数。

dest-port rule-string  rule-mask:定义规则为匹配IPv6报文的TCP或UDP协议目的端口信息。rule-stringrule-mask为内容字符串和掩码字符串,长度取值为4,且必须为16进制数。

icmpv6-type rule-string  rule-mask:定义规则为匹配IPv6报文的ICMP协议消息类型信息。rule-stringrule-mask为内容字符串和掩码字符串,长度取值为2,且必须为16进制数。

icmpv6-code rule-string  rule-mask:定义规则为匹配IPv6报文的ICMP协议消息码信息。rule-stringrule-mask为内容字符串和掩码字符串,长度取值为2,且必须为16进制数。

time-range time-name:定义规则生效的时间段信息。time-name为1~32个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头,为避免混淆,时间段的名字不可以使用英文单词all。

【描述】

rule命令用来定义ACL规则。undo rule命令用来删除ACL规则。

在删除一条ACL规则时,需要指定该ACL规则的编号。如果用户不知道ACL规则的编号,可以使用display acl命令来查看。

需要注意的是:

l              用户可以修改IPv6 ACL中的任何一条已经存在的规则,在修改ACL中的某条规则时,如果用户的修改只涉及动作或时间段部分,则该规则中没有修改到的部分仍旧保持原来的状态;如果用户修改了自定义字符串部分的内容,则修改后的自定义字符串会覆盖原有的自定义字符串。

l              在创建一条ACL规则的时候,用户可以不指定规则的编号,设备将自动为这个规则分配一个编号:如果此ACL中没有规则,编号为0;如果此ACL中已有规则,编号为现有规则的最大编号+1;如果此ACL中现有规则的最大编号为65534,则系统会提示错误信息,此时用户必须指定规则的编号才能创建成功。

l              新创建或修改后的规则不能和已经存在的规则相同,否则会导致创建或修改不成功,系统会提示该规则已经存在。

l              在定义规则时,如果用户需要配置src-port/dest-port,则必须配置ip-protocol为TCP或UDP,即0x06或0x11;如果用户需要配置icmpv6-type/ icmpv6-code,则必须配置ip-protocol为ICMPv6,即0x3a。

WP2000系列无线PoE注入器在硬件下发IPv6 ACL时,有如下限制:

l    不支持匹配带有扩展报文头的IPv6报文。

l    不要与VLAN Mapping、信任端口的优先级共同使用。

【举例】

# 配置IPv6 ACL 5000,禁止从源IPv6地址3001::1/64发送到目的IPv6地址3002::1/64的报文通过。

<Sysname> system-view

[Sysname] acl number 5000

[Sysname-acl-user-5000] rule deny src-ip 3001::1 64 dest-ip 3002::1 64

1.1.15  rule comment

【命令】

rule rule-id comment text

undo rule rule-id comment

【视图】

高级ACL视图/二层ACL视图/IPv6 ACL视图

【参数】

rule-idACL规则编号,取值范围为0~65534。

text:ACL规则的注释信息,字符串格式,取值范围为1~127个字符。

【描述】

rule comment命令用来定义ACL规则的注释信息。undo rule comment命令用来删除ACL规则的注释信息。

用户可以使用rule comment命令来描述ACL规则的具体用途、应用于哪些端口等信息,方便用户对ACL规则进行区分和识别。

缺省情况下,ACL规则没有注释信息。

需要注意的是,在定义ACL规则的注释信息之前,该ACL规则必须已经存在。

【举例】

# 定义高级ACL 3001的rule 0的注释信息为“This rule is to be applied to eth 1/0/1”。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] acl number 3001

[Sysname-acl-adv-3001] rule 0 comment This rule is to be applied to eth 1/0/1

# 使用display acl命令查看高级ACL 3001的配置信息。

[Sysname-acl-adv-3001] display acl 3001

Advanced ACL  3001, 1 rule

Acl's step is 1

 rule 0 deny IP source 1.1.1.1 0 destination 2.2.2.2 0

 rule 0 comment This rule is to be applied to eth 1/0/1

1.1.16  time-range

【命令】

time-range time-name { start-time to end-time days-of-the-week [ from start-time start-date ] [ to end-time end-date ] | from start-time start-date [ to end-time end-date ] | to end-time end-date }

undo time-range { all | name time-name [ start-time to end-time days-of-the-week [ from start-time start-date ] [ to end-time end-date ] | from start-time start-date [ to end-time end-date ] | to end-time end-date ] }

【视图】

系统视图

【参数】

all:所有的时间段。

time-name:时间段的名称,为1~32个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头。为避免混淆,时间段的名字不能使用英文单词all。

start-time:可选参数,周期时间段的开始时间,表示形式为hh:mm。

end-time:可选参数,周期时间段的结束时间,表示形式为hh:mm。结束时间必须大于起始时间。

days-of-the-week:可选参数,参数表示该周期时间在每周几有效。可以输入如下参数及其组合:

l              数字(0~6);

l              星期一到星期日(Mon,Tue,Wed,Thu,Fri,Sat,Sun);

l              工作日(working-day),包括从星期一到星期五五天;

l              休息日(off-day),包括星期六和星期日;

l              每一天(daily),一个星期中的每一天。

from start-time start-date:可选参数,绝对时间段的开始日期,和end-time end-date共同表示该绝对时间在某一段日期中生效,表示形式为hh:mm MM/DD/YYYY或hh:mm YYYY/MM/DD。如果不指定开始日期,则开始日期为1970年1月1日0点0分。

to end-time end-date:可选参数,绝对时间段的结束日期,和start-time start-date共同表示该绝对时间在某一段日期中生效,表示形式为hh:mm MM/DD/YYYY或hh:mm YYYY/MM/DD。如果不指定结束日期,则结束日期为2100年12月31日23点59分。

【描述】

time-range命令用来配置一个时间段。undo time-range命令用来删除一个时间段或删除所有的时间段。

需要注意的是:

l              设备最多支持配置256个时间段,一个时间段下最多可以配置32个周期时间段和12个绝对时间段。

l              如果一个时间段只定义了周期时间段,则只有系统时钟在该周期时间段内,该时间段才进入激活状态。如果一个时间段下定义了多个周期时间段,则这些周期时间段之间是“或”的关系。

l              如果一个时间段只定义了绝对时间段,则只有系统时钟在该绝对时间段内,该时间段才进入激活状态。如果一个时间段下定义了多个绝对时间段,则这些绝对时间段之间是“或”的关系。

l              如果一个时间段同时定义了绝对时间段和周期时间段,则只有同时满足绝对时间段和周期时间段的定义时,该时间段才进入激活状态。例如,一个时间段定义了绝对时间段:从2004年1月1日零点零分到2004年12月31日23点59分,同时定义了周期时间段:每周三的12:00到14:00。该时间段只有在2004年内每周三的12:00到14:00才进入激活状态。

【举例】

# 定义周期时间段,时间范围为每周一到周五的08:00至12:00。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] time-range tr1 08:00 to 12:00 working-day

# 定义绝对时间段,时间范围为2008年1月1日12:00至2008年6月1日12:00。

[Sysname] time-range tr2 from 12:00 1/1/2008 to 12:00 6/1/2008

# 显示时间段的配置信息。

[Sysname] display time-range all

Current time is 17:37:23 Nov/27/2007 Tuesday

 

Time-range : tr1 ( Inactive )

 08:00 to 12:00 working-day

 

Time-range : tr2 ( Inactive )

 From 12:00 Jan/1/2008 to 12:00 Jun/1/2008

 

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

新华三官网
联系我们