1、13ACL配置 MyPower S4330 V10 系列交换机配置手册ACL配置本手册著作权属迈普通信技术有限公司所有,未经著作权人书面许可,任何单位或个人不得以任何方式摘录、复制或翻译。XX。策 划: 研究院 资料服务处 * * *迈普通信技术有限公司地址:成都市高新区九兴大道16号迈普大厦技术支持热线:400-886-8669传真:(+8628)85148948E-mail:*.com网址:邮编:610041版本:2011年 8月v1.0版第1章ACL配置1.1 ACL简介ACL(Access Control List,访问控制列表)主要用来实现流识别功能。网络设备为了过滤数据包,需要配置
2、一系列的匹配规则,以识别需要过滤的对象。在识别出特定的对象之后,才能根据预先设定的策略允许或禁止相应的数据包通过。ACL根据一系列的匹配条件对数据包进行分类,这些条件可以是数据包的源地址、目的地址、端口号等。交换机根据ACL中指定的条件来检测数据包,从而决定是转发还是丢弃该数据包。由ACL定义的数据包匹配规则,还可以被其它需要对流进行区分的场合引用,如QoS中流分类规则的定义。根据应用目的,可将ACL 分为下面几种:基本ACL:只根据源IP地址制定规则。扩展ACL:根据数据包的源IP地址信息、目的IP地址信息、IP承载的协议类型、协议特性等三、四层信息制定规则。二层ACL:根据源MAC地址、目
3、的MAC地址、VLAN优先级、二层协议类型等二层信息制定规则。1.1.1 ACL的匹配顺序由于同一条ACL可以配置多个子项,所以就出现了匹配顺序的问题。ACL支持两种匹配顺序:配置顺序:根据配置顺序匹配ACL规则。自动排序:根据“深度优先”规则匹配ACL规则。深度优先指的是最长的子项先匹配。比如,现在配置同一条ACL的两个子项,配置步骤如下:Switch(config)#access-list 1 deny anyConfig ACL subitem successfully.Switch(config)#access-list 1 permit 1.1.1.1 0Config ACL sub
4、item successfully.如果选择的匹配顺序是配置顺序,那么,按照配置的步骤,先配置的命令就为子项0。通过查看配置可以看到:Switch(config)#show access-list config 1Standard IP Access List 1, match-order is config, 2 rule: 0 deny any 1 permit 1.1.1.1 0.0.0.0如果选择的匹配顺序是自动顺序,那么,最长的ACL匹配规则将为子项0。通过查看配置可以看到:Switch(config)#show access-list config 1Standard IP Acc
5、ess List 1, match-order is auto, 2 rule: 0 permit 1.1.1.1 0.0.0.0 1 deny any还需要注意的是,针对需要激活才能生效的ACL。S2600系列交换机遵守着“先激活先生效”的匹配规则。激活的配置可以参考1.6激活ACL。1.1.2 支持的ACL交换机支持的ACL如下:基本ACL扩展ACL二层ACL1.2 配置时间段对时间段的配置有如下内容:配置周期时间段和绝对时间段。配置周期时间段采用的是每周的周几的形式,配置绝对时间段采用从起始时间到结束时间的形式。1.2.1 配置过程表 1-1配置时间段操作命令备注进入全局配置模式conf
6、igure terminal-创建时间段并进入时间段配置模式time-range name-配置绝对时间段absolute start HH:MM:SS YYYY/MM/DD end HH:MM:SS YYYY/MM/DD 必选配置相对时间段periodic days-of-the-week hh:mm:ss to day-of-the-week hh:mm:ss配置时间段需要注意:如果一个时间段只定义了周期时间段,则只有系统时钟在该周期时间段内,该时间段才进入激活状态。如果一个时间段下定义了多个周期时间段,则这些周期时间段之间是“或”的关系。如果一个时间段只定义了绝对时间段,则只有系统时钟在
7、该绝对时间段内,该时间段才进入激活状态。如果一个时间段下定义了多个绝对时间段,则这些绝对时间段之间是“或”的关系。如果一个时间段同时定义了绝对时间段和周期时间段,则只有同时满足绝对时间段和周期时间段的定义时,该时间段才进入激活状态。例如,一个时间段定义了绝对时间段:从2009年1月1日0点0分到2009年12月31日23点59分,同时定义了周期时间段:每周三的12:00到14:00。该时间段只有在2009年内每周三的12:00 到14:00才进入激活状态。配置绝对时间段时,如果不配置开始日期,时间段就是从系统支持的最早时间起到配置的结束日期为止。如果不配置结束日期,时间段就是从配置的开始日期起
8、到2100/12/31 23:59 为止。1.2.2 配置举例1.配置绝对时间段,取值为2009年1月3日16:00 起至2009年1月5日16:00结束。Switch#configure terminalSwitch(config)#time-range bConfig time range successfully.Switch(config-timerange-b)#absolute start 16:00:00 2009/1/3 end 16:00:00 2009/1/5 Config absolute range successfully .Switch(config-timeran
9、ge-b)#show time-range name bCurrent time is: 02:46:43 2009/01/31 Saturdaytime-range: b ( Inactive )absolute: start 16:00:00 2009/01/03 end 16:00:00 2009/01/05 2.配置周期时间段,取值为周一到周五每天8:00到18:00Switch#configure terminalSwitch(config)#time-range bConfig time range successfully.Switch(config-timerange-b)#p
10、eriodic weekdays 8:00:00 to 18:00:00Config periodic range successfully .Switch(config-timerange-b)#show time-range name bCurrent time is: 02:47:56 2009/01/31 Saturdaytime-range: b ( Inactive )periodic: weekdays 08:00 to 18:001.3 定义基本ACL基本ACL只根据三层源IP制定规则,对数据包进行相应的分析处理。如果基本ACL以数字标识,那么序号取值范围为1-99,最多可创建
11、99条以数字为标识的基本ACL;如果基本ACL以名字标识,那么最多可以定义1000条。同时交换机可以为每条ACL最多定义128条子规则。1.3.1 配置过程如果要配置带有时间段参数的规则,则需要先定义相应的时间段。定义时间段的配置请参见1.2 配置时间段。表 1-2定义以数字为标识的基本ACL操作命令备注进入全局配置模式configure terminal-定义子项的匹配规则access-list num match-order config | auto 可选默认的规则是config匹配规则定义基本ACLaccess-list num permit | deny source-IPv4/v6
12、 source-wildcard | any | ipv6any fragments time-range name 必选表 1-3定义以名字为标识的基本ACL操作命令备注进入全局配置模式configure terminal-定义子项的匹配规则access-list standard name match-order config | auto 可选默认的规则是config匹配规则定义基本ACL且进入ACL配置模式access-list standard name必选配置ACL规则 permit | deny source-IPv4/v6 source- wildcard | any | ip
13、v6any fragments time-range name 必选1.3.2 配置举例!定义一条以数字为标识的基本ACL,禁止源IP地址为10.0.0.1的报文通过Switch#configure terminalSwitch(config)#access-list 1 deny 10.0.0.1 0!定义一条以名字为标识的基本ACL,禁止源IP地址为10.0.0.2的报文通过Switch#configure terminalSwitch(config)#access-list standard stdaclSwitch(config-std-nacl-stdacl)#deny 10.0.0
14、.2 01.4 定义扩展ACL扩展ACL可以根据数据包的源IP地址信息、目的IP地址信息、IP承载的协议类型、协议特性等三、四层信息制定规则。如果扩展ACL以数字标识,那么序号取值范围为100-199,最多可创建100条以数字为标识的扩展ACL;如果扩展ACL以名字标识,那么最多可以定义1000条。同时交换机可以为每条ACL最多定义128条子规则。1.4.1 配置过程如果要配置带有时间段参数的规则,则需要先定义相应的时间段。定义时间段的配置请参见1.2 配置时间段。表 1-4定义以数字为标识的扩展ACL操作命令备注进入全局配置模式configure terminal-定义子项的匹配规则acce
15、ss-list num match-order config | auto 可选默认的规则是config匹配规则定义扩展ACLaccess-list num permit | deny protocol | gre | icmp | icmpv6 | igmp | ipinip | ospf | udp | tcp established source-ipv4/v6 source-wildcard | any | ipv6any dest-ipv4/v6 dest-wildcard | any | ipv6any port | gre | icmp | icmpv6 | igmp | ipi
16、nip | ospf | udp | tcp fragments precedence precedence tos tos | dscp dscp 必选表 1-5定义以名字为标识的扩展ACL操作命令备注进入全局配置模式configure terminal-定义子项的匹配规则access-list extended name match-order config | auto 可选默认的规则是config匹配规则定义扩展ACL且进入ACL配置模式access-list extended name必选配置ACL规则 permit | deny protocol | gre | icmp | ic
17、mpv6 | igmp | ipinip | ospf | udp | tcp established source-ipv4/v6 source-wildcard | any | ipv6any dest-ipv4/v6 dest-wildcard | any | ipv6any port | gre | icmp | icmpv6 | igmp | ipinip | ospf | udp | tcp fragments precedence precedence tos tos | dscp dscp 必选扩展ACL里的具体参数说明如表1-6所示。表 1-6扩展ACL规则参数说明参数作用说
18、明protocolIP承载的协议类型用数字表示时取值范围为1255用名字表示时,可以选取GRE、ICMP、IGMP、IPinIP、OSPF、TCP、UDP、ICMPv6 source-IPv4/v6sour-wildcard | any | ipv6any 指定ACL规则的源地址信息sour-address sour-wildcard用来确定数据包的源IP地址(IPv4/v6)。IPv4地址用点分十进制表示;IPv6地址用十六进制表示;sour-wildcard为0时表示主机地址any代表任意源地址 dest-IPv4/v6dest-wildcard| any | ipv6any 指定ACL规
19、则的目的址信息dest-addr dest-wildcard 用来确定数据包的目的IP地址(IPv4/v6),IPv4地址用点分十进制表示;IPv6地址用十六进制表示;dest-wildcard为0时,表示主机地址any代表任意目的地址portTCP/UDP 端口号也可以使用列举出来的各个端口的名称标识precedence precedenceprecedence 报文优先级 IP优先级 取值范围07tos tostos 报文优先级ToS 优先级 取值范围015dscp dscpDSCP 优先级 取值范围063fragment 分片信息定义规则仅对非首片分片报文有效time-range nam
20、e指定规则生效的时间段fragments检查分片检查是否分片1.4.2 配置举例!定义一条以数字为标识的扩展ACL,禁止源IP地址为10.0.0.1的FTP报文。Switch#configure terminalSwitch(config)#access-list 100 deny tcp 10.0.0.1 0 ftp any !定义一条以名字为标识的扩展ACL,禁止源IP地址为10.0.0.2的FTP报文。Switch#configure terminalSwitch (config)#access-list extended extaclSwitch(config-ext-nacl-ext
21、acl)#deny tcp 10.0.0.2 0 ftp any1.5 定义二层ACL二层ACL可根据源MAC地址、目的MAC地址、VLAN优先级、二层协议类型等二层信息制定规则。如果扩展ACL以数字标识,那么序号取值范围为200-299,最多可创建100条以数字为标识的二层ACL;如果扩展ACL以名字标识,那么最多可以定义1000条。同时交换机可以为每条ACL最多定义128条子规则。1.5.1 配置二层ACL如果要配置带有时间段参数的规则,则需要先定义相应的时间段。定义时间段的配置请参见1.2 配置时间段。表 1-7定义以数字为标识的二层ACL操作命令备注进入全局配置模式configure
22、terminal-定义子项的匹配规则access-list num match-order config | auto 可选默认的规则是config匹配规则定义二层ACLaccess-list num permit | deny protocol | arp | ip | rarp cos vlan-pri ingress source-vlan-id source-mac-addr source-mac-wildcard interface interface-num | any egress dest-mac-addr dest-mac-wildcard interface interfa
23、ce-num | cpu | any time-range name 必选表 1-8定义以名字为标识的二层ACL操作命令备注进入全局配置模式configure terminal-定义子项的匹配规则access-list link name match-order config | auto 可选默认的规则是config匹配规则定义二层ACL且进入ACL配置模式access-list link name 必选配置ACL规则 permit | deny protocol | arp | ip | rarp cos vlan-pri ingress source-vlan-id source-mac
24、-addr source-mac-wildcard interface interface-num | any egress dest-mac-addr dest-mac-wildcard interface interface-num | cpu | any time-range name 必选1.5.2 配置举例!定义一条以数字为标识的二层ACL,禁止源MAC为00:00:00:00:00:01的ARP报文。Switch#configure terminalSwitch(config)#access-list 200 deny arp ingress 00:00:00:00:00:01 0
25、 egress any!定义一条以名字为标识的二层ACL,禁止源MAC为00:00:00:00:00:02的ARP报文。Switch#configure terminalSwitch(config)#access-list link lnkaclSwitch (config-link-nacl-lnkacl)#deny arp ingress 00:00:00:00:00:02 0 egress any1.6 激活ACL1.6.1 激活ACL除了需要被上层软件引用的ACL(比如说路由过滤、组播过滤等),其他ACL都需要激活后才生效。S2600系列路由交换机遵守“先激活先生效”的规则。表 1-9
26、激活ACL操作命令备注进入全局配置模式configure terminal-激活ACL规则access-group ip-group name | num link-group name | num subitem num 必选1.6.2 配置举例1.沿用1.1.1章节里提到的两个例子,激活之后实现相同的结果,即交换机只允许源IP地址为1.1.1.1的报文通过。!配置前Switch(config)#show access-list config 1Standard IP Access List 1, match-order is config, 2 rule: 0 deny any 1 per
27、mit 1.1.1.1 0.0.0.0!配置步骤Switch(config)#access-group ip-group 1 subitem 1Activate ACL successfully .Switch(config)#access-group ip-group 1 subitem 0Activate ACL successfully .!配置前Switch(config)#show access-list config 1Standard IP Access List 1, match-order is auto, 2 rule: 0 permit 1.1.1.1 0.0.0.0 1
28、 deny any!配置步骤Switch(config)#access-group ip-group 1 subitem 1Activate ACL successfully .Switch(config)#access-group ip-group 1 subitem 0Activate ACL successfully .2.多条ACL绑定激活通过多条ACL绑定激活来实现IP+MAC+端口的绑定。!配置要求:MAC为00:00:00:00:00:01,IP地址为1.1.1.1的用户只能从e0/0/1口进入。!配置步骤Switch(config)#access-list 1 permit 1
29、.1.1.1 0Switch(config)#access-list 200 permit ingress 00:00:00:00:00:01 0 interface ethernet 0/0/1 egress anySwitch(config)#access-group ip-group 1 link-group 2001.7 ACL的显示和调试在完成上面的配置后,可以通过下面的命令来查看配置。表 1-10ACL的显示和调试操作命令备注显示ACL统计show access-list config statistic所有模式下都可执行显示ACL的配置show access-list config all | num | name name 显示被激活的ACLshow access-list runtime all | num | name name