25-ACL操作
本章节下载 (317.08 KB)
目 录
ACL(Access Control List,访问控制列表)主要用来实现流识别功能。网络设备为了过滤数据包,需要配置一系列的匹配规则,以识别需要过滤的报文。在识别出特定的报文之后,才能根据预先设定的策略允许或禁止相应的数据包通过。
ACL通过一系列的匹配条件对数据包进行分类,这些条件可以是数据包的源地址、目的地址、端口号等。
由ACL定义的数据包匹配规则,可以被其它需要对流量进行区分的功能引用,如QoS中流分类规则的定义。
根据应用目的,可将ACL分为下面几种:
l 基本ACL:只根据三层源IP地址制定规则。
l 高级ACL:根据数据包的源IP地址信息、目的IP地址信息、IP承载的协议类型、协议特性等三、四层信息制定规则。
l 二层ACL:根据源MAC地址、目的MAC地址、VLAN优先级、二层协议类型等二层信息制定规则。
l 用户自定义ACL:以数据包的头部为基准,指定从第几个字节开始进行“与”操作,将从报文提取出来的字符串和用户定义的字符串进行比较,找到匹配的报文。
交换机中ACL可以直接下发到交换机的硬件中用于数据转发过程中报文的过滤和流分类。此时一条ACL中多个规则的匹配顺序是由交换机的硬件决定的,用户即使在定义ACL时配置了匹配顺序,该匹配顺序也不起作用。
ACL直接下发到硬件的情况包括:交换机实现QoS功能时引用ACL、通过ACL过滤转发数据等。
交换机也使用ACL来对由软件处理的报文进行过滤和流分类。此时ACL规则的匹配顺序有两种:config(指定匹配该规则时按用户的配置顺序)和auto(指定匹配该规则时系统自动排序,即按“深度优先”的顺序)。这种情况下用户可以在定义ACL的时候指定一条ACL中多个规则的匹配顺序。用户一旦指定某一条ACL的匹配顺序,就不能再更改该顺序。只有把该列表中所有的规则全部删除后,才能重新指定其匹配顺序。
ACL被软件引用的情况包括:路由策略引用ACL、对登录用户进行控制时引用ACL等。
ACL可能会包含多个规则,而每个规则都指定不同的报文范围。这样,在匹配报文时就会出现匹配顺序的问题。
ACL支持两种匹配顺序:
l 配置顺序:根据配置顺序匹配ACL规则。
l 自动排序:根据“深度优先”规则匹配ACL规则。
“深度优先”顺序的判断原则如下:
(1) 先比较规则的协议范围。IP协议的范围为1~255,其他协议的范围就是自己的协议号;协议范围小的优先;
(2) 再比较源IP地址范围。源IP地址范围小(掩码长)的优先;
(3) 然后比较目的IP地址范围。目的IP地址范围小(掩码长)的优先;
(4) 最后比较四层端口号(TCP/UDP端口号)范围。四层端口号范围小的优先;
如果规则A与规则B按照原有匹配顺序进行配置时,协议范围、源IP地址范围、目的IP地址范围、四层端口号范围完全相同,并且其它的元素个数相同,将按照加权规则进行排序。加权规则如下:
l 设备为每个元素设定一个固定的权值,最终的匹配顺序由各个元素的权值和元素取值来决定。各个元素自身的权值从大到小排列:DSCP、ToS、ICMP、established、precedence、fragment。
l 设备以一个固定权值依次减去规则各个元素自身的权值,剩余权值越小的规则越优先。
l 如果各个规则中元素个数、元素种类完全相同,则这些元素取值的累加和越小越优先。
基于时间段的ACL使用户可以区分时间段对报文进行ACL控制。
ACL中的每条规则都可选择一个时间段。如果规则引用的时间段未配置,则系统给出提示信息,并允许这样的规则创建成功。但是规则不能立即生效,直到用户配置了引用的时间段,并且系统时间在指定时间段范围内才能生效。如果用户手工删除ACL规则引用的时间段,则在ACL规则定时器刷新后,该规则将失效。
H3C S3600系列以太网交换机支持的ACL如下:
l 基本ACL
l 高级ACL
l 二层ACL
l 用户自定义ACL
对时间段的配置有如下内容:配置周期时间段和绝对时间段。配置周期时间段采用的是每周的周几的形式,配置绝对时间段采用从起始时间到结束时间的形式。
& 说明:
H3C S3600系列以太网交换机支持的绝对时间段范围从1970/1/1 00:00起至2100/12/31 24:00结束。
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建一个时间段 |
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 } |
必选 |
需要注意的是:
如果一个时间段只定义了周期时间段,则只有系统时钟在该周期时间段内,该时间段才进入激活状态。如果一个时间段下定义了多个周期时间段,则这些周期时间段之间是“或”的关系。
如果一个时间段只定义了绝对时间段,则只有系统时钟在该绝对时间段内,该时间段才进入激活状态。如果一个时间段下定义了多个绝对时间段,则这些绝对时间段之间是“或”的关系。
如果一个时间段同时定义了绝对时间段和周期时间段,则只有同时满足绝对时间段和周期时间段的定义时,该时间段才进入激活状态。例如,一个时间段定义了绝对时间段:从2004年1月1日0点0分到2004年12月31日23点59分,同时定义了周期时间段:每周三的12:00到14:00。该时间段只有在2004年内每周三的12:00到14:00才进入激活状态。
配置绝对时间段时,如果不配置开始日期,时间段就是从系统支持的最早时间起到配置的结束日期为止。如果不配置结束日期,时间段就是从配置的开始日期起到2100/12/31 23:59为止。
# 配置周期时间段,取值为周一到周五每天8:00到18:00。
<H3C> system-view
[H3C] time-range test 8:00 to 18:00 working-day
[H3C] display time-range test
Current time is 13:27:32 4/16/2005 Saturday
Time-range : test ( Inactive )
08:00 to 18:00 working-day
# 配置绝对时间段,取值为2000年1月28日15:00起至2004年1月28日15:00结束。
<H3C> system-view
[H3C] time-range test from 15:00 1/28/2000 to 15:00 1/28/2004
[H3C] display time-range test
Current time is 13:30:32 4/16/2005 Saturday
Time-range : test ( Inactive )
From 15:00 Jan/28/2000 to 15:00 Jan/28/2004
基本ACL只根据三层源IP制定规则,对数据包进行相应的分析处理。
基本ACL的序号取值范围为2000~2999。
如果要配置带有时间段参数的规则,则需要定义相应的时间段。定义时间段的配置请参见1.2 配置时间段。
确定了规则中源IP地址信息的取值。
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建或进入基本ACL视图 |
acl number acl-number [ match-order { config | auto } ] |
缺省情况下匹配顺序为config |
定义ACL规则 |
rule [ rule-id ] { permit | deny } [ fragment | source { sour-addr sour-wildcard | any } | time-range time-name ]* |
必选 |
定义ACL的描述信息 |
description text |
可选 |
对于在定义ACL规则时指定编号的情况:
l 当匹配顺序为config时,如果指定编号对应的规则已经存在,系统将编辑该规则,没有编辑的部分仍旧保持原来的状态;当匹配顺序为auto时,用户不能编辑任何一个已经存在的规则,否则系统会提示错误信息。
l 如果指定编号对应的规则不存在,用户将创建并定义一个新的规则。
l 编辑后或新创建的规则不能和已经存在的规则内容完全相同,否则会导致编辑或创建不成功,系统会提示该规则已经存在。
在定义ACL规则时如果不指定编号,用户将创建并定义一个新规则,设备将自动为这个规则分配一个编号。
# 配置一个ACL 2000,禁止源地址为1.1.1.1的报文通过。
<H3C> system-view
[H3C] acl number 2000
[H3C-acl-basic-2000] rule deny source 1.1.1.1 0
[H3C-acl-basic-2000] display acl 2000
Basic ACL 2000, 1 rule
Acl's step is 1
rule 0 deny source 1.1.1.1 0
高级ACL可以使用数据包的源地址信息、目的地址信息、IP承载的协议类型、针对协议的特性,例如TCP或UDP的源端口、目的端口,ICMP协议的类型、code等内容定义规则。
高级ACL序号取值范围3000~3999(ACL 3998与3999是系统为集群管理预留的编号,用户无法配置)。
高级ACL支持对三种报文优先级的分析处理:ToS(Type Of Service,服务类型)优先级、IP优先级和DSCP(Differentiated Services Codepoint Priority,差分服务编码点优先级)。
用户可以利用高级ACL定义比基本ACL更准确、更丰富、更灵活的规则。
如果要配置带有时间段参数的规则,则需要定义相应的时间段。定义时间段的配置请参见1.2 配置时间段。
确定了规则中源IP地址信息、目的IP信息、IP承载的协议类型、针对协议的特性等参数的取值。
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建或进入高级ACL视图 |
acl number acl-number [ match-order { config | auto } ] |
缺省情况下匹配顺序为config |
定义ACL规则 |
rule [ rule-id ] { permit | deny } rule-string |
必选 |
定义ACL规则的注释字符串 |
rule rule-id comment text |
可选 |
定义ACL的描述信息 |
description text |
可选 |
rule-string:ACL规则信息,可以由表1-4中的参数组合而成,具体参数说明如表1-4所示。ACL规则信息中必须首先配置protocol参数,然后才能配置其他参数。
参数 |
类别 |
作用 |
说明 |
protocol |
协议类型 |
IP承载的协议类型 |
用数字表示时取值范围为1~255 用名字表示时,可以选取GRE、ICMP、IGMP、IP、IPinIP、OSPF、TCP、UDP |
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 |
分片信息 |
定义规则仅对非首片分片报文有效 |
- |
time-range time-name |
时间段信息 |
指定规则生效的时间段 |
- |
如果选择dscp关键字,除了直接输入数值0~63外,用户也可输入如表1-5所示的关键字。
关键字 |
DSCP值(十进制) |
DSCP值(二进制) |
ef |
46 |
101110 |
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 |
cs1 |
8 |
001000 |
cs2 |
16 |
010000 |
cs3 |
24 |
011000 |
cs4 |
32 |
100000 |
cs5 |
40 |
101000 |
cs6 |
48 |
110000 |
cs7 |
56 |
111000 |
be (default) |
0 |
000000 |
如果选择precedence关键字,除了直接输入数值0~7外,用户也可输入如表1-6所示的关键字。
关键字 |
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-7所示的关键字。
关键字 |
ToS(十进制) |
ToS(二进制) |
normal |
0 |
0000 |
min-monetary-cost |
1 |
0001 |
max-reliability |
2 |
0010 |
max-throughput |
4 |
0100 |
min-delay |
8 |
1000 |
当协议类型选择为TCP或者UDP时,用户还可以定义如下信息。
参数 |
类别 |
作用 |
说明 |
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建立连接的第一个SYN报文有效 |
TCP协议特有的参数 |
当TCP或UDP的端口号用名字表示时,用户还可以定义如下信息。
表1-9 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) |
& 说明:
H3C S3600系列以太网交换机在端口上应用高级ACL时,只支持配置operator取值为eq的情况。
当协议类型选择为ICMP时,用户还可以定义如下信息。
参数 |
类别 |
作用 |
说明 |
icmp-type icmp-type icmp-code |
ICMP报文的类型和消息码信息 |
指定规则中ICMP报文的类型和消息码信息 |
icmp-type:ICMP消息类型,取值为0~255 icmp-code:ICMP的消息码,取值为0~255 |
当协议类型选择为ICMP时,用户也可以直接在icmp-type参数后输入ICMP的消息名称。在几种常见的ICMP消息如表1-11所示。
名称 |
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 |
对于在定义ACL规则时指定编号的情况:
l 当匹配顺序为config时,如果指定编号对应的规则已经存在,系统将编辑该规则,没有编辑的部分仍旧保持原来的状态;当匹配顺序为auto时,用户不能编辑任何一个已经存在的规则,否则系统会提示错误信息。
l 如果指定编号对应的规则不存在,用户将创建并定义一个新的规则。
l 编辑后或新创建的规则不能和已经存在的规则内容完全相同,否则会导致编辑或创建不成功,系统会提示该规则已经存在。
在定义ACL规则时如果不指定编号,用户将创建并定义一个新规则,设备将自动为这个规则分配一个编号。
# 配置ACL 3000,允许从129.9.0.0网段的主机向202.38.160.0网段的主机发送的端口号为80的TCP报文通过。
<H3C> system-view
[H3C] acl number 3000
[H3C-acl-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
[H3C-acl-adv-3000] display acl 3000
Advanced ACL 3000, 1 rule
Acl's step is 1
rule 0 permit tcp source 129.9.0.0 0.0.255.255 destination 202.38.160.0 0.0.0.255 destination-port eq www
二层ACL根据源MAC地址、目的MAC地址、VLAN优先级、二层协议类型等二层信息制定规则,对数据进行相应处理。
二层ACL的序号取值范围为4000~4999。
如果要配置带有时间段参数的规则,则需要定义相应的时间段。定义时间段的配置请参见1.2 配置时间段。
确定了规则中源MAC地址、目的MAC地址、VLAN优先级、二层协议类型等参数的取值。
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建或进入二层ACL视图 |
acl number acl-number |
必选 |
定义ACL规则 |
rule [ rule-id ] { permit | deny } rule-string |
必选 |
定义ACL规则的注释字符串 |
rule rule-id comment text |
可选 |
定义ACL的描述信息 |
description text |
可选 |
rule-string:ACL规则信息,可以由表1-13中的参数组合而成,具体参数说明如表1-13所示。
参数 |
类别 |
作用 |
说明 |
format-type |
链路层封装类型 |
定义规则中的链路层封装类型 |
format-type:取值可以为802.3/802.2、802.3、ether_ii、snap |
lsap lsap-code lsap-wildcard |
lsap字段 |
定义规则中的lsap字段 |
lsap-code:数据帧的封装格式,16比特的十六进制数 lsap-wildcard:Lsap值的掩码, 16比特的十六进制数,用于指定屏蔽位 |
source { source-addr source-mask | vlan-id }* |
源MAC信息 |
定义规则的源MAC地址范围 |
source-addr:源MAC地址,格式为H-H-H source-mask:源MAC地址的掩码,格式为H-H-H vlan-id:源VLAN ID,取值范围1~4094 |
dest dest-addr dest-mask |
目的MAC信息 |
定义规则的目的MAC地址范围 |
dest-addr:目的MAC地址,格式为H-H-H dest-mask:目的MAC地址的掩码,格式为H-H-H |
cos vlan-pri |
优先级 |
定义规则的802.1p优先级 |
vlan-pri:取值范围为0~7 |
time-range time-name |
时间段信息 |
指定规则生效的时间段 |
time-name:指定规则生效的时间段名称,字符串格式,长度为1~32 |
type protocol-type protocol-mask |
以太网帧的协议类型 |
定义以太网帧的协议类型 |
protocol-type:协议类型 protocol-mask:协议类型掩码 |
& 说明:
l H3C S3600系列以太网交换机在端口上应用二层ACL时,不支持配置format-type参数。
l 如果用户在规则中配置了lsap参数,此规则可以在端口上应用,但不会生效。
如果选择cos关键字,除了直接输入数值0~7外,用户也可输入如表1-14所示的关键字。
关键字 |
CoS(十进制) |
CoS(二进制) |
best-effort |
0 |
000 |
background |
1 |
001 |
spare |
2 |
010 |
excellent-effort |
3 |
011 |
controlled-load |
4 |
100 |
video |
5 |
101 |
voice |
6 |
110 |
network-management |
7 |
111 |
对于在定义ACL规则时指定编号的情况:
l 如果指定编号对应的规则已经存在,用户将编辑该规则,规则中编辑后的部分将覆盖原来的内容,未被编辑的部分保持不变;
l 如果指定编号对应的规则不存在,用户将创建并定义一个新的规则。
l 编辑后或新创建的规则不能和已经存在的规则内容完全相同,否则会导致编辑或创建不成功,系统会提示该规则已经存在。
在定义ACL规则时如果不指定编号,用户将创建并定义一个新规则,设备将自动为这个规则分配一个编号。
# 配置ACL 4000,禁止从MAC地址000d-88f5-97ed发送到MAC地址011-4301-991e且802.1p优先级为3的报文通过。
<H3C> system-view
[H3C] acl number 4000
[H3C-acl-ethernetframe-4000] rule deny cos 3 source 000d-88f5-97ed ffff-ffff-ffff dest 0011-4301-991e ffff-ffff-ffff
[H3C-acl-ethernetframe-4000] display acl 4000
Ethernet frame ACL 4000, 1 rule
Acl's step is 1
rule 0 deny cos excellent-effort source 000d-88f5-97ed ffff-ffff-ffff dest 0011-4301-991e ffff-ffff-ffff
用户自定义ACL以数据包的头部为基准,指定从第几个字节开始进行“与”操作,将从报文提取出来的字符串和用户定义的字符串进行比较,找到匹配的报文,然后进行相应的处理。
用户自定义ACL的序号取值范围为5000~5999。
如果要配置带有时间段参数的规则,则需要定义相应的时间段。定义时间段的配置请参见1.2 配置时间段。
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建或进入用户自定义ACL视图 |
acl number acl-number |
必选 |
定义ACL规则 |
rule [ rule-id ] { permit | deny } [ rule-string rule-mask offset ] &<1-8> [ time-range name ] |
必选 |
定义ACL的描述信息 |
description text |
可选 |
定义ACL规则的注释字符串 |
rule rule-id comment text |
可选 |
& 说明:
用户在设置偏移量offset的数值时一定要考虑如下情况:
l 交换机内部处理的报文都带有VLAN tag,1层VLAN tag占4个字节。
l 如果没有使能VLAN VPN功能,交换机内部处理的报文都带有1层VLAN tag。
l 如果某一端口上使能了VLAN VPN功能,交换机会给所有端口接收的报文再打1层VLAN tag,无论报文原来是否带有VLAN tag,报文都将具有2层VLAN tag。
对于在定义ACL规则时指定编号的情况:
l 如果指定编号对应的规则已经存在,用户将编辑该规则,规则中编辑后的部分将覆盖原来的内容,未被编辑的部分保持不变;
l 如果指定编号对应的规则不存在,用户将创建并定义一个新的规则。
l 编辑后或新创建的规则不能和已经存在的规则内容完全相同,否则会导致编辑或创建不成功,系统会提示该规则已经存在。
在定义ACL规则时如果不指定编号,用户将创建并定义一个新规则,设备将自动为这个规则分配一个编号。
# 配置ACL 5001,禁止所有的TCP报文通过(假设端口上没有启动VLAN VPN功能)。
<H3C> system-view
[H3C] time-range t1 18:00 to 23:00 sat
[H3C] acl number 5001
[H3C-acl-user-5001] rule 25 deny 06 ff 27 time-range t1
[H3C-acl-user-5001] display acl 5001
User defined ACL 5001, 1 rules
Acl's step is 1
rule 25 deny 06 ff 27 time-range t1 (Inactive)
在端口上应用ACL可以实现报文过滤的功能,用户可在每个端口上对报文进行过滤。
在端口上应用ACL之前需要首先定义ACL。定义ACL的配置请参见1.3 定义基本ACL,1.4 定义高级ACL,1.5 定义二层ACL,1.6 定义用户自定义ACL。
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入以太网端口视图 |
interface interface-type interface-number |
- |
在端口上应用ACL |
packet-filter { inbound | outbound } acl-rule |
必选 |
用户在端口上应用的ACL可以是多种ACL的组合。组合方式说明如下。
组合方式 |
acl-rule的形式 |
单独应用一个IP型ACL中所有规则 |
ip-group acl-number |
单独应用一个IP型ACL中一条规则 |
ip-group acl-number rule rule-id |
单独应用一个Link型ACL中所有规则 |
link-group acl-number |
单独应用一个Link型ACL中一条规则 |
link-group acl-number rule rule-id |
单独应用一个用户自定义ACL中所有规则 |
user-group acl-number |
单独应用一个用户自定义ACL中一条规则 |
user-group acl-number rule rule-id |
同时应用IP型ACL中一条规则和一个Link型ACL的一条规则 |
ip-group acl-number rule rule-id link-group acl-number rule rule-id |
# 在GigabitEthernet 1/1/1的入方向上应用ACL 2100进行包过滤。
<H3C> system-view
[H3C] interface gigabitethernet 1/1/1
[H3C-GigabitEthernet1/1/1] packet-filter inbound ip-group 2100
在完成上述配置后,在任意视图下执行display命令可以显示ACL配置后的运行情况,通过查看显示信息验证配置的效果。
操作 |
命令 |
说明 |
显示配置的ACL规则 |
display acl { all | acl-number } |
可选 display命令可以在任意视图下执行 |
显示时间段 |
display time-range { all | time-name } |
|
显示包过滤的应用信息 |
display packet-filter { interface interface-type interface-number | unitid unit-id } |
通过基本ACL,实现在每天8:00~18:00时间段内对源IP为10.1.1.1主机发出报文的过滤(该主机从交换机的GigabitEthernet1/1/1接入)。
& 说明:
以下的配置,只列出了与ACL配置相关的命令。
(1) 定义时间段
# 定义8:00至18:00的周期时间段。
<H3C> system-view
[H3C] time-range test 8:00 to 18:00 daily
(2) 定义源IP为10.1.1.1的ACL
# 进入ACL2000视图。
[H3C] acl number 2000
# 定义源IP为10.1.1.1的访问规则。
[H3C-acl-basic-2000] rule 1 deny source 10.1.1.1 0 time-range test
[H3C-acl-basic-2000] quit
(3) 在端口上应用ACL
# 在端口上应用ACL 2000。
[H3C] interface gigabitethernet1/1/1
[H3C-GigabitEthernet1/1/1] packet-filter inbound ip-group 2000
公司企业网通过Switch的端口实现各部门之间的互连。研发部门由GigabitEthernet1/1/1接入交换机,工资查询服务器的地址为192.168.1.2。要求正确配置ACL,禁止研发部门在工作日8:00至18:00访问工资服务器。
& 说明:
以下的配置,只列出了与ACL配置相关的命令。
(1) 定义时间段
# 定义8:00至18:00的周期时间段。
<H3C> system-view
[H3C] time-range test 8:00 to 18:00 working-day
(2) 定义到工资服务器的ACL
# 进入ACL3000视图。
[H3C] acl number 3000
# 定义其它部门到工资服务器的访问规则。
[H3C-acl-adv-3000] rule 1 deny ip destination 192.168.1.2 0 time-range test
[H3C-acl-adv-3000] quit
(3) 在端口上应用ACL
# 在端口上应用ACL 3000。
[H3C] interface gigabitethernet1/1/1
[H3C-GigabitEthernet1/1/1] packet-filter inbound ip-group 3000
通过二层ACL,实现在每天8:00~18:00时间段内对源MAC为000f-e20f-0101目的MAC为000f-e20f-0303报文的过滤。该二层ACL在GigabitEthernet1/1/1端口上应用。
& 说明:
以下的配置,只列出了与ACL配置相关的命令。
(1) 定义时间段
# 定义8:00至18:00的周期时间段。
<H3C> system-view
[H3C] time-range test 8:00 to 18:00 daily
(2) 定义源MAC为000f-e20f-0101目的MAC为000f-e20f-0303的ACL规则
# 进入ACL4000视图。
[H3C] acl number 4000
# 定义源MAC为000f-e20f-0101目的MAC为000f-e20f-0303的流分类规则。
[H3C-acl-ethernetframe-4000] rule 1 deny source 000f-e20f-0101 ffff-ffff-ffff dest 000f-e20f-0303 ffff-ffff-ffff time-range test
[H3C-acl-ethernetframe-4000] quit
(3) 在端口上应用ACL
# 在GigabitEthernet 1/1/1端口上应用ACL。
[H3C] interface GigabitEthernet1/1/1
[H3C-GigabitEthernet1/1/1] packet-filter inbound link-group 4000
通过用户自定义ACL,实现在每天8:00~18:00时间段内禁止所有的TCP报文通过。该用户自定义ACL在Ethernet1/0/1端口上应用。
& 说明:
以下的配置,只列出了与ACL配置相关的命令。
(1) 定义时间段
# 定义8:00至18:00的周期时间段。
[H3C] time-range aaa 8:00 to 18:00 daily
(2) 定义TCP报文的ACL
# 进入ACL5000视图。
[H3C] acl number 5000
# 定义TCP报文的流分类规则(假设端口上没有启动VLAN VPN功能)。
[H3C-acl-user-5000] rule 1 deny 06 ff 27 time-range aaa
(3) 在端口上应用ACL
# 在Ethernet 1/0/1端口上应用ACL 5000。
[H3C] interface Ethernet1/0/1
[H3C-Ethernet1/0/1] packet-filter inbound user-group 5000
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!