18-ACL命令
本章节下载 (357.07 KB)
【命令】
display time-range { all | time-name }
【视图】
任意视图
【参数】
time-name:时间段的名称,为1~32个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头。为避免混淆,时间段的名字不可以使用英文单词all。
all:所有配置的时间段。
【描述】
display time-range命令用来显示当前时间段的配置信息和状态,对于当前处在激活状态的时间段将显示Active,对于非激活状态的时间段将显示Inactive。
【举例】
# 显示时间段trname的配置信息和状态。
<Sysname> display time-range trname
Current time is 10:45:15 4/14/2005 Thursday
Time-range : trname ( Inactive )
from 08:00 12/1/2005 to 24:00 12/31/2100
表1-1 display time-range命令显示信息描述表
字段 |
描述 |
Current time |
系统当前的时间 |
Time-range |
时间段的配置信息:时间段的名字、时间段所处的状态(状态分为两种:激活和非激活)、时间段的时间范围 |
【命令】
time-range time-name { start-time to end-time days [ from time1 date1 ] [ to time2 date2 ] | from time1 date1 [ to time2 date2 ] | to time2 date2 }
undo time-range time-name [ start-time to end-time days [ from time1 date1 ] [ to time2 date2 ] | from time1 date1 [ to time2 date2 ] | to time2 date2 ]
【视图】
系统视图
【参数】
time-name:时间段的名称,为1~32个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头。为避免混淆,时间段的名字不可以使用英文单词all。
start-time:一个周期时间段的开始时间,格式为hh:mm,小时和分钟之间使用“:”分隔,取值范围为00:00~23:59。
end-time:一个周期时间段的结束时间,格式为hh:mm,小时和分钟之间使用“:”分隔,取值范围为00:00~24:00。结束时间必须大于开始时间。
days:表示配置的时间范围在每周几有效,用来定义周期时间段。可以输入多个参数,但是这些参数所代表的时间范围不能重叠,可以输入的参数如下:
l 数字(0~6,分别代表一周中的其中一天,0代表星期日);
l 星期一到星期日(Mon,Tue,Wed,Thu,Fri,Sat,Sun);
l 工作日(working-day),从星期一到星期五;
l 休息日(off-day),包括星期六和星期日;
l 每日(daily),包括一周七天。
from time1 date1:表示从某一天某一时间开始,与to time2 date2结合使用,用来定义绝对时间段。time1的输入格式为hh:mm,取值范围为00:00~23:59。date1的输入格式为MM/DD/YYYY或YYYY/MM/DD。DD代表日,可以输入1~31之间的数字;MM代表月,可以输入1~12之间的数字;YYYY代表年,可以输入1970~2100之间的数字。如果不配置起始时间,则开始时间为系统可表示的最早时间。
to time2 date2:表示到某一天某一时间结束。time2的输入格式为hh:mm,取值范围为00:00~24:00。date2的输入格式与date1相同。结束时间必须大于起始时间。如果不配置结束时间,则结束时间为系统可表示的最大时间。
【描述】
time-range命令用来定义一个时间段,描述一个时间范围。undo time-range命令用来删除一个时间段。
对时间段的配置有如下两种情况:
l 配置周期时间段:采用每个星期固定时间段的形式;
l 配置绝对时间段:采用从某年某月某日某时起至某年某月某日某时结束的形式。
需要注意的是:
l 如果用户通过命令time-range time-name start-time to end-time days定义了一个周期时间段,则只有系统时钟在该周期时间段范围内,该时间段才进入激活状态。
l 如果用户通过命令time-range time-name { from time1 date1 [ to time2 date2 ] | to time2 date2 }定义了一个绝对时间段,则只有系统时钟在该绝对时间段范围内,该时间段才进入激活状态。
l 如果用户通过命令time-range time-name start-time to end-time days { from time1 date1 [ to time2 date2 ] | to time2 date2 }同时定义了绝对时间段和周期时间段,则只有系统时钟同时满足绝对时间段和周期时间段的定义时,该时间段才进入激活状态。例如,一个时间段定义了绝对时间段:从2004年1月1日0点0分到2004年12月31日23点59分,同时定义了周期时间段:每周三的12:00到14:00。该时间段只有在2004年内每周三的12:00到14:00才进入激活状态。
l 在同一个名字下可以配置多个时间范围,来共同描述一个特殊时间段,通过名字来引用这个时间段。在同一个名字下配置的多个周期时间段之间是“或”的关系,多个绝对时间段之间是“或”的关系,而周期时间段和绝对时间段之间是“与”的关系。
l 最多可以定义256个时间段。
【举例】
# 配置绝对时间段test,在2003年1月1日0:0生效,并在系统支持的最大时间内有效。
<Sysname> system-view
[Sysname] time-range test from 0:0 2003/1/1
# 配置周期时间段test,在星期一到星期五每天8:00到18:00生效。
<Sysname> system-view
[Sysname] time-range test 8:00 to 18:00 working-day
# 配置周期时间段test,在休息日下午14:00到18:00生效。
<Sysname> system-view
[Sysname] time-range test 14:00 to 18:00 off-day
【命令】
acl number acl-number [ match-order { config | auto } ]
undo acl { number acl-number | all }
【视图】
系统视图
【参数】
acl-number:IPv4 ACL的序号,取值范围为2000~5999。
l 2000~2999:基本IPv4 ACL
l 3000~3999:高级IPv4 ACL
l 4000~4999:二层IPv4 ACL
l 5000~5999:用户自定义IPv4 ACL
match-order:指定规则的匹配顺序。
l config:按照用户配置规则的先后顺序进行规则匹配;
l auto:按照“深度优先”的顺序进行规则匹配。
all:所有的IPv4 ACL。
【描述】
acl命令用来创建IPv4 ACL并进入相应视图。undo acl命令用来删除指定的IPv4 ACL。
缺省情况下,IPv4 ACL的匹配顺序为config。
用户也可以通过本命令修改一个已经存在的IPv4 ACL的匹配顺序,但必须在该IPv4 ACL中没有规则的时候修改,对已经有规则的IPv4 ACL是无法修改其匹配顺序的。
需要注意的是,创建用户自定义IPv4 ACL的命令不带match-order参数,其匹配顺序只能为配置顺序。
【举例】
# 创建IPv4 ACL 2000。
<Sysname> system-view
[Sysname] acl number 2000
[Sysname-acl-basic-2000]
【命令】
description text
undo description
【视图】
基本IPv4 ACL视图/高级IPv4 ACL视图/二层IPv4 ACL视图/用户自定义IPv4 ACL视图
【参数】
text:IPv4 ACL的描述信息,为1~127个字符的字符串,区分大小写。
【描述】
description命令用来定义IPv4 ACL的描述信息,描述该IPv4 ACL的具体用途。undo description命令用来删除IPv4 ACL的描述信息。
缺省情况下,IPv4 ACL没有描述信息。
【举例】
# 定义IPv4 ACL 2000的描述信息为“This acl is used in eth 0”。
<Sysname> system-view
[Sysname] acl number 2000
[Sysname-acl-basic-2000] description This acl is used in eth 0
# 定义IPv4 ACL 3000的描述信息为“This acl is used in eth 0”。
<Sysname> system-view
[Sysname] acl number 3000
[Sysname-acl-adv-3000] description This acl is used in eth 0
# 定义IPv4 ACL 4000的描述信息为“This acl is used in eth 0”。
<Sysname> system-view
[Sysname] acl number 4000
[Sysname-acl-ethernetframe-4000] description This acl is used in eth 0
# 定义IPv4 ACL 5000的描述信息为“This acl is used in eth 0”。
<Sysname> system-view
[Sysname] acl number 5000
[Sysname-acl-user-5000] description This acl is used in eth 0
【命令】
display acl { all | acl-number }
【视图】
任意视图
【参数】
acl-number:IPv4 ACL的序号,取值范围2000~5999。
l 2000~2999:基本IPv4 ACL
l 3000~3999:高级IPv4 ACL
l 4000~4999:二层IPv4 ACL
l 5000~5999:用户自定义IPv4 ACL
all:所有的IPv4 ACL。
【描述】
display acl命令用来显示配置的IPv4 ACL的信息。
本命令会按照匹配顺序显示IPv4 ACL的规则。
【举例】
# 显示IPv4 ACL 2001的信息。
<Sysname> display acl 2001
Basic ACL 2001, 1 rule,
ACL's step is 5
rule 5 permit source 1.1.1.1 0 (0 times matched)
rule 5 comment This rule is used in eth 1
表1-2 display acl命令显示信息描述表
字段 |
描述 |
Basic ACL 2001 |
这个ACL属于基本IPv4 ACL,序号为2001 |
1 rule |
这个IPv4 ACL包含1条规则 |
ACL's step is 5 |
这个IPv4 ACL的规则序号的步长值为5 |
0 times matched |
这个规则匹配的次数为0,仅统计软件ACL的匹配次数 |
rule 5 comment This rule is used in eth 1 |
IPv4 ACL规则5的描述信息为This rule is used in eth 1 |
【命令】
reset acl counter { all | acl-number }
【视图】
用户视图
【参数】
acl-number:IPv4 ACL的序号,取值范围2000~4999。
l 2000~2999:基本IPv4 ACL;
l 3000~3999:高级IPv4 ACL;
l 4000~4999:二层IPv4 ACL。
all:所有的IPv4 ACL。
【描述】
reset acl counter命令用来清除IPv4 ACL的统计信息。
【举例】
# 清除IPv4 ACL 2001的统计信息。
<Sysname> reset acl counter 2001
【命令】
rule [ rule-id ] { permit | deny } [ rule-string ]
undo rule rule-id [ fragment | logging | source | time-range ]*
【视图】
基本IPv4 ACL视图
【参数】
rule-id:IPv4 ACL规则编号,取值范围为0~65534。
deny:表示丢弃符合条件的报文。
permit:表示允许符合条件的报文通过。
rule-string:规则信息,可以由表1-3中的参数组合而成。
参数 |
类别 |
作用 |
说明 |
fragment |
分片信息 |
定义规则仅对非尾片分片报文有效 |
- |
logging |
日志操作 |
对符合条件的报文记录日志 |
日志内容包括: l IPv4 ACL规则的序号 l 报文通过或被丢弃 l IP承载的上层协议类型 l 源/目的地址 l 源/目的端口号 l 报文的数目 |
source { sour-addr sour-wildcard | any } |
源地址信息 |
指定IPv4 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。
rule-id:IPv4 ACL规则编号,必须是一个已经存在的IPv4 ACL规则编号。如果不指定其他参数,设备将这个IPv4 ACL规则完全删除。否则设备只删除该IPv4 ACL规则相应的信息。
fragment:删除编号对应的规则的对非尾片分片报文有效的设置。
logging:删除编号对应的规则的日志设置。
source:删除编号对应的规则的源地址部分的信息设置。
time-range:删除编号对应的规则的时间段设置。
& 说明:
S3610&S5510系列以太网交换机目前不支持配置logging参数。
【描述】
rule命令用来定义一个IPv4 ACL规则。undo rule命令用来删除一个IPv4 ACL规则或者规则的某些属性信息。
在删除一条规则时,需要指定该规则的编号。如果用户不知道规则的编号,可以使用display acl命令来查看。如果undo rule rule-id命令后不指定参数,将删除整个IPv4 ACL规则,否则,将只删除指定IPv4 ACL规则中相应的属性信息。
需要注意的是:
l 当匹配顺序为config时,如果指定编号对应的规则已经存在,系统将编辑该规则,没有编辑的部分仍旧保持原来的状态;当匹配顺序为auto时,用户不能编辑任何一个已经存在的规则,否则系统会提示错误信息。
l 在定义规则的时候,用户可以不指定规则编号,这时系统会从0开始,按照指定的步长,自动为规则分配一个大于现有最大编号的最小编号。假设现有规则的最大编号是28,编号步长是5,那么系统分配给新定义的规则的编号将是30。
l 新创建或用户编辑后的规则不能和已经存在的规则相同,否则创建或编辑不成功,系统提示该规则已经存在。
l 当匹配顺序为auto时,新创建的规则将按照“深度优先”的原则插入到已有的规则中,但是所有规则对应的编号不会改变。
【举例】
# 定义一个基本IPv4 ACL规则,禁止源地址为1.1.1.1的报文通过。
<Sysname> system-view
[Sysname] acl number 2000
[Sysname-acl-basic-2000] rule deny source 1.1.1.1 0
【命令】
rule [ rule-id ] { permit | deny } protocol [ rule-string ]
undo rule rule-id [ destination | destination-port | dscp | fragment | icmp-type | logging | precedence | reflective | source | source-port | time-range | tos ]*
【视图】
高级IPv4 ACL视图
【参数】
rule-id:IPv4 ACL规则编号,取值范围为0~65534。
deny:表示丢弃符合条件的报文。
permit:表示允许符合条件的报文通过。
protocol:IP承载的协议类型。用数字表示时,取值范围为0~255;用名字表示时,可以选取gre、icmp、igmp、ip、ipinip、ospf、tcp、udp。
rule-string:规则信息,可以由表1-4中的参数组合而成。
表1-4 IPv4 ACL规则信息
参数 |
类别 |
作用 |
说明 |
destination { dest-addr dest-wildcard | any } |
目的地址信息 |
指定IPv4 ACL规则的目的地址信息 |
dest-addr dest-wildcard用来确定报文的目的IP地址,点分十进制表示,dest-wildcard也可以为0,此时代表主机地址;any代表任意目的IP地址 |
dscp dscp |
报文优先级 |
DSCP优先级 |
dscp用数字表示时,取值范围为0~63;用文字表示时,可以选取af11、af12、af13、af21、af22、af23、af31、af32、af33、af41、af42、af43、cs1、cs2、cs3、cs4、cs5、cs6、cs7、default、ef |
fragment |
分片信息 |
定义规则仅对非尾片分片报文有效 |
- |
logging |
日志操作 |
对符合条件的报文记录日志 |
日志内容包括: l IPv4 ACL规则的序号 l 报文通过或被丢弃 l IP承载的上层协议类型 l 源/目的地址 l 源/目的端口号 l 报文的数目 |
precedence precedence |
报文优先级 |
IP优先级 |
precedence用数字表示时,取值范围为0~7;用文字表示时,可以选取critical、flash、flash-override、internet、immediate、network、priority、routine |
source { sour-addr sour-wildcard | any } |
源地址信息 |
指定IPv4 ACL规则的源地址信息 |
sour-addr sour-wildcard用来确定报文的源IP地址,点分十进制表示,sour-wildcard也可以为0,此时代表主机地址;any代表任意源IP地址 |
time-range time-name |
时间段信息 |
指定规则生效的时间段 |
time-name:指定规则生效的时间段名称,字符串格式,长度为1~32 |
tos tos |
报文优先级 |
ToS优先级 |
tos用数字表示时,取值范围为0~15;用文字表示时,可以选取max-reliability、max-throughput、min-delay、min-monetary-cost、normal |
& 说明:
sour-wildcard与dest-wildcard为目标子网掩码的反码,采用点分十进制表示。例如,如果用户想指定子网掩码255.255.0.0,则需要输入0.0.255.255。
当协议类型选择为TCP或者UDP时,用户还可以定义如表1-5所示信息。
表1-5 TCP/UDP特有的IPv4 ACL规则信息
参数 |
类别 |
作用 |
说明 |
source-port operator port1 [ port2 ] |
源端口 |
定义UDP/TCP报文的源端口信息 |
operator为操作符,取值可以为lt(小于)、gt(大于)、eq(等于)、neq(不等于)或者range(在范围内,包括边界值);只有操作符range需要两个端口号做操作数,其他的只需要一个端口号做操作数 port1、port2:TCP或UDP的端口号,用文字或数字表示,数字的取值范围为0~65535 |
destination-port operator port1 [ port2 ] |
目的端口 |
定义UDP/TCP报文的目的端口信息 |
|
established |
TCP连接建立标识 |
定义对TCP连接报文的处理规则 |
TCP协议特有的参数 |
reflective |
自反标志 |
配置规则具有自反属性 |
动作类型只支持permit |
当TCP或UDP的端口号用文字表示时,用户还可以定义如下信息。
表1-6 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(139)、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) |
当协议类型选择为ICMP时,用户还可以定义如表1-7所示的信息。
表1-7 ICMP特有的IPv4 ACL规则信息
参数 |
类别 |
作用 |
说明 |
icmp-type icmp-type icmp-code |
ICMP报文的消息类型和消息码信息 |
指定规则的ICMP报文的消息类型和消息码信息 |
icmp-type:ICMP消息类型,取值范围为0~255 icmp-code:ICMP的消息码,取值范围为0~255 |
reflective |
自反标志 |
配置规则具有自反属性 |
动作类型只支持permit |
几种常见的ICMP消息如下表所示。
表1-8 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 |
rule-id:IPv4 ACL规则编号,必须是一个已经存在的IPv4 ACL规则编号。如果不指定其他参数,设备将这个IPv4 ACL规则完全删除。否则设备只删除该IPv4 ACL规则相应的信息。
destination:删除编号对应的规则的目的地址的信息设置。
destination-port:删除编号对应的规则的目的端口部分的信息设置,本参数仅在规则定义的协议是TCP或者UDP的情况下有效。
dscp:删除编号对应的规则的DSCP的相关设置。
fragment:删除编号对应的规则的对非尾片分片报文有效的设置。
icmp-type:删除编号对应的规则的ICMP消息类型和消息码部分的信息设置,本参数仅在规则定义的协议是ICMP的情况下有效。
logging:删除编号对应的规则的日志设置。
precedence:删除编号对应的规则的precedence的相关设置。
source:删除编号对应的规则的源地址部分的信息设置。
reflective:删除编号对应的规则的自反属性。
source-port:删除编号对应的规则的源端口部分的信息设置,本参数仅在规则定义的协议是TCP或者UDP的情况下有效。
time-range:删除编号对应的规则的时间段设置。
tos:删除编号对应的规则的ToS的相关设置。
& 说明:
S3610&S5510系列以太网交换机目前不支持配置logging参数、reflective参数和established参数。
【描述】
rule命令用来定义一个IPv4 ACL规则。undo rule命令用来删除一个IPv4 ACL规则或者规则的某些属性信息。
在删除一条规则时,需要指定该规则的编号。如果用户不知道规则的编号,可以使用display acl命令来查看。如果undo rule rule-id命令后不指定参数,将删除整个IPv4 ACL规则,否则,将只删除指定IPv4 ACL规则中相应的属性信息。
需要注意的是:
l 当匹配顺序为config时,如果指定编号对应的规则已经存在,系统将编辑该规则,没有编辑的部分仍旧保持原来的状态;当匹配顺序为auto时,用户不能编辑任何一个已经存在的规则,否则系统会提示错误信息。
l 在定义规则的时候,用户可以不指定规则编号,这时系统会从0开始,按照指定的步长,自动为规则分配一个大于现有最大编号的最小编号。假设现有规则的最大编号是28,编号步长是5,那么系统分配给新定义的规则的编号将是30。
l 新创建或用户编辑后的规则不能和已经存在的规则相同,否则创建或编辑不成功,系统提示该规则已经存在。
l 当匹配顺序为auto时,新创建的规则将按照“深度优先”的原则插入到已有的规则中,但是所有规则对应的编号不会改变。
【举例】
# 定义一条规则,允许从129.9.0.0网段的主机向202.38.160.0网段的主机发送的端口号为80的TCP报文通过。
<Sysname> system-view
[Sysname] acl number 3101
[Sysname-acl-adv-3101] 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
【命令】
rule [ rule-id ] { permit | deny } [ rule-string ]
undo rule rule-id
【视图】
二层IPv4 ACL视图
【参数】
rule-id:IPv4 ACL的规则编号,取值范围为0~65534。
deny:表示丢弃符合条件的报文。
permit:表示允许符合条件的报文通过。
rule-string:规则信息,可以由下表中的参数组合而成,具体参数说明如下表所示。
表1-9 IPv4 ACL规则信息
参数 |
类别 |
作用 |
说明 |
type type-code type-wildcard |
链路层协议类型 |
定义规则中的链路层协议类型 |
type-code:16比特的十六进制数表征的数据帧的类型,对应Ethernet_II类型和Ethernet_SNAP类型帧中的type-code域 type-wildcard:类型掩码,是一个16比特的十六进制数,用于指定屏蔽位 |
lsap lsap-code lsap-wildcard |
LLC封装中的DSAP字段和SSAP字段 |
定义规则中LLC封装中的DSAP字段和SSAP字段 |
lsap-code:数据帧的封装格式,16比特的十六进制数 lsap-wildcard:lsap值的掩码,16比特的十六进制数,用于指定屏蔽位 |
source-mac sour-addr source-mask |
源信息 |
定义规则的源MAC地址范围 |
sour-addr:源MAC地址,格式为xxxx-xxxx-xxxx sour-mask:源MAC地址的掩码,格式为xxxx-xxxx-xxxx |
dest-mac dest-addr dest-mask |
目的信息 |
定义规则的目的MAC地址范围 |
dest-addr:目的MAC地址,格式为xxxx-xxxx-xxxx dest-mask:目的MAC地址的掩码,格式为xxxx-xxxx-xxxx |
cos vlan-pri |
优先级 |
定义规则的802.1p优先级 |
vlan-pri:802.1p优先级值,用数字表示时,取值范围为0~7;用文字表示时,分别对应best-effort、background、spare、excellent-effort、controlled-load、video、voice、network-management |
time-range time-name |
时间段信息 |
指定规则生效的时间段 |
time-name:指定规则生效的时间段名称,字符串格式,长度为1~32 |
& 说明:
l S3610&S5510系列以太网交换机目前不支持配置lsap参数。
l 当一条规则中配置type参数时,如果用户定义的协议类型和掩码相与之后,所得结果与8100和掩码相与之后的结果相同,则带tag的报文会匹配这条规则。
rule-id:IPv4 ACL规则编号,必须是一个已经存在的IPv4 ACL规则编号。
【描述】
rule命令用来定义一个IPv4 ACL规则。undo rule命令用来删除一个IPv4 ACL规则。
在删除一条规则时,需要指定该规则的编号。如果用户不知道规则的编号,可以使用display acl命令来查看。
需要注意的是:
l 当匹配顺序为config时,如果指定编号对应的规则已经存在,系统将编辑该规则,没有编辑的部分仍旧保持原来的状态;当匹配顺序为auto时,用户不能编辑任何一个已经存在的规则,否则系统会提示错误信息。
l 在定义规则的时候,用户可以不指定规则编号,这时系统会从0开始,按照指定的步长,自动为规则分配一个大于现有最大编号的最小编号。假设现有规则的最大编号是28,编号步长是5,那么系统分配给新定义的规则的编号将是30。
l 新创建或用户编辑后的规则不能和已经存在的规则相同,否则创建或编辑不成功,系统提示该规则已经存在。
l 当匹配顺序为auto时,新创建的规则将按照“深度优先”的原则插入到已有的规则中,但是所有规则对应的编号不会改变。
【举例】
# 定义一个规则,禁止802.1p优先级为3的报文通过。
<Sysname> system-view
[Sysname] acl number 4000
[Sysname-acl-ethernetframe-4000] rule deny cos 3
【命令】
rule [ rule-id ] { permit | deny } [ [ start | ipv4 | ipv6 | l2 | l4 ] { rule-string rule-mask offset }&<1-8> ] [ time-range time-name ]
undo rule rule-id
【视图】
用户自定义IPv4 ACL视图
【参数】
rule-id:IPv4 ACL的规则编号,取值范围为0~65534。
deny:表示丢弃符合条件的报文。
permit:表示允许符合条件的报文通过。
start:从报文头开始偏移。
ipv4:从IPv4报文头开始偏移。
ipv6:从IPv6报文头开始偏移。
l2:从L2帧头开始偏移。
l4:从L4报文头开始偏移。
rule-string:用户自定义的规则字符串,必须是16进制数组成,字符长度必须是偶数。
rule-mask:规则字符串的掩码,用于和报文作“与”操作,必须是16进制数组成,字符长度必须是偶数。
offset:偏移量,指定从第几个字节开始进行“与”操作。
&<1-8>:表示一次最多可以定义8个这样的规则。
time-range:可选参数,指定IPv4 ACL的生效时间。
rule-id:IPv4 ACL规则编号,必须是一个已经存在的IPv4 ACL规则编号。
【描述】
rule命令用来定义一个IPv4 ACL规则。undo rule命令用来删除一个IPv4 ACL规则。
在删除一条规则时,需要指定该规则的编号。如果用户不知道规则的编号,可以使用display acl命令来查看。
当不选择偏移类型时,缺省值是start,即从报文头开始偏移。
需要注意的是:
l 如果指定编号对应的规则已经存在,系统将编辑该规则,但规则的描述信息保持不变。
l 新创建的规则不能和已经存在的规则相同,否则会导致创建不成功。
l 在定义规则的时候,用户可以不指定规则编号,这时,系统会从0开始,按照一定的编号步长,自动为规则分配一个大于现有最大编号的最小编号。假设现有规则的最大编号是28,编号步长是5,那么系统分配给新定义的规则的编号将是30。
l 用户自定义IPv4 ACL的匹配顺序为配置顺序。
【举例】
# 定义一个用户自定义IPv4 ACL规则,匹配ARP报文。
<Sysname> system-view
[Sysname] acl number 5005
[Sysname-acl-user-5005] rule permit l2 0806 ffff 12
【命令】
rule rule-id comment text
undo rule rule-id comment
【视图】
基本IPv4 ACL视图/高级IPv4 ACL视图/二层IPv4 ACL视图/用户自定义IPv4 ACL视图
【参数】
rule-id:IPv4 ACL规则编号,取值范围为0~65534。
text:IPv4 ACL规则的描述信息,为1~127个字符的字符串,区分大小写。
【描述】
rule comment命令用来定义IPv4 ACL规则的描述信息,描述该规则的用途、属性等提示信息。undo rule comment命令用来删除IPv4 ACL规则的描述信息。
缺省情况下,规则没有描述信息。
需要注意的是:
l 在使用rule comment命令为规则定义描述信息时,该规则必须存在。
l 在使用rule comment命令时,如果指定规则没有描述信息,则为其添加描述信息;如果指定规则已经存在描述信息,则修改其为新的描述信息。
【举例】
# 创建一条规则,并为其定义一个描述信息“This rule is used in eth 1”。
<Sysname> system-view
[Sysname] acl number 3101
[Sysname-acl-adv-3101] rule 0 permit source 1.1.1.1 0
[Sysname-acl-adv-3101] rule 0 comment This rule is used in eth 1
【命令】
step step-value
undo step
【视图】
基本IPv4 ACL视图/高级IPv4 ACL视图/二层IPv4 ACL视图
【参数】
step-value:IPv4 ACL规则编号的步长值,取值范围为1~20。
【描述】
step命令用来为一个IPv4 ACL规则组中的规则序号指定一个步长。undo step命令用来把步长值恢复为缺省值。
缺省情况下,步长为5。
步长的含义是:设备自动为IPv4 ACL规则分配编号的时候,每个相邻规则编号之间的差值。例如如果步长设定为5,规则编号分配是按照0、5、10、15……这样的规律分配的。
当步长改变后,IPv4 ACL规则组的规则编号会自动重新排列。例如,原来规则编号为0、5、10、15,当通过命令step 2把步长改为2后,则规则编号变成0、2、4、6。
使用undo step命令将步长恢复为缺省值后,设备将立刻按照缺省步长调整IPv4 ACL规则的编号。例如:IPv4 ACL 3001,步长为5,用户在0号规则和5号规则之间插入了1号规则和3号规则,4个规则的编号为0、1、3、5。如果此时使用undo step命令将步长恢复为缺省值,则IPv4 ACL规则编号变成0、5、10、15,步长仍然为5。
使用步长设定的好处是用户可以方便在规则之间插入新的规则。例如配置好了4个规则,规则编号为:0、5、10、15。此时如果用户希望能在第一条规则之后插入一条规则,则可以使用rule 1 xxxx命令在0和5之间插入一条编号为1的规则。
【举例】
# 把IPv4 ACL 3101的步长改为2。
<Sysname> system-view
[Sysname] acl number 3101
[Sysname-acl-adv-3101] step 2
【命令】
acl ipv6 number acl6-number [ match-order { config | auto } ]
undo acl ipv6 { number acl6-number | all }
【视图】
系统视图
【参数】
acl6-number:IPv6 ACL的序号,取值范围为2000~3999。
l 2000~2999:基本IPv6 ACL;
l 3000~3999:高级IPv6 ACL。
match-order:指定规则的匹配顺序。
l config:按照用户配置规则的先后顺序进行规则匹配;
l auto:按照“深度优先”的顺序进行规则匹配。
all:所有的IPv6 ACL。
【描述】
acl ipv6命令用来创建一个IPv6 ACL并进入相应视图。undo acl ipv6命令用来删除指定的IPv6 ACL。
缺省情况下,IPv6 ACL的匹配顺序为config。
用户也可以通过本命令修改一个已经存在的IPv6 ACL的匹配顺序,但必须在该IPv6 ACL中没有规则的时候修改,对已经有规则的IPv6 ACL是无法修改其匹配顺序的。
【举例】
# 创建基本IPv6 ACL 2000。
<Sysname> system-view
[Sysname] acl ipv6 number 2000
[Sysname-acl6-basic-2000]
【命令】
description text
undo description
【视图】
基本IPv6 ACL视图/高级IPv6 ACL视图。
【参数】
text:ACL的描述信息,长度为1~127个字符的字符串,区分大小写。
【描述】
description命令用来定义IPv6 ACL的描述信息,描述该IPv6 ACL的具体用途。undo description命令用来删除IPv6 ACL的描述信息。
【举例】
# 定义IPv6 ACL 2000的描述信息为“This acl is used in eth 0”。
<Sysname> system-view
[Sysname] acl ipv6 number 2000
[Sysname-acl6-basic-2000] description This acl is used in eth 0
# 定义IPv6 ACL 3000的描述信息为“This acl is used in eth 0”。
<Sysname> system-view
[Sysname] acl ipv6 number 3000
[Sysname-acl6-adv-3000] description This acl is used in eth 0
【命令】
display acl ipv6 { all | acl6-number }
【视图】
任意视图
【参数】
acl6-number:IPv6 ACL的序号,取值范围为2000~3999。
l 2000~2999:基本IPv6 ACL
l 3000~3999:高级IPv6 ACL
all:所有的IPv6 ACL。
【描述】
display acl ipv6命令用来显示配置的IPv6 ACL的信息。
【举例】
# 显示IPv6 ACL 2001的内容。
<Sysname> display acl ipv6 2001
Basic IPv6 ACL 2001, 1 rule,
ACL's step is 5
rule 0 permit source 1::2/128 (0 times matched)
rule 0 comment This rule is used in eth 1
表2-1 display acl ipv6命令显示信息描述表
字段 |
描述 |
Basic IPv6 ACL 2001 |
这个ACL属于基本IPv6 ACL,序号为2001 |
1 rule |
这个IPv6 ACL包含1条规则 |
ACL's step is 5 |
这个IPv6 ACL的规则序号的步长值为5 |
0 times matched |
这个规则匹配的次数为0,仅统计软件IPv6 ACL的匹配次数 |
rule 0 comment This rule is used in eth 1 |
IPv6 ACL规则0的描述信息为This rule is used in eth 1 |
【命令】
reset acl ipv6 counter { all | acl6-number }
【视图】
用户视图
【参数】
all:所有的IPv6 ACL。
acl6-number:IPv6 ACL的序号,取值范围是2000~3999。
l 2000~2999:基本IPv6 ACL
l 3000~3999:高级IPv6 ACL
【描述】
reset acl ipv6 counter命令用来清除IPv6 ACL的统计信息。
【举例】
# 清除IPv6 ACL 2001的统计信息。
<Sysname> reset acl ipv6 counter 2001
【命令】
rule [ rule-id ] { permit | deny } [ rule-string ]
undo rule rule-id [ fragment | logging | source | time-range ]*
【视图】
基本IPv6 ACL视图
【参数】
rule-id:IPv6 ACL规则编号,取值范围为0~65534。
deny:表示丢弃符合条件的报文。
permit:表示允许符合条件的报文通过。
rule-string:规则信息,可以由下表中的参数组合而成,具体参数说明如下表所示。
表2-2 IPv6 ACL规则信息
参数 |
类别 |
作用 |
说明 |
fragment |
分片信息 |
定义规则仅对非尾片分片报文有效 |
- |
logging |
日志操作 |
对符合条件的报文记录日志 |
日志内容包括: l IPv6 ACL规则的序号 l 报文通过或被丢弃 l IP承载的上层协议类型 l 源/目的地址 l 源/目的端口号 l 报文的数目 |
source { ipv6-address prefix-length | ipv6-address/prefix-length | any } |
源地址信息 |
指定IPv6 ACL规则的源地址信息 |
ipv6-address:报文的IPv6源地址 prefix-length:IPv6源地址前缀长度,取值范围1~128 any:代表任何源地址 |
time-range time-name |
时间段信息 |
指定规则生效的时间段 |
time-name:指定规则生效的时间段名称,字符串格式,长度为1~32 |
rule-id:IPv6 ACL规则编号,必须是一个已经存在的IPv6 ACL规则编号。如果不指定其他的参数,设备将这个IPv6 ACL规则完全删除。否则设备只删除该IPv6 ACL规则相应的信息。
fragment:删除编号对应的IPv6 ACL规则的对非尾片分片报文有效的设置。
logging:删除编号对应的IPv6 ACL规则的日志设置。
source:删除编号对应的IPv6 ACL规则的源地址部分的信息设置。
time-range:删除编号对应的IPv6 ACL规则的时间段设置。
& 说明:
S3610&S5510系列以太网交换机目前不支持配置logging参数。
【描述】
rule命令用来定义一个IPv6 ACL规则。undo rule命令用来删除一个IPv6 ACL规则或者规则的某些属性信息。
在删除一条规则时,需要指定该规则的编号。如果用户不知道规则的编号,可以使用display acl ipv6命令来查看。如果undo rule rule-id命令后不指定参数,将删除整个IPv6 ACL规则,否则,将只删除指定IPv6 ACL规则中相应的属性信息。
需要注意的是:
l 当匹配顺序为config时,如果指定编号对应的规则已经存在,系统将编辑该规则,没有编辑的部分仍旧保持原来的状态;当匹配顺序为auto时,用户不能编辑任何一个已经存在的规则,否则系统会提示错误信息。
l 在定义规则的时候,用户可以不指定规则编号,这时系统会从0开始,按照指定的步长,自动为规则分配一个大于现有最大编号的最小编号。假设现有规则的最大编号是28,编号步长是5,那么系统分配给新定义的规则的编号将是30。
l 新创建或用户编辑后的规则不能和已经存在的规则相同,否则创建或编辑不成功,系统提示该规则已经存在。
l 当匹配顺序为auto时,新创建的规则将按照“深度优先”的原则插入到已有的规则中,但是所有规则对应的编号不会改变。
【举例】
# 创建IPv6 ACL 2000,允许源地址为2030:5060::9050/64的报文通过。
<Sysname> system-view
[Sysname] acl ipv6 number 2000
[Sysname-acl6-basic-2000] rule permit source 2030:5060::9050/64
【命令】
rule [ rule-id ] { permit | deny } protocol [ rule-string ]
undo rule rule-id [ destination | destination-port | dscp | fragment | icmpv6-type | logging | source | source-port | time-range ]*
【视图】
高级IPv6 ACL视图
【参数】
rule-id:IPv6 ACL规则编号,取值范围为0~65534。
deny:表示丢弃符合条件的报文。
permit:表示允许符合条件的报文通过。
protocol:IP承载的协议类型。用数字表示时,取值范围为0~255;用名字表示时,可以选取gre、icmpv6、ipv6、ipv6-ah、ipv6-esp、ospf、tcp、udp。
rule-string:规则信息,可以由下表中的参数组合而成,具体参数说明如表2-3所示。
表2-3 ACL规则信息
参数 |
类别 |
作用 |
说明 |
source { source source-prefix | source/source-prefix | any } |
源地址信息 |
指定IPv6 ACL规则的源地址信息 |
source:报文的IPv6源地址 source-prefix:IPv6源地址前缀长度,取值范围1~128 any:代表任意IPv6源地址 |
destination { dest dest-prefix | dest/dest-prefix | any } |
目的地址信息 |
指定IPv6 ACL规则的目的地址信息 |
dest:报文的IPv6目的地址 dest-prefix:IPv6目的地址前缀长度,取值范围1~128 any:代表任意IPv6目的地址 |
dscp dscp |
报文优先级 |
DSCP优先级 |
dscp:取值范围为0~63;用文字表示时,可以选取af11、af12、af13、af21、af22、af23、af31、af32、af33、af41、af42、af43、cs1、cs2、cs3、cs4、cs5、cs6、cs7、default、ef |
logging |
日志操作 |
对符合条件的报文记录日志 |
日志内容包括: l IPv6 ACL规则的序号 l 报文通过或被丢弃 l IP承载的上层协议类型 l 源/目的地址 l 源/目的端口号 l 报文的数目 |
fragment |
分片信息 |
定义规则仅对非尾片分片报文有效 |
- |
time-range time-name |
时间段信息 |
指定规则生效的时间段 |
time-name:指定规则生效的时间段名称,字符串格式,长度为1~32 |
当协议类型选择为TCP或者UDP时,用户还可以定义如下信息。
表2-4 TCP/UDP特有的ACL规则信息
参数 |
类别 |
作用 |
说明 |
source-port operator port1 [ port2 ] |
源端口 |
定义UDP/TCP报文的源端口信息 |
operator为操作符,取值可以为lt(小于)、gt(大于)、eq(等于)、neq(不等于)或者range(在范围内,包括边界值)。只有操作符range需要两个端口号做操作数,其他的只需要一个端口号做操作数。 port1、port2:TCP或UDP的端口号,用名字或数字表示,数字的取值范围为0~65535 |
destination-port operator port1 [ port2 ] |
目的端口 |
定义UDP/TCP报文的目的端口信息 |
当TCP或UDP的端口号用名字表示时,用户还可以定义如下信息。
表2-5 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(139)、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) |
当协议类型选择为ICMP时,用户还可以定义如下信息。
表2-6 ICMP特有的规则信息
参数 |
类别 |
作用 |
说明 |
icmpv6-type icmp-type icmp-code |
ICMP报文的消息类型和消息码信息 |
指定规则的ICMP报文的消息类型和消息码信息 |
icmp-type:ICMP消息类型,取值范围为0~255 icmp-code:ICMP的消息码,取值范围为0~255 |
几种常见的ICMP消息如下表所示。
表2-7 ICMP消息
名称 |
ICMP TYPE |
ICMP CODE |
redirect |
Type=137 |
Code=0 |
echo-request |
Type=128 |
Code=0 |
echo-reply |
Type=129 |
Code=0 |
err-Header-field |
Type=4 |
Code=0 |
frag-time-exceeded |
Type=3 |
Code=1 |
hop-limit-exceeded |
Type=3 |
Code=0 |
host-admin-prohib |
Type=1 |
Code=1 |
host-unreachable |
Type=1 |
Code=3 |
neighbor-advertisement |
Type=136 |
Code=0 |
neighbor-solicitation |
Type=135 |
Code=0 |
network-unreachable |
Type=1 |
Code=0 |
packet-too-big |
Type=2 |
Code=0 |
port-unreachable |
Type=1 |
Code=4 |
router-advertisement |
Type=134 |
Code=0 |
router-solicitation |
Type=133 |
Code=0 |
unknown-ipv6-opt |
Type=4 |
Code=2 |
unknown-next-hdr |
Type=4 |
Code=1 |
rule-id:IPv6 ACL规则编号,必须是一个已经存在的IPv6 ACL规则编号。如果不指定其他参数,设备将这个IPv6 ACL规则完全删除。否则设备只删除该IPv6 ACL规则相应的信息。
destination:删除编号对应的IPv6 ACL规则的目的地址的信息设置。
destination-port:删除编号对应的IPv6 ACL规则的目的端口部分的信息设置,本参数仅在规则定义的协议是TCP或者UDP的情况下有效。
dscp:删除编号对应的IPv6 ACL规则的DSCP的相关设置。
fragment:删除编号对应的IPv6 ACL规则的对非尾片分片报文有效的设置。
icmpv6-type:删除编号对应的IPv6 ACL规则的ICMP消息类型和消息码部分的信息设置,本参数仅在规则定义的协议是ICMP的情况下有效。
logging:删除编号对应的IPv6 ACL规则的日志设置。
source:删除编号对应的IPv6 ACL规则的源地址部分的信息设置。
source-port:删除编号对应的IPv6 ACL规则的源端口部分的信息设置,本参数仅在规则定义的协议是TCP或者UDP的情况下有效。
time-range:删除编号对应的IPv6 ACL规则的时间段设置。
& 说明:
l 对于指定的协议号参数,只能匹配IPv6报文头部的Next Header字段,而不是真正的四层协议号。
l S3610&S5510系列以太网交换机目前不支持配置logging参数。
【描述】
rule命令用来定义一个IPv6 ACL规则。undo rule命令用来删除一个IPv6 ACL规则或者规则的某些属性信息。
在删除一条规则时,需要指定该规则的编号。如果用户不知道规则的编号,可以使用display acl ipv6命令来查看。如果undo rule rule-id命令后不指定参数,将删除整个IPv6 ACL规则,否则,将只删除指定IPv6 ACL规则中相应的属性信息。
需要注意的是:
l 当匹配顺序为config时,如果指定编号对应的规则已经存在,系统将编辑该规则,没有编辑的部分仍旧保持原来的状态;当匹配顺序为auto时,用户不能编辑任何一个已经存在的规则,否则系统会提示错误信息。
l 在定义规则的时候,用户可以不指定规则编号,这时系统会从0开始,按照指定的步长,自动为规则分配一个大于现有最大编号的最小编号。假设现有规则的最大编号是28,编号步长是5,那么系统分配给新定义的规则的编号将是30。
l 新创建或用户编辑后的规则不能和已经存在的规则相同,否则创建或编辑不成功,系统提示该规则已经存在。
l 当匹配顺序为auto时,新创建的规则将按照“深度优先”的原则插入到已有的规则中,但是所有规则对应的编号不会改变。
【举例】
# 创建IPv6 ACL 3000,允许源地址为2030:5060::9050/64的TCP报文通过。
<Sysname> system-view
[Sysname] acl ipv6 number 3000
[Sysname-acl6-adv-3000] rule permit tcp source 2030:5060::9050/64
【命令】
rule rule-id comment text
undo rule rule-id comment
【视图】
基本IPv6 ACL视图/高级IPv6 ACL视图
【参数】
rule-id:IPv6 ACL规则编号,取值范围为0~65534。
text:ACL规则的描述信息,为1~127个字符的字符串,区分大小写。
【描述】
rule comment命令用来定义ACL规则的描述信息,描述该规则的用途、属性等提示信息。undo rule comment命令用来删除ACL规则的描述信息。
缺省情况下,规则没有描述信息。
需要注意的是:
l 在使用rule comment命令为规则定义描述信息时,该规则必须存在。
l 在使用rule comment命令时,如果指定规则没有描述信息,则为其添加描述信息;如果指定规则已经存在描述信息,则修改其为新的描述信息。
【举例】
# 创建一条规则,并为其定义一个描述信息“This rule is used in eth 1”。
<Sysname> system-view
[Sysname] acl ipv6 number 2000
[Sysname-acl6-basic-2000] rule 0 permit source 2030:5060::9050/64
[Sysname-acl6-basic-2000] rule 0 comment This rule is used in eth 1
【命令】
step step-value
undo step
【视图】
基本IPv6 ACL视图/高级IPv6 ACL视图
【参数】
step-value:IPv6 ACL规则序号的步长值,取值范围为1~20。
【描述】
step命令用来为一个IPv6 ACL规则组中的规则序号指定一个步长。undo step命令用来恢复缺省情况。
缺省情况下,步长为5。
步长的含义是:设备自动为IPv6 ACL规则分配编号的时候,每个IPv6 ACL的规则编号之间的差值。例如如果步长设定为5,规则编号分配是按照0、5、10、15……这样的规律分配的。
当步长改变后,IPv6 ACL下面的规则编号会自动重新排列。例如,原来规则编号为0、5、10、15,当通过命令step 2把步长改为2后,则规则编号变成0、2、4、6。
使用undo step命令将步长恢复为缺省值后,设备将立刻按照缺省步长调整IPv6 ACL规则的编号。例如:IPv6 ACL 3001,步长为5,用户在0号规则和5号规则之间插入了1号规则和3号规则,4个规则的编号为0、1、3、5。如果此时使用undo step命令将步长恢复为缺省值,则IPv6 ACL规则编号变成0、5、10、15,步长仍然为5。
使用步长设定的好处是用户可以方便在规则之间插入新的规则。例如配置好了4个规则,规则编号为:0、5、10、15。此时如果用户希望能在第一条规则之后插入一条规则,则可以使用rule 1 xxxx命令在0和5之间插入一条编号为1的规则。
【举例】
# 把IPv6 ACL 3101的步长改为2。
<Sysname> system-view
[Sysname] acl ipv6 number 3101
[Sysname-acl6-adv-3101] step 2
【命令】
display flow-template { user-defined [ flow-template-name ] | interface [ interface-type interface-number ] }
【视图】
任意视图
【参数】
flow-template-name:流模板名称,字符串格式,长度为1~31。
interface-type interface-number:端口类型和端口编号。
【描述】
display flow-template命令用于显示流模板的配置信息。
如果不指定flow-template-name参数,则显示所有用户自定义流模板的配置信息;如果不指定interface-type和interface-number参数,则显示所有应用了流模板的端口上的流模板配置信息。
【举例】
# 显示所有用户自定义流模板的配置信息。
<Sysname> display flow-template user-defined
user-defined flow template: basic
name:f1, index:1, total reference counts:1
fields: ip-protocol fragments ip-precedence
user-defined flow template: extend
name:f2, index:2, total reference counts:0
fields: start 22 33 l2 55 66
表3-1 display flow-template user-defined命令显示信息描述表
字段 |
描述 |
user-defined flow template |
用户自定义流模板的类型,分为标准型和扩展型 |
name |
流模板的名称 |
index |
流模板索引 |
total reference counts |
流模板总的应用次数 |
fields |
流模板中所包含的字段 |
# 显示流模板在端口上应用的情况。
<Sysname> display flow-template interface
Interface: Ethernet1/0/1
user-defined flow template: basic
name:f1, index:1, total reference counts:1
fields: ip-protocol fragments ip-precedence
Interface: Ethernet1/0/2
user-defined flow template: basic
name:f3, index:3, total reference counts:1
fields: tos
表3-2 display flow-template interface命令显示信息描述表
字段 |
描述 |
Interface |
应用流模板的端口 |
user-defined flow template |
用户自定义流模板的类型,分为标准型和扩展型 |
name |
流模板的名称 |
index |
流模板索引 |
total reference counts |
流模板总的应用次数 |
fields |
流模板中所包含的字段 |
【命令】
flow-template flow-template-name
undo flow-template
【视图】
以太网端口视图/端口组视图
【参数】
flow-template-name:流模板名称,字符串格式,长度为1~31。
【描述】
flow-template命令用来在端口上应用流模板。undo flow-template命令用来取消端口上应用的流模板。
需要注意的是,一个端口上只能应用一个流模板。
& 说明:
l 用户自定义ACL需要和扩展型用户自定义流模板配合使用,当某一端口应用了扩展型流模板后,不能再应用包含基本或高级ACL的策略。
l 在端口上应用用户自定义流模板之前,必须先配置一个用户自定义流模板;一个端口上只能应用一个流模板。
l 在端口上应用流模板时,请关闭如下功能:802.1x功能、集群功能(NDP、NTDP、HABP、Cluster)、DHCP Snooping、端口隔离、MAC+IP端口绑定、灵活QinQ、Voice VLAN,否则流模板将不能成功应用。同时建议用户不要在端口上应用流模版后使能这些功能。
【举例】
# 在端口Ethernet 1/0/1上应用流模板f1。
<Sysname> system-view
[Sysname] interface Ethernet 1/0/1
[Sysname-Ethernet1/0/1] flow-template f1
# 取消端口Ethernet 1/0/1上应用的流模板。
[Sysname-Ethernet1/0/1] undo flow-template
【命令】
flow-template flow-template-name basic { sip | dip | sipv6 | dipv6 | smac | dmac | sport | dport | ethernet-protocol | ip-protocol | ipv6-protocol | custom-cos | custom-vlan-id | icmp-type | icmp-code | fragments | ipv6-fragment | tcp-flag | tos | dscp | ipv6-dscp | ip-precdence | icmpv6-type | icmpv6-code | service-cos | service-vlan-id } *
undo flow-template { all | name flow-template-name }
【视图】
系统视图
【参数】
flow-template-name:流模板名称,字符串格式,长度为1~31。
basic:配置标准流模板。
sip:源IP地址。
dip:目的IP地址。
sipv6:源IPv6地址。
dipv6:目的IPv6地址。
smac:源MAC地址。
dmac:目的MAC地址。
sport:源四层端口。
dport:目的四层端口。
ethernet-protocol:二层协议类型。
ip-protocol:三层协议类型。
ipv6-protocol:IPv6三层协议类型。
icmp-type:ICMP协议类型。
icmp-code:ICMP协议编码。
fragments:分片标记。
ipv6-fragments:IPv6分片标记。
tcp-flag:TCP标记。
tos:服务类型。
dscp:差分服务编码点。
ipv6-dscp:IPv6差分服务编码点。
ip-precdence:IP优先级。
icmpv6-type:IPv6 ICMP协议类型。
icmpv6-code:IPv6 ICMP协议编码。
custom-cos: 用户网络802.1p服务优先级。
custom-vlan-id: 用户网络VLAN ID。
service-cos: 运营商网络802.1p服务优先级。
service-vlan-id: 运营商网络VLAN ID。
all:所有的流模板。
【描述】
flow-template命令用来创建标准型流模板。undo flow-template命令用来删除指定的标准型流模板。
需要注意的是,使用参数all删除所有流模板时,不能有处于应用状态的流模板,否则将不能成功删除。
【举例】
# 配置标准型模板。
<Sysname> system-view
[Sysname] flow-template f1 basic dip smac ip-protocol tcp-flag service-vlan-id
# 删除名字为f1的流模板。
[Sysname] undo flow-template name f1
# 删除所有的流模板。
[Sysname] undo flow-template all
【命令】
flow-template flow-template-name extend { [ start ] offset-max-value length-max-value | l2 offset-max-value length-max-value | l4 offset-max-value length-max-value | ipv4 offset-max-value length-max-value | ipv6 offset-max-value length-max-value }*
undo flow-template { all | name flow-template-name }
【视图】
系统视图
【参数】
flow-template-name:流模板名称,字符串格式,长度为1~31。
extend:配置扩展流模板。
start:从报文头开始偏移。
l2:从L2帧头开始偏移。
ipv4:从IPv4报文头开始偏移。
ipv6:从IPv6报文头开始偏移。
l4:从L4报文头开始偏移。
offset-max-value:相对偏移最大值。
length-max-value:比较长度最大值。
all:所有的流模板。
【描述】
flow-template exten命令用来创建扩展型流模板。undo flow-template命令用来删除指定的扩展型流模板。
需要注意的是:
l 对于扩展型流模板,如不指定类型,则缺省情况为start(从报文头开始偏移)。
l 使用参数all删除所有流模板时,不能有处于应用状态的流模板,否则将不能成功删除。
【举例】
# 创建扩展型流模板。
<Sysname> system-view
[Sysname] flow-template f2 extend l2 3 10 ipv4 5 8
# 删除名字为f2的流模板。
[Sysname] undo flow-template name f2
# 删除所有的流模板。
[Sysname] undo flow-template all
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!