00-H3C S12500 ACL典型配置举例
本章节下载: 00-H3C S12500 ACL典型配置举例 (194.93 KB)
H3C S12500 ACL配置举例
Copyright © 2013 杭州华三通信技术有限公司 版权所有,保留一切权利。 非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部, 并不得以任何形式传播。本文档中的信息可能变动,恕不另行通知。 |
目 录
本文档介绍了ACL(Access Control List,访问控制列表)的配置举例。
ACL是一或多条规则的集合,用于识别报文流。所谓规则,是指描述报文匹配条件的判断语句,这些条件可以是报文的源地址、目的地址、端口号等。网络设备依照这些规则识别出特定的报文,并根据预先设定的策略对其进行处理。
本文档中的配置均是在实验室环境下进行的配置和验证,配置前设备的所有参数均采用出厂时的缺省配置。如果您已经对设备进行了配置,为了保证配置效果,请确认现有配置和以下举例中的配置不冲突。
本文假设您已了解ACL特性。
如图1所示,某公司IPv4网络中,管理者希望在Switch上配置二层ACL实现:在每周一至周五的中午12:00至下午18:00,禁止Router下的所有用户访问Server。
图1 二层ACL配置组网图
本举例是在S12500-CMW520-R1825P01版本上进行配置和验证的。
由于EB/EC2类单板(丝印后缀为EB、EC2)上引用二层ACL时对IPv4报文是否生效存在限制,因此需要判断GE2/0/1所在单板是否是EB/EC2类单板。
· 如果是,则要确保该单板工作在ACL高级模式(通过display acl mode可以查看当前ACL工作模式),否则该单板引用的二层ACL对IPv4报文不生效;通过acl mode { standard | advanced }命令可以修改ACL工作模式(缺省情况下,EB类单板工作在ACL高级模式)。
· 如果不是,则无需进行ACL模式的配置,单板引用的二层ACL对IPv4报文缺省生效。
本例中假设2号槽位的单板为EB类单板,ACL工作模式为缺省情况。
# 配置时间段time_1。
<Switch> system-view
[Switch] time-range time_1 12:00 to 18:00 working-day
# 配置二层ACL 4000规则匹配源MAC和目的MAC并引用时间段time_1。
[Switch] acl number 4000
[Switch-acl-ethernetframe-4000] rule permit source-mac 0000-0000-0002 ffff-ffff-ffff dest-mac 0000-0000-0001 ffff-ffff-ffff type 0800 ffff time-range time_1
[Switch-acl-ethernetframe-4000] quit
# 配置流分类c_deny引用ACL 4000。
[Switch] traffic classifier c_deny
[Switch-classifier-c_deny] if-match acl 4000
[Switch-classifier-c_deny] quit
# 配置流行为b_deny的动作为丢弃数据包。
[Switch] traffic behavior b_deny
[Switch-behavior-b_deny] filter deny
[Switch-behavior-b_deny] quit
# 配置QoS策略Q_deny,将相应的流分类和流行为关联。
[Switch] qos policy Q_deny
[Switch-qospolicy-Q_deny] classifier c_deny behavior b_deny
[Switch-qospolicy-Q_deny] quit
# 在与Router相连的端口GE2/0/1的入方向上应用QoS策略Q_deny。
[Switch] interface GigabitEthernet 2/0/1
[Switch-GigabitEthernet2/0/1] undo shutdown
[Switch-GigabitEthernet2/0/1] qos apply policy Q_deny inbound
[Switch-GigabitEthernet2/0/1] quit
# 查看Switch的端口GE2/0/1上所配置的QoS策略信息。
[Switch] display qos policy interface GigabitEthernet 2/0/1
Interface: GigabitEthernet2/0/1
Direction: Inbound
Policy: Q_deny
Classifier: c_deny
Operator: AND
Rule(s) : If-match acl 4000
Behavior: b_deny
Filter Enable: deny
在周一至周五的中午12:00至下午18:00(ACL规则生效时间)内服务器上不再有来自源MAC为0-0-2,目的MAC为服务器自己(0-0-1)的IPv4流量。
#
time-range time_1 12:00 to 18:00 working-day
#
acl number 4000
rule 0 permit type 0800 ffff source-mac 0000-0000-0002 ffff-ffff-ffff dest-mac 0000-0000-0001 ffff-ffff-ffff time-range time_1
#
vlan 1
#
traffic classifier c_deny operator and
if-match acl 4000
#
traffic behavior b_deny
filter deny
#
qos policy Q_deny
classifier c_deny behavior b_deny
#
interface GigabitEthernet2/0/1
port link-mode bridge
qos apply policy Q_deny inbound
#
如图2所示,要求在接口GE2/0/1的入方向上配置IPv4高级ACL识别源IP地址为10.0.0.2、目的IP地址为10.0.0.3、TCP目的端口号为8080、TCP源端口号为8081的HTTP报文,并对识别出的报文进行过滤处理。
图2 IPv4 高级ACL配置组网图
本举例是在S12500-CMW520-R1825P01版本上进行配置和验证的。
# 配置IPv4高级ACL。
<Switch> system-view
[Switch] acl number 3000
[Switch-acl-adv-3000] rule permit tcp destination-port eq 8080 source-port eq 8081 source 10.0.0.2 0 destination 10.0.0.3 0
[Switch-acl-adv-3000] quit
# 配置流分类c_deny引用IPv4高级ACL 3000。
[Switch] traffic classifier c_deny
[Switch-classifier-c_deny] if-match acl 3000
[Switch-classifier-c_deny] quit
# 配置流行为b_deny的动作为丢弃数据包。
[Switch] traffic behavior b_deny
[Switch-behavior-b_deny] filter deny
[Switch-behavior-b_deny] quit
# 配置QoS策略Q_deny,将相应的流分类和流行为关联。
[Switch] qos policy Q_deny
[Switch-qospolicy-Q_deny] classifier c_deny behavior b_deny
[Switch-qospolicy-Q_deny] quit
# 将策略Q_deny应用到接口GE2/0/1的入方向。
[Switch] interface GigabitEthernet 2/0/1
[Switch-GigabitEthernet2/0/1] undo shutdown
[Switch-GigabitEthernet2/0/1] qos apply policy Q_deny inbound
[Switch-GigabitEthernet2/0/1] quit
# 查看Switch的接口GE2/0/1上所配置的QoS策略信息。
[Switch] display qos policy interface GigabitEthernet 2/0/1
Interface: GigabitEthernet2/0/1
Direction: Inbound
Policy: Q_deny
Classifier: c_deny
Operator: AND
Rule(s) : If-match acl 3000
Behavior: b_deny
Filter Enable: deny
在接口GE2/0/1的入方向上,匹配过滤条件的TCP报文无法通过,其它流量则不受到任何影响。
#
acl number 3000
rule 0 permit tcp source 10.0.0.2 0 source-port eq 8081 destination 10.0.0.3 0 destination-port eq 8080
#
vlan 1
#
traffic classifier c_deny operator and
if-match acl 3000
#
traffic behavior b_deny
filter deny
#
qos policy Q_deny
classifier c_deny behavior b_deny
#
interface GigabitEthernet2/0/1
port link-mode bridge
qos apply policy Q_deny inbound
#
如图3所示,要求在接口GE2/0/1的入方向上配置IPv6高级ACL识别源IPv6地址为2001::1、目的IPv6地址为2001::2的ICMPv6 Request报文,并对识别出的报文进行过滤处理。
图3 IPv6高级ACL配置组网图
本举例是在S12500-CMW520-R1825P01版本上进行配置和验证的。
由于不同类型单板支持IPv6 ACL的情况不同,因此先要判断GE2/0/1所在单板是哪一类单板。
· 如果是EB/EC2类单板(丝印后缀为EB、EC2),则要确保该单板工作在ACL高级模式(通过display acl mode可以查看当前ACL工作模式),否则该单板不支持IPv6 ACL。通过acl mode { standard | advanced }命令可以修改ACL工作模式(缺省情况下,EB/EC2类单板工作在ACL高级模式)。
· 如果是EC1/EF类单板(丝印后缀为EC1、EF),则要在系统视图下执行acl ipv6 enable命令后,该单板才支持IPv6 ACL(缺省情况下,不支持IPv6 ACL)。
本例中假设2号槽位的单板为EB类单板,ACL工作模式为缺省情况。
# 创建IPv6高级ACL 3000并进入相应视图。
<Switch> system-view
[Switch] acl ipv6 number 3000
# 配置ACL规则,指定源和目的IPv6地址,协议类型选择icmpv6,ICMPv6消息名称为echo-request。
[Switch-acl6-adv-3000] rule permit icmpv6 icmp6-type echo-request source 2001::1 128 destination 2001::2 128
[Switch-acl6-adv-3000] quit
# 配置流分类c_deny引用IPv6高级ACL 3000。
[Switch] traffic classifier c_deny
[Switch-classifier-c_deny] if-match acl ipv6 3000
[Switch-classifier-c_deny] quit
# 配置流行为b_deny的动作为丢弃数据包。
[Switch] traffic behavior b_deny
[Switch-behavior-b_deny] filter deny
[Switch-behavior-b_deny] quit
# 配置QoS策略Q_deny,将相应的流分类和流行为关联。
[Switch] qos policy Q_deny
[Switch-qospolicy-Q_deny] classifier c_deny behavior b_deny
[Switch-qospolicy-Q_deny] quit
# 将策略Q_deny应用到接口G2/0/1的入方向。
[Switch] interface GigabitEthernet 2/0/1
[Switch-GigabitEthernet2/0/1] undo shutdown
[Switch-GigabitEthernet2/0/1] qos apply policy Q_deny inbound
[Switch-GigabitEthernet2/0/1] quit
# 查看Switch的接口GE2/0/1上所配置的QoS策略信息。
[Switch] display qos policy interface GigabitEthernet 2/0/1
Interface: GigabitEthernet2/0/1
Direction: Inbound
Policy: Q_deny
Classifier: c_deny
Operator: AND
Rule(s) : If-match acl ipv6 3000
Behavior: b_deny
Filter Enable: deny
在接口GE2/0/1入方向上,匹配过滤条件的报文无法通过,其它流量则不受到任何影响。
#
acl ipv6 number 3000
rule 0 permit icmpv6 source 2001::1/128 destination 2001::2/128 icmp6-type echo-request
#
vlan 1
#
traffic classifier c_deny operator and
if-match acl ipv6 3000
#
traffic behavior b_deny
filter deny
#
qos policy Q_deny
classifier c_deny behavior b_deny
#
interface GigabitEthernet2/0/1
port link-mode bridge
qos apply policy Q_deny inbound
#
如图4所示,在Switch上配置用户自定义ACL规则过滤掉所有从GE2/0/1接口进来的ARP请求报文。
图4 用户自定义ACL配置组网图
本举例是在S12500-CMW520-R1825P01版本上进行配置和验证的。
· 由于不同类型单板支持用户自定义ACL的情况不同,因此先要判断GE2/0/1所在单板是哪一类单板。
¡ 如果是EB/EC2类单板(丝印后缀为EB、EC2),则要确保该单板工作在ACL高级模式(通过display acl mode可以查看当前ACL工作模式),否则该单板不支持用户自定义ACL。通过acl mode { standard | advanced }命令可以修改ACL工作模式(缺省情况下,EB/EC2类单板工作在ACL高级模式)。
¡ 如果是EC1/EF类单板(丝印后缀为EC1、EF),则要在系统视图下执行acl ipv6 enable命令后,该单板才支持用户自定义ACL(缺省情况下,不支持用户自定义ACL)。
¡ 本例中假设2号槽位的单板为EB类单板,ACL工作模式为缺省情况。
· 与其他类型ACL不同,用户自定义使用rule命令创建规则时,如果指定编号的规则已存在,不会在旧规则原有内容的基础上叠加新的内容,而是直接对旧规则进行覆盖,即重新创建了该编号的规则,原有该编号的旧规则被删除。
· 用户自定义ACL的匹配顺序为配置顺序,即按照规则编号由小到大进行匹配。
# 创建用户自定义ACL 5000并进入相应视图。
<Switch> system-view
[Switch] acl number 5000
# 配置ACL规则:为匹配ARP请求报文,需要从L3报文头-2字节开始偏移(对应关键字l2)。ARP请求报文的以太网协议类型字段取值为0x0806,操作类型字段(OP)取值为0x0001。从以太网首部的协议类型字段开始计算,以太网协议类型字段的偏移量为0字节,操作类型字段的偏移量为8字节。
[Switch-acl-user-5000] rule permit l2 0806 ffff 0 l2 0001 ffff 8
[Switch-acl-user-5000] quit
# 配置流分类c_deny引用ACL 5000。
[Switch] traffic classifier c_deny
[Switch-classifier-c_deny] if-match acl 5000
[Switch-classifier-c_deny] quit
# 配置流行为b_deny的动作为丢弃数据包。
[Switch] traffic behavior b_deny
[Switch-behavior-b_deny] filter deny
[Switch-behavior-b_deny] quit
# 配置QoS策略Q_deny,将相应的流分类和流行为关联。
[Switch] qos policy Q_deny
[Switch-qospolicy-Q_deny] classifier c_deny behavior b_deny
[Switch-qospolicy-Q_deny] quit
# 将策略Q_deny应用到接口G2/0/1的入方向。
[Switch] interface GigabitEthernet 2/0/1
[Switch-GigabitEthernet2/0/1] undo shutdown
[Switch-GigabitEthernet2/0/1] qos apply policy Q_deny inbound
[Switch-GigabitEthernet2/0/1] quit
# 在设备指定接口上查看所配置的QoS策略。
[Switch] display qos policy interface GigabitEthernet 2/0/1
Interface: GigabitEthernet2/0/1
Direction: Inbound
Policy: Q_deny
Classifier: c_deny
Operator: AND
Rule(s) : If-match acl 5000
Behavior: b_deny
Filter Enable: deny
通过接口GE2/0/1向设备发起的ARP请求报文得不到响应。设备上接口GE2/0/1入方向通行的流量中检测不到ARP Request的报文。
#
acl number 5000
rule 0 permit l2 08060000000000000001 ffff000000000000ffff 0
#
vlan 1
#
traffic classifier c_deny operator and
if-match acl 5000
#
traffic behavior b_deny
filter deny
#
qos policy Q_deny
classifier c_deny behavior b_deny
#
interface GigabitEthernet2/0/1
port link-mode bridge
qos apply policy Q_deny inbound
#
· 《H3C S12500系列路由交换机 ACL和QoS配置指导》中的“ACL”
· 《H3C S12500系列路由交换机 ACL和QoS命令参考》中的“ACL”
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!