01-ACL配置
本章节下载: 01-ACL配置 (338.43 KB)
本文将用于IPv4和IPv6的ACL分别简称为IPv4 ACL和IPv6 ACL。若非特别指明,本文所指的ACL均包括IPv4 ACL和IPv6 ACL。
ACL(Access Control List,访问控制列表)是一或多条规则的集合,用于识别报文流。所谓规则,是指描述报文匹配条件的判断语句,这些条件可以是报文的源地址、目的地址、端口号等。网络设备依照这些规则识别出特定的报文,并根据预先设定的策略对其进行处理。
当ACL被其他功能引用时,根据设备在实现该功能时的处理方式(硬件处理或者软件处理),ACL可以被分为基于硬件的应用和基于软件的应用。
典型的基于硬件的应用包括;报文过滤、QoS策略;基于软件的应用包括:路由、对登录用户(Telnet、SNMP、WEB)进行控制等。
在某些应用方式下(例如QoS策略),ACL仅用于匹配报文,ACL规则中的动作(deny或permit)被忽略,不作为对报文进行丢弃或转发的依据,类似情况请参见相应功能中的说明。
· 当ACL被QoS策略引用进行流分类时,如果报文没有与ACL中的规则匹配,此时交换机不会使用流行为中定义的动作对此类报文进行处理。
· 当ACL被用于对Telnet、SNMP和WEB登录用户进行控制时,如果报文没有与ACL中的规则匹配,此时交换机对此类报文采取的动作为deny,即拒绝报文通过。
· 关于应用ACL对报文进行过滤的介绍和配置,请参见1.3.6 应用ACL进行报文过滤。
用户在创建ACL时必须为其指定编号,不同的编号对应不同类型的ACL,如表1-1所示;同时,为了便于记忆和识别,用户在创建ACL时还可选择是否为其设置名称。ACL一旦创建,便不允许用户再为其设置名称、修改或删除其原有名称。
当ACL创建完成后,用户就可以通过指定编号或名称的方式来指定该ACL,以便对其进行操作。
二层ACL的编号和名称全局唯一;IPv4基本和高级ACL的编号和名称只在IPv4中唯一;IPv6基本和高级ACL的编号和名称也只在IPv6中唯一。
根据规则制订依据的不同,可以将ACL分为如表1-1所示的几种类型。
表1-1 ACL的分类
ACL类型 |
编号范围 |
适用的IP版本 |
规则制订依据 |
基本ACL |
2000~2999 |
IPv4 |
报文的源IP地址 |
IPv6 |
报文的源IPv6地址 |
||
高级ACL |
3000~3999 |
IPv4 |
报文的源IP地址、目的IP地址、报文优先级、IP承载的协议类型及特性等三、四层信息 |
IPv6 |
报文的源IPv6地址、目的IPv6地址、报文优先级、IPv6承载的协议类型及特性等三、四层信息 |
||
二层ACL |
4000~4999 |
IPv4和IPv6 |
报文的源MAC地址、目的MAC地址、802.1p优先级、链路层协议类型等二层信息 |
由于ACL中每条规则的报文匹配条件不同,导致这些规则之间可能存在重复甚至矛盾的地方,因此在将一个报文与ACL的各条规则进行匹配时,需要有明确的匹配顺序来确定规则执行的优先级,一旦匹配上某条规则就不会再继续匹配下去,系统将依据该规则对该报文执行相应的操作。ACL的规则匹配顺序有以下两种:
· 配置顺序:按照规则编号由小到大进行匹配。
· 自动排序:按照“深度优先”原则由深到浅进行匹配,各类型ACL的“深度优先”排序法则如表1-2所示。
表1-2 各类型ACL的“深度优先”排序法则
ACL类型 |
“深度优先”排序法则 |
IPv4基本ACL |
(1) 先判断规则中是否携带有VPN实例,携带VPN实例者优先 (2) 如果VPN实例的携带情况相同,再比较源IPv4地址范围,范围较小者优先 (3) 如果源IP地址范围也相同,再比较配置的先后次序,先配置者优先 |
IPv4高级ACL |
(1) 先判断规则中是否携带有VPN实例,携带VPN实例者优先 (2) 如果VPN实例的携带情况相同,再比较协议范围,指定有IPv4承载的协议类型者优先 (3) 如果协议范围也相同,再比较源IPv4地址范围,较小者优先 (4) 如果源IPv4地址范围也相同,再比较目的IPv4地址范围,较小者优先 (5) 如果目的IPv4地址范围也相同,再比较四层端口(即TCP/UDP端口)号范围,较小者优先 (6) 如果四层端口号范围也相同,再比较配置的先后次序,先配置者优先 |
IPv6基本ACL |
(1) 先判断规则中是否携带有VPN实例,携带VPN实例者优先 (2) 如果VPN实例的携带情况相同,再比较源IPv6地址范围,范围较小者优先 (3) 如果源IPv6地址范围也相同,再比较配置的先后次序,先配置者优先 |
IPv6高级ACL |
(1) 先判断规则中是否携带有VPN实例,携带VPN实例者优先 (2) 如果VPN实例的携带情况相同,再比较协议范围,指定有IPv6承载的协议类型者优先 (3) 如果协议范围相同,再比较源IPv6地址范围,较小者优先 (4) 如果源IPv6地址范围也相同,再比较目的IPv6地址范围,较小者优先 (5) 如果目的IPv6地址范围也相同,再比较四层端口(即TCP/UDP端口)号范围,较小者优先 (6) 如果四层端口号范围也相同,再比较配置的先后次序,先配置者优先 |
二层ACL |
(1) 先比较源MAC地址范围,较小者优先 (2) 如果源MAC地址范围相同,再比较目的MAC地址范围,较小者优先 (3) 如果目的MAC地址范围也相同,再比较配置的先后次序,先配置者优先 |
· 比较IPv4地址范围的大小,就是比较IPv4地址通配符掩码中“0”位的多少:“0”位越多,范围越小。通配符掩码(又称反向掩码)以点分十进制表示,并以二进制的“0”表示“匹配”,“1”表示“不关心”,这与子网掩码恰好相反,譬如子网掩码255.255.255.0对应的通配符掩码就是0.0.0.255。此外,通配符掩码中的“0”或“1”可以是不连续的,这样可以更加灵活地进行匹配,譬如0.255.0.255就是一个合法的通配符掩码。
· 比较IPv6地址范围的大小,就是比较IPv6地址前缀的长短:前缀越长,范围越小。
· 比较MAC地址范围的大小,就是比较MAC地址掩码中“1”位的多少:“1”位越多,范围越小。
在一个ACL中用户可以创建多条规则,为了方便标识这些规则的用途,用户可以为单条规则添加描述信息,也可以在各条规则之间插入注释信息来对前一段或后一段规则进行统一描述。
规则描述信息主要用于对单条规则进行单独标识。当需要对各条规则进行不同的标识或对某条规则进行特别标识时,适用此方式。
规则注释信息主要用于对一段规则进行统一标识。当需要对一段规则进行相同的标识时,如果采用对每条规则都添加相同描述信息的方式,需要进行大量配置,效率会非常低下。在这种情况下,可以在这段规则的前、后插入注释信息的方式来提高标识效率,即:在这段规则的首条规则之前以及末条规则之后分别插入一条注释信息,通过首、尾这两条注释信息就可以标识整段规则的用途。
在不同的规则匹配顺序下,“首条规则”和“末条规则”的确定方法不同:
· 在配置顺序下:规则的显示将按照规则编号由小到大排列,因此应通过规则的编号来确定;
· 在自动排序下:规则的显示将按照“深度优先”原则由深到浅排列,因此应通过“深度优先”原则来确定。
ACL中的每条规则都有自己的编号,这个编号在该ACL中是唯一的。在创建规则时,可以手工为其指定一个编号,如未手工指定编号,则由系统为其自动分配一个编号。由于规则的编号可能影响规则匹配的顺序,因此当由系统自动分配编号时,为了方便后续在已有规则之前插入新的规则,系统通常会在相邻编号之间留下一定的空间,这个空间的大小(即相邻编号之间的差值)就称为ACL的步长。譬如,当步长为5时,系统会将编号0、5、10、15……依次分配给新创建的规则。
系统为规则自动分配编号的方式如下:系统从0开始,按照步长自动分配一个大于现有最大编号的最小编号。譬如原有编号为0、5、9、10和12的五条规则,步长为5,此时如果创建一条规则且不指定编号,那么系统将自动为其分配编号15。
如果步长发生了改变,ACL内原有全部规则的编号都将自动从0开始按新步长重新排列。譬如,某ACL内原有编号为0、5、9、10和15的五条规则,当修改步长为2之后,这些规则的编号将依次变为0、2、4、6和8。
传统的报文过滤并不处理所有的分片报文,只对首个分片进行匹配处理,而对后续分片一律放行。这样,网络攻击者可以构造后续的分片报文进行流量攻击,从而带来了安全隐患。为提高网络安全性,ACL规则缺省会匹配所有的非分片报文以及分片报文的每个分片。同时,为了提高匹配效率,用户也可以对此匹配策略进行修改,譬如可指定规则仅对非首片分片报文有效等。
表1-3 ACL配置任务简介
配置任务 |
说明 |
详细配置 |
配置ACL的生效时间段 |
可选 本配置任务适用于IPv4和IPv6 |
|
配置IPv4基本ACL |
至少选择一项 |
|
配置IPv6基本ACL |
||
配置IPv4高级ACL |
||
配置IPv6高级ACL |
||
配置二层ACL |
||
复制ACL |
可选 本配置任务适用于IPv4和IPv6 |
|
应用ACL进行报文过滤 |
可选 本配置任务适用于IPv4和IPv6 |
当ACL规则只需在某个或某些特定的时间段内生效时,可以设置基于时间段的ACL过滤。为此,用户可以先配置一个或多个时间段,然后在规则中引用这些时间段,那么该规则将只在指定的时间段内生效。ACL的生效时间段可分为以下两种:
· 周期时间段:表示规则以一周为周期(如每周一的8至12点)循环生效。
· 绝对时间段:表示规则在指定时间范围内(如2011年1月1日8点至2011年1月3日18点)生效。
用户使用同一名称可以配置内容不同的多条时间段,所配置的各周期时间段之间以及各绝对时间段之间分别取并集之后,各并集的交集将成为最终生效的时间范围。
表1-4 配置ACL的生效时间段
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建时间段 |
time-range time-range-name { start-time to end-time days [ from time1 date1 ] [ to time2 date2 ] | from time1 date1 [ to time2 date2 ] | to time2 date2 } |
必选 缺省情况下,不存在任何时间段 |
用户最多可以创建256个不同名称的时间段,而同一名称下最多可以配置32条周期时间段和12条绝对时间段。
IPv4基本ACL根据报文的源IP地址来制订规则,对IPv4报文进行匹配。
表1-5 配置IPv4基本ACL
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建IPv4基本ACL,并进入IPv4基本ACL视图 |
acl number acl-number [ name acl-name ] [ match-order { auto | config } ] |
必选 缺省情况下,不存在任何ACL IPv4基本ACL的编号范围为2000~2999 |
配置ACL的描述信息 |
description text |
可选 缺省情况下,ACL没有任何描述信息 |
配置规则编号的步长 |
step step-value |
可选 缺省情况下,规则编号的步长为5 |
创建规则 |
rule [ rule-id ] { deny | permit } [ counting | fragment | logging | source { sour-addr sour-wildcard | any } | time-range time-range-name | vpn-instance vpn-instance-name ] * |
必选 缺省情况下,IPv4基本ACL内不存在任何规则 需要注意的是: · 当IPv4基本ACL被QoS策略引用对报文进行流分类时,不支持配置vpn-instance参数,在规则中配置的logging和counting参数不会生效 · 当IPv4基本ACL被用于报文过滤时,不支持配置vpn-instance参数 |
为指定规则配置描述信息 |
rule rule-id comment text |
可选 缺省情况下,规则没有任何描述信息 |
配置规则注释信息 |
rule [ rule-id ] remark text |
可选 缺省情况下,ACL内没有任何规则注释信息 |
使能基于硬件应用的ACL的规则匹配统计功能 |
hardware-count enable |
可选 缺省情况下,基于硬件应用的ACL的规则匹配统计功能处于关闭状态 当ACL被QoS策略引用对报文进行流分类时,本功能不会生效 |
如果在创建IPv4基本ACL时为其指定了名称,则也可以使用acl name acl-name命令通过指定名称的方式进入其视图。
IPv6基本ACL根据报文的源IPv6地址来制订规则,对IPv6报文进行匹配。
表1-6 配置IPv6基本ACL
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建IPv6基本ACL,并进入IPv6基本ACL视图 |
acl ipv6 number acl6-number [ name acl6-name ] [ match-order { auto | config } ] |
必选 缺省情况下,不存在任何ACL IPv6基本ACL的编号范围为2000~2999 |
配置ACL的描述信息 |
description text |
可选 缺省情况下,ACL没有任何描述信息 |
配置规则编号的步长 |
step step-value |
可选 缺省情况下,规则编号的步长为5 |
创建规则 |
rule [ rule-id ] { deny | permit } [ counting | fragment | logging | routing [ type routing-type ] | source { ipv6-address prefix-length | ipv6-address/prefix-length | any } | time-range time-range-name | vpn-instance vpn-instance-name ] * |
必选 缺省情况下,IPv6基本ACL内不存在任何规则 需要注意的是: · 当IPv6基本ACL被QoS策略引用对报文进行流分类时,不支持配置fragment、routing和vpn-instance参数,在规则中配置的logging和counting参数不会生效 · 当IPv6基本ACL被用于报文过滤时,不支持配置fragment、routing和vpn-instance参数 |
为指定规则配置描述信息 |
rule rule-id comment text |
可选 缺省情况下,规则没有任何描述信息 |
配置规则注释信息 |
rule [ rule-id ] remark text |
可选 缺省情况下,ACL内没有任何规则注释信息 |
使能基于硬件应用的ACL的规则匹配统计功能 |
hardware-count enable |
可选 缺省情况下,基于硬件应用的ACL的规则匹配统计功能处于关闭状态 当ACL被QoS策略引用对报文进行流分类时,本功能不会生效 |
如果在创建IPv6基本ACL时为其指定了名称,则也可以使用acl ipv6 name acl6-name命令通过指定名称的方式进入其视图。
IPv4高级ACL可根据报文的源IP地址、目的IP地址、报文优先级、IP承载的协议类型及特性(如TCP/UDP的源端口和目的端口、TCP报文标识、ICMP协议的消息类型和消息码等)等信息来制定规则,对IPv4报文进行匹配。用户可利用IPv4高级ACL制订比IPv4基本ACL更准确、丰富、灵活的规则。
表1-7 配置IPv4高级ACL
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建IPv4高级ACL,并进入IPv4高级ACL视图 |
acl number acl-number [ name acl-name ] [ match-order { auto | config } ] |
必选 缺省情况下,不存在任何ACL IPv4高级ACL的编号范围为3000~3999 |
配置ACL的描述信息 |
description text |
可选 缺省情况下,ACL没有任何描述信息 |
配置规则编号的步长 |
step step-value |
可选 缺省情况下,规则编号的步长为5 |
创建规则 |
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 { dest-addr dest-wildcard | any } | destination-port operator port1 [ port2 ] | dscp dscp | fragment | icmp-type { icmp-type [ icmp-code ] | icmp-message } | logging | precedence precedence | source { sour-addr sour-wildcard | any } | source-port operator port1 [ port2 ] | time-range time-range-name | tos tos | vpn-instance vpn-instance-name ] * |
必选 缺省情况下,IPv4高级ACL内不存在任何规则 重复执行本命令可以创建多条规则 需要注意的是,当IPv4高级ACL用于QoS策略的流分类或用于报文过滤功能时: · 不支持配置vpn-instance参数 · 不支持配置操作符operator取值为neq · 当ACL用于流分类时,在规则中配置的logging和counting参数不会生效 |
为指定规则配置描述信息 |
rule rule-id comment text |
可选 缺省情况下,规则没有任何描述信息 |
配置规则注释信息 |
rule [ rule-id ] remark text |
可选 缺省情况下,ACL内没有任何规则注释信息 |
使能基于硬件应用的ACL的规则匹配统计功能 |
hardware-count enable |
可选 缺省情况下,基于硬件应用的ACL的规则匹配统计功能处于关闭状态 当ACL被QoS策略引用对报文进行流分类时,本功能不会生效 |
如果在创建IPv4高级ACL时为其指定了名称,则也可以使用acl name acl-name命令通过指定名称的方式进入其视图。
IPv6高级ACL可根据报文的源IPv6地址、目的IPv6地址、报文优先级、IPv6承载的协议类型及特性(如TCP/UDP的源端口和目的端口、TCP报文标识、ICMPv6协议的消息类型和消息码等)等信息来制定规则,对IPv6报文进行匹配。用户可利用IPv6高级ACL制订比IPv6基本ACL更准确、丰富、灵活的规则。
表1-8 配置IPv6高级ACL
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建IPv6高级ACL,并进入IPv6高级ACL视图 |
acl ipv6 number acl6-number [ name acl6-name ] [ match-order { auto | config } ] |
必选 缺省情况下,不存在任何ACL IPv6高级ACL的编号范围3000~3999 |
配置ACL的描述信息 |
description text |
可选 缺省情况下,ACL没有任何描述信息 |
配置规则编号的步长 |
step step-value |
可选 缺省情况下,规则编号的步长为5 |
创建规则 |
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 { dest dest-prefix | dest/dest-prefix | any } | destination-port operator port1 [ port2 ] | dscp dscp | flow-label flow-label-value | fragment | icmp6-type { icmp6-type icmp6-code | icmp6-message } | logging | routing [ type routing-type ] | source { source source-prefix | source/source-prefix | any } | source-port operator port1 [ port2 ] | time-range time-range-name | vpn-instance vpn-instance-name ] * |
必选 缺省情况下,IPv6高级ACL内不存在任何规则 需要注意的是,当IPv6高级ACL用于QoS策略的流分类或用于报文过滤功能时: · 不支持配置fragment和routing参数 · 不支持配置vpn-instance参数 · 不支持配置操作符operator取值为neq · 如果QoS策略或报文过滤功能应用于出方向,则不支持配置flow-label参数 · 当ACL用于流分类时,在规则中配置的logging和counting参数不会生效 |
为指定规则配置描述信息 |
rule rule-id comment text |
可选 缺省情况下,规则没有任何描述信息 |
配置规则注释信息 |
rule [ rule-id ] remark text |
可选 缺省情况下,ACL内没有任何规则注释信息 |
使能基于硬件应用的ACL的规则匹配统计功能 |
hardware-count enable |
可选 缺省情况下,基于硬件应用的ACL的规则匹配统计功能处于关闭状态 当ACL被QoS策略引用对报文进行流分类时,本功能不会生效 |
· 对于带有扩展报文头的IPv6报文,可以通过IPv6高级ACL来匹配所有类型的扩展报文头,但如果ACL的匹配内容为扩展报文头内层的报文内容,则扩展报文头不能超过一层,且不能包含IPv6 Encapsulation Header报文头,否则ACL将无法进行匹配。
· 当匹配的扩展报文头类型(protocol参数)取值为43、44、51、60时,引用该ACL的QoS策略将不能在出方向应用。
· 如果在创建IPv6高级ACL时为其指定了名称,则也可以使用acl ipv6 name acl6-name命令通过指定名称的方式进入其视图。
二层ACL可根据报文的源MAC地址、目的MAC地址、802.1p优先级、链路层协议类型等二层信息来制订规则,对报文进行匹配。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建二层ACL,并进入二层ACL视图 |
acl number acl-number [ name acl-name ] [ match-order { auto | config } ] |
必选 缺省情况下,不存在任何ACL 二层ACL的编号范围为4000~4999 |
配置ACL的描述信息 |
description text |
可选 缺省情况下,ACL没有任何描述信息 |
配置规则编号的步长 |
step step-value |
可选 缺省情况下,规则编号的步长为5 |
创建规则 |
rule [ rule-id ] { deny | permit } [ cos vlan-pri | counting | dest-mac dest-addr dest-mask | { lsap lsap-type lsap-type-mask | type protocol-type protocol-type-mask } | source-mac sour-addr source-mask | time-range time-range-name ] * |
必选 缺省情况下,二层ACL内不存在任何规则 需要注意的是,当二层ACL用于QoS策略的流分类或用于报文过滤功能时,如果使用lsap参数,则lsap-type必须为AAAA,lsap-type-mask必须为FFFF,否则ACL将无法正常应用 |
为指定规则配置描述信息 |
rule rule-id comment text |
可选 缺省情况下,规则没有任何描述信息 |
配置规则注释信息 |
rule [ rule-id ] remark text |
可选 缺省情况下,ACL内没有任何规则注释信息 |
使能基于硬件应用的ACL的规则匹配统计功能 |
hardware-count enable |
可选 缺省情况下,基于硬件应用的ACL的规则匹配统计功能处于关闭状态 当ACL被QoS策略引用对报文进行流分类时,本功能不会生效 |
如果在创建二层ACL时为其指定了名称,则也可以使用acl name acl-name命令通过指定名称的方式进入其视图。
用户可通过复制一个已存在的ACL(即源ACL),来生成一个新的同类型ACL(即目的ACL)。除了ACL的编号和名称不同外,新生成的目的ACL的匹配顺序、规则匹配统计功能的使能情况、规则编号的步长、所包含的规则、规则的描述信息以及ACL的描述信息等都与源ACL的相同。
表1-10 复制IPv4 ACL
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
复制生成一个新的同类型IPv4 ACL |
acl copy { source-acl-number | name source-acl-name } to { dest-acl-number | name dest-acl-name } |
必选 |
目的IPv4 ACL要与源IPv4 ACL的类型相同,且目的IPv4 ACL必须不存在,否则将导致复制失败。
表1-11 复制IPv6 ACL
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
复制生成一个新的同类型IPv6 ACL |
acl ipv6 copy { source-acl6-number | name source-acl6-name } to { dest-acl6-number | name dest-acl6-name } |
必选 |
目的IPv6 ACL要与源IPv6 ACL的类型相同,且目的IPv6 ACL必须不存在,否则将导致复制失败。
ACL最基本的应用就是进行报文过滤,即通过将ACL规则应用到指定接口的入或出方向上,从而对该接口收到或发出的报文进行过滤。此外,通过配置报文过滤日志的生成与发送周期,还可周期性地生成并发送报文过滤的日志信息(信息级别为informational),包括匹配次数以及所使用的ACL规则。该日志信息将被发往信息中心,有关信息中心的详细介绍,请参见“网络管理和监控配置指导”中的“信息中心”。
· 应用ACL进行报文过滤功能中所指的“接口”包括二层以太网端口、三层以太网端口、和VLAN接口。三层以太网端口是指被配置为三层模式的以太网端口,有关以太网端口模式切换的操作,请参见“二层技术-以太网交换配置指导”中的“以太网端口配置”。
· 在VLAN接口上应用ACL进行报文过滤时,只能对通过该接口进行三层转发的报文进行过滤,而对纯二层转发的报文不进行过滤。
· 在端口上配置报文过滤时,可以同时应用IPv4 ACL、IPv6 ACL和二层ACL,但在每个方向上每种类型的ACL最多只能应用一条。
· 系统只支持对应用基本或高级ACL进行报文过滤的日志进行记录,并在配置上述ACL规则时必须打开其日志记录功能(通过指定logging参数)和规则匹配统计功能(通过指定counting参数或使用hardware-count enable命令)。
表1-12 应用IPv4 ACL进行报文过滤
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
- |
应用IPv4基本ACL、IPv4高级ACL或二层ACL进行报文过滤 |
packet-filter { acl-number | name acl-name } { inbound | outbound } |
必选 缺省情况下,接口不对报文进行过滤 |
退回系统视图 |
quit |
- |
配置IPv4报文过滤日志的生成与发送周期 |
acl logging frequence frequence |
必选 缺省情况下,IPv4报文过滤日志的生成与发送周期为0分钟,即不记录IPv4报文过滤的日志 |
表1-13 应用IPv6 ACL进行报文过滤
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
- |
应用IPv6基本ACL或IPv6高级ACL进行报文过滤 |
packet-filter ipv6 { acl6-number | name acl6-name } { inbound | outbound } |
必选 缺省情况下,接口不对报文进行过滤 |
退回系统视图 |
quit |
- |
配置IPv6报文过滤日志的生成与发送周期 |
acl ipv6 logging frequence frequence |
必选 缺省情况下,IPv6报文过滤日志的生成与发送周期为0分钟,即不记录IPv6报文过滤的日志 |
在VLAN接口下应用ACL进行报文过滤时,可以通过本功能指定报文过滤的生效范围:
· 仅对三层转发的报文生效。
· 对所有报文生效,即通过VLAN接口进行三层转发的报文和通过VLAN接口对应的物理接口进行二层转发的报文均生效。
表1-14 配置报文过滤在VLAN接口的生效范围
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建VLAN接口并进入VLAN接口视图 |
interface vlan-interface vlan-interface-id |
如果该VLAN接口已经存在,则直接进入该VLAN接口视图 缺省情况下,未创建VLAN接口 |
配置报文过滤的生效范围 |
packet-filter filter { route | all } |
缺省情况下,报文过滤仅对通过VLAN接口进行三层转发的报文生效 |
在完成上述配置后,在任意视图下执行display命令可以显示ACL配置后的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除ACL的统计信息。
表1-15 ACL显示和维护
配置 |
命令 |
显示IPv4 ACL的配置和运行情况 |
display acl { acl-number | all | name acl-name } [ slot slot-number ] [ | { begin | exclude | include } regular-expression ] |
显示IPv6 ACL的配置和运行情况 |
display acl ipv6 { acl6-number | all | name acl6-name } [ slot slot-number ] [ | { begin | exclude | include } regular-expression ] |
显示ACL资源的使用情况 |
display acl resource [ slot slot-number ] [ | { begin | exclude | include } regular-expression ] |
显示报文过滤策略的应用情况 |
display packet-filter { { all | interface interface-type interface-number } [ inbound | outbound ] | interface vlan-interface vlan-interface-number [ inbound | outbound ] [ slot slot-number ] } [ | { begin | exclude | include } regular-expression ] |
显示时间段的配置和状态信息 |
display time-range { time-range-name | all } [ | { begin | exclude | include } regular-expression ] |
清除IPv4 ACL统计信息 |
reset acl counter { acl-number | all | name acl-name } |
清除IPv6 ACL统计信息 |
reset acl ipv6 counter { acl6-number | all | name acl6-name } |
某公司的网络组网如图1-1所示,现要求:
· Switch在工作时间(8:30~18:00)可以接受管理网管工作站(Host A)的Telnet访问,在其余时间则不接受任何Telnet登录请求。
· Switch作为TFTP客户端,只能从11.1.1.100的服务器上获取文件,以保证设备上不会保存未授权的非法文件。
· Switch作为FTP服务器端,只能接受网管工作站的登录请求。
图1-1 在设备管理功能中应用基本IPv4 ACL组网示意图
· 对Telnet登录请求的限制
# 定义周期时间段telnet,时间范围为每个工作日的8:30~18:00。
<Switch> system-view
[Switch] time-range telnet 8:30 to 18:00 working-day
# 定义基本IPv4 ACL 2000,配置两条规则,分别为允许源IP地址为10.1.3.1的报文在工作时间通过以及拒绝源IP地址为任意地址的报文通过。
[Switch] acl number 2000
[Switch-acl-basic-2000] rule permit source 10.1.3.1 0 time-range telnet
[Switch-acl-basic-2000] quit
# 在所有Telnet用户界面下应用ACL 2000,方向为入方向,表示对登录到本设备的Telnet请求进行限制。
[Switch] user-interface vty 0 15
[Switch-ui-vty0-15] acl 2000 inbound
· 对TFTP服务器的访问限制
# 定义基本IPv4 ACL 2001,配置两条规则,分别为允许源IP地址为11.1.1.100的报文通过以及拒绝源IP地址为任意地址的报文通过。
[Switch] acl number 2001
[Switch-acl-basic-2001] rule permit source 11.1.1.100 0
[Switch-acl-basic-2001] quit
# 配置设备只使用ACL来限制可访问的TFTP服务器设备。
[Switch] tftp-server acl 2001
· 对FTP登录请求的限制
# 定义基本IPv4 ACL 2002,配置两条规则,分别为允许源IP地址为10.1.3.1的报文通过以及拒绝源IP地址为任意地址的报文通过。
[Switch] acl number 2002
[Switch-acl-basic-2002] rule permit source 10.1.3.1 0
[Switch-acl-basic-2002] quit
# 开启设备的FTP服务器功能。
[Switch] ftp server enable
# 配置设备使用ACL 2002来限制FTP登录请求。
[Switch] ftp server acl 2002
要求通过在Device A的端口Ethernet1/0/1上配置IPv4报文过滤功能,实现在每天的8点到18点期间只允许Host A访问互联网,并以10分钟为周期记录IPv4报文过滤的日志信息并输出至控制台。
图1-2 应用IPv4 ACL进行报文过滤配置组网图
# 创建名为study的时间段,其时间范围为每天的8点到18点。
<DeviceA> system-view
[DeviceA] time-range study 8:0 to 18:0 daily
# 创建IPv4基本ACL 2009,并制订如下规则:在名为study的时间段内只允许来自Host A的报文通过、禁止来自其它IP地址的报文通过,且在这些规则中对允许通过的报文记录日志信息。
[DeviceA] acl number 2009
[DeviceA-acl-basic-2009] rule permit source 192.168.1.2 0 time-range study logging
[DeviceA-acl-basic-2009] rule deny source any time-range study
[DeviceA-acl-basic-2009] quit
# 配置IPv4报文过滤日志的生成与发送周期为10分钟。
[DeviceA] acl logging frequence 10
# 配置系统信息的输出规则,将级别为informational的日志信息输出至控制台。
[DeviceA] info-center source default channel 0 log level informational
# 应用IPv4基本ACL 2009对端口Ethernet1/0/1入方向上的报文进行过滤。
[DeviceA] interface ethernet 1/0/1
[DeviceA-Ethernet1/0/1] packet-filter 2009 inbound
[DeviceA-Ethernet1/0/1] quit
要求通过在Device A的端口Ethernet1/0/1上配置IPv6报文过滤功能,实现在每天的8点到18点期间只允许Host A访问互联网,并以10分钟为周期记录IPv6报文过滤的日志信息并输出至控制台。
图1-3 应用IPv6 ACL进行报文过滤配置组网图
# 创建名为study的时间段,其时间范围为每天的8点到18点。
<DeviceA> system-view
[DeviceA] time-range study 8:0 to 18:0 daily
# 创建IPv6基本ACL 2009,并制订如下规则:在名为study的时间段内只允许来自Host A的报文通过、禁止来自其它IPv6地址的报文通过,且在这些规则中对允许通过的报文记录日志信息。
[DeviceA] acl ipv6 number 2009
[DeviceA-acl6-basic-2009] rule permit source 1001::2 128 time-range study logging
[DeviceA-acl6-basic-2009] rule deny source any time-range study
[DeviceA-acl6-basic-2009] quit
# 配置IPv6报文过滤日志的生成与发送周期为10分钟。
[DeviceA] acl ipv6 logging frequence 10
# 配置系统信息的输出规则,将级别为informational的日志信息输出至控制台。
[DeviceA] info-center source default channel 0 log level informational
# 应用IPv6基本ACL 2009对端口Ethernet1/0/1入方向上的报文进行过滤。
[DeviceA] interface ethernet 1/0/1
[DeviceA-Ethernet1/0/1] packet-filter ipv6 2009 inbound
[DeviceA-Ethernet1/0/1] quit
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!