02-QACL典型配置案例
本章节下载 (264.55 KB)
QACL典型配置举例
关键词:ACL,QoS
摘 要:本文主要介绍以太网交换机的QACL功能在具体组网中的应用配置,根据用户不同的需求,分别介绍基于时间段的ACL、流量监管、优先级重标记、队列调度、流量统计、端口重定向、本地流镜像以及WEB Cache重定向的功能及应用。
缩略语:ACL(Access Control List,访问控制列表)、QoS(Quality of Service,服务质量)
表1-1 H3C低端交换机支持的ACL/QoS功能列表
产品型号 功能 |
S3600-EI |
S3600-SI |
S5600 |
S5100-EI |
S5100-SI |
S3100-SI |
E352/E328 |
E126 |
基本ACL |
l |
l |
l |
l |
l |
l |
l |
l |
高级ACL |
l |
l |
l |
l |
l |
l |
l |
l |
二层ACL |
l |
l |
l |
l |
- |
- |
l |
- |
用户自定义ACL |
l |
l |
l |
- |
- |
- |
l |
- |
ACL被上层软件引用 |
l |
l |
l |
l |
l |
l |
l |
l |
ACL下发到硬件 |
l |
l |
l |
l |
- |
- |
l |
- |
流分类 |
l |
l |
l |
l |
- |
- |
l |
- |
优先级重标记 |
l |
l |
l |
l |
- |
- |
l |
- |
端口限速 |
l |
l |
l |
- |
l |
l |
l |
l |
流量监管 |
l |
l |
l |
l |
- |
- |
l |
- |
流量整形 |
- |
- |
- |
l |
- |
- |
- |
- |
端口重定向 |
l |
l |
l |
l |
- |
- |
l |
- |
队列调度 |
l |
l |
l |
l |
l |
l |
l |
l |
拥塞避免 |
l |
l |
- |
- |
- |
- |
l |
- |
本地流镜像 |
l |
l |
l |
l |
- |
- |
l |
- |
流量统计 |
l |
l |
l |
l |
- |
- |
l |
- |
WEB Cache重定向 |
l |
- |
- |
- |
- |
- |
- |
- |
& 说明:
有关各款交换机支持的ACL/QoS功能的详细介绍,请参见各产品的操作手册。
& 说明:
l 不同型号的设备,配置的方法会有差异,这里以H3C S3600系列以太网交换机为例。其它型号交换机的配置请参见产品的用户手册。
l 下文只列出了基本的配置步骤,有关各个功能的基本原理和作用,请参见各产品的操作、命令手册。
表1-2 系统视图下的ACL/QoS配置
配置 |
命令 |
说明 |
创建ACL并进入相应视图 |
acl number acl-number [ match-order { config | auto } ] |
缺省情况下,匹配顺序为config 二层ACL及用户自定义ACL不支持match-order参数 |
定义ACL规则 |
rule [ rule-id ] { permit | deny } rule-string |
对于不同类型的ACL,rule-string的内容不同,具体请参见产品的命令手册 |
系统视图下配置队列调度算法 |
queue-scheduler { strict-priority | wfq queue0-width queue1-width queue2-width queue3-width queue4-width queue5-width queue6-width queue7-width | wrr queue0-weight queue1-weight queue2-weight queue3-weight queue4-weight queue5-weight queue6-weight queue7-weight } |
l 在WRR或WFQ方式中,如果某一个或多个队列的权值或最小带宽设为0,则对这个或这些队列实行严格优先级调度算法 l 缺省情况下,端口所有输出队列采用WRR队列调度方法,缺省权重为:1:2:3:4:5:9:13:15 l 在系统视图下用queue-scheduler命令定义的队列调度算法会在设备的所有端口上生效 |
拥塞避免配置 |
wred queue-index qstart probability |
- |
表1-3 端口视图下的ACL/QoS配置
配置 |
命令 |
说明 |
在端口上应用ACL |
packet-filter { inbound | outbound } acl-rule |
- |
设置交换机信任报文的优先级 |
priority trust |
用户可以通过配置实现交换机信任报文自身携带的优先级,而不使用接收端口的优先级来替换报文的优先级 |
基于端口的速率限制配置 |
line-rate { inbound | outbound } target-rate |
速率限制的粒度为64Kbps,如果用户输入的数字在N*64~(N+1)*64之间(N为自然数),交换机自动将该参数取值为(N+1)*64 |
引用ACL进行流识别,为匹配的报文重新指定优先级 |
traffic-priority { inbound | outbound } acl-rule { { dscp dscp-value | ip-precedence { pre-value | from-cos } } | cos { pre-value | from-ipprec } | local-precedence pre-value }* |
用户可以重标记报文的IP优先级、802.1p优先级、DSCP优先级和本地队列的优先级 |
基于流的流量监管配置 |
traffic-limit inbound acl-rule target-rate [ exceed action ] |
exceed action:设定报文流量超过设定流量时设备对超过部分的报文采取的动作,有如下动作: l drop:丢弃报文 l remark-dscp value:重新设置报文的DSCP优先级,同时转发报文 |
端口视图下配置队列调度算法 |
queue-scheduler { wfq queue0-width queue1-width queue2-width queue3-width queue4-width queue5-width queue6-width queue7-width | wrr queue0-weight queue1-weight queue2-weight queue3-weight queue4-weight queue5-weight queue6-weight queue7-weight } |
l 在以太网端口视图下用queue-scheduler命令定义的队列调度算法只在当前端口生效 l 如果全局定义的WRR(或WFQ)队列调度算法中各队列的权值(或带宽值)不能满足某一端口的需求,用户可在此端口视图下修改其队列权值(或带宽值) l 在此端口上,新定义的队列权值(或带宽值)会覆盖全局定义的队列权值(或带宽值) l 在端口视图下定义的队列权值(或带宽值)不能用display queue-scheduler命令来显示 |
重定向配置 |
traffic-redirect { inbound | outbound } acl-rule { cpu | interface interface-type interface-number } |
当报文被重定向到CPU后,将不能正常转发 |
引用ACL进行流识别,对匹配的报文进行流量统计 |
traffic-statistic inbound acl-rule |
- |
图2-1为某公司的网络拓扑图,具体环境如下:
l S3600交换机作为公司的中心交换机,软件版本为Release 1510;
l 公司内部通过服务器Server1访问Internet,Server1通过端口GigabitEthernet1/1/1接入交换机;
l Server2、Server3、Server4分别为公司内部的数据服务器、邮件服务器、文件服务器,通过端口GigabitEthernet1/1/2接入交换机;
l Data Detect Server为公司的数据检测设备,通过端口Ethernet1/0/20接入交换机;
l PC1、PC2、PC3、PC4为公司的客户端,分别通过端口Ethernet1/0/1、Ethernet1/0/2、Ethernet1/0/3、Ethernet1/0/4接入交换机。
公司通过服务器Server1访问Internet,具体需求如下:
l 在工作日的8:30到18:00限制客户端通过HTTP方式访问Internet,在其它时段可以访问,访问Internet的最大流量为100M;
l 限制PC 1发出IP优先级为7的报文的速率为20M,将速率超过20M的此类报文的DSCP优先级修改为ef;
l 限制PC 2发出的CoS优先级为5的报文的速率为10M,将速率超过10M的此类报文丢弃。
图2-2 配置基于时间段的ACL+端口带宽限制+流量监管组网图
# 配置工作日时间段。
<H3C> system-view
System View: return to User View with Ctrl+Z.
[H3C] time-range a001 8:30 to 18:00 working-day
# 配置非工作日时间段。
[H3C] time-range a002 00:00 to 8:30 working-day
[H3C] time-range a002 18:00 to 24:00 working-day
[H3C] time-range a002 00:00 to 24:00 off-day
# 定义ACL 3010,禁止客户端在工作日时间段内通过HTTP方式访问Internet;对在非工作时间段内PC 1访问Internet的IP优先级为7的报文进行分类标识。
[H3C] acl number 3010
[H3C-acl-adv-3010] rule 0 deny tcp destination 10.0.0.1 0 destination-port eq 80 time-range a001
[H3C-acl-adv-3010] rule 1 permit ip source 10.0.0.10 0 precedence 7 time-range a002
[H3C-acl-adv-3010] quit
# 定义ACL 4010,对在非工作时间段内PC 2访问Internet的CoS优先级为5的报文进行分类标识。
[H3C] acl number 4010
[H3C-acl-ethernetframe-4010] rule 0 permit cos 5 source 0012-0990-2241 ffff-ffff-ffff time-range a002
[H3C-acl-ethernetframe-4010] quit
# 在连接Server1的端口GigabitEthernet1/1/1上应用ACL 3010的rule 0规则,并且限制客户端访问Internet的最大流量为100M。
[H3C] interface GigabitEthernet 1/1/1
[H3C-GigabitEthernet1/1/1] packet-filter outbound ip-group 3010 rule 0
[H3C-GigabitEthernet1/1/1] line-rate outbound 102400
[H3C-GigabitEthernet1/1/1] quit
# 在连接PC 1的端口Ethernet1/0/1上对ACL 3010的rule 1标识的报文进行流量监管,限制流量为20M,并将超出流量的报文的DSCP优先级修改为ef。
[H3C] interface Ethernet 1/0/1
[H3C-Ethernet1/0/1] traffic-limit inbound ip-group 3010 rule 1 20480 exceed remark-dscp ef
[H3C-Ethernet1/0/1] quit
# 在连接PC 2的端口Ethernet1/0/2上对ACL 4010的rule 0标识的报文进行流量监管,限制流量为10M,并将超出流量的报文丢弃。
[H3C] interface Ethernet 1/0/2
[H3C-Ethernet1/0/2] traffic-limit inbound link-group 4010 rule 0 10240 exceed drop
需要注意的是,在使用traffic-limit命令对报文进行流量监管时,仅对ACL中动作为permit的规则有效。
Server2、Server3、Server4分别为公司内部的数据服务器、邮件服务器、文件服务器,具体需求如下:
l 要求交换机优先处理访问数据服务器的报文,其次处理访问邮件服务器的报文,最后处理访问文件服务器的报文;
l 配置端口GigabitEthernet1/1/2采用WRR队列优先级算法,各出队列的权重分别为1:1:1:5:1:10:1:15;
l 配置端口GigabitEthernet1/1/2上索引值为4的队列使用WRED,当该队列的长度超过64个报文时,对后续报文进行随机丢弃,丢弃概率为20%;
l 配置端口Ethernet1/0/3信任报文自己的优先级,不使用端口的优先级替换报文的优先级。
图2-3 配置优先级重新标记+队列调度算法+拥塞避免+报文优先级信任组网图
# 定义ACL 3020,根据不同的目的IP地址对报文进行分类标识。
<H3C> system-view
System View: return to User View with Ctrl+Z.
[H3C] acl number 3020
[H3C-acl-adv-3020] rule 0 permit ip destination 10.0.0.2 0
[H3C-acl-adv-3020] rule 1 permit ip destination 10.0.0.3 0
[H3C-acl-adv-3020] rule 2 permit ip destination 10.0.0.4 0
[H3C-acl-adv-3020] quit
# 在端口GigabitEthernet1/1/2上对匹配ACL 3020内规则的报文进行优先级重标记。
[H3C] interface GigabitEthernet 1/1/2
[H3C-GigabitEthernet1/1/2] traffic-priority outbound ip-group 3020 rule 0 local-precedence 7
[H3C-GigabitEthernet1/1/2] traffic-priority outbound ip-group 3020 rule 1 local-precedence 5
[H3C-GigabitEthernet1/1/2] traffic-priority outbound ip-group 3020 rule 2 local-precedence 3
# 在端口GigabitEthernet1/1/2上配置WRR队列调度算法,出队列权重为1:1:1:5:1:10:1:15。
[H3C-GigabitEthernet1/1/2] queue-scheduler wrr 1 1 1 5 1 10 1 15
# 为端口GigabitEthernet1/1/2上索引值为4的队列配置WRED,当该队列的长度超过64个报文时,对后续报文进行随机丢弃,丢弃概率为20%。
[H3C-GigabitEthernet1/1/2] wred 4 64 20
[H3C-GigabitEthernet1/1/2] quit
# 在连接PC 3的端口Ethernet1/0/3上配置该端口信任报文自己带有的802.1p优先级。
[H3C] interface Ethernet 1/0/3
[H3C-Ethernet1/0/3] priority trust
需要注意的是,在使用traffic-priority命令对报文进行优先级重标记时,仅对ACL中动作为permit的规则有效。
Data Detect Server为数据检测设备,通过端口Ethernet1/0/20接入交换机,具体需求如下:
l 统计在非工作日时间段内通过端口Ethernet1/0/1的以HTTP方式访问Internet的流量;
l 将工作日时间段内通过端口Ethernet1/0/1的以HTTP方式访问Internet的流量全部重定向到端口Ethernet1/0/20。
图2-4 配置流量统计+端口重定向组网图
# 配置工作日时间段。
<H3C> system-view
System View: return to User View with Ctrl+Z.
[H3C] time-range a001 8:30 to 18:00 working-day
# 配置非工作日时间段。
[H3C] time-range a002 00:00 to 8:30 working-day
[H3C] time-range a002 18:00 to 24:00 working-day
[H3C] time-range a002 00:00 to 24:00 off-day
# 定义ACL 3030,根据不同的时间段对通过HTTP方式访问Internet的报文进行分类。
[H3C] acl number 3030
[H3C-acl-adv-3030] rule 0 permit tcp destination 10.0.0.1 0 destination-port eq 80 time-range a001
[H3C-acl-adv-3030] rule 1 permit tcp destination 10.0.0.1 0 destination-port eq 80 time-range a002
# 在端口Ethernet1/0/1上配置流量重定向,将工作时间段内通过HTTP方式访问Internet的流量全部重定向到端口Ethernet1/0/20。
[H3C] interface Ethernet 1/0/1
[H3C-Ethernet1/0/1] traffic-redirect inbound ip 3030 rule 0 interface Ethernet 1/0/20
# 在端口Ethernet1/0/1上对非工作时间段内通过HTTP方式访问Internet的流量进行统计。
[H3C-Ethernet1/0/1] traffic-statistic inbound ip-group 3030 rule 1
需要注意的是,在使用traffic-redirect和traffic-statistic命令进行流量重定向和流量统计时,仅对ACL中动作为permit的规则有效。
Data Detect Server为数据检测设备,通过端口Ethernet1/0/20接入交换机,要求将工作日时间段内通过端口Ethernet1/0/1与Ethernet1/0/2的以HTTP方式访问Internet的报文全部镜像到端口Ethernet1/0/20,然后使用数据检测设备分析这些报文。
图2-5 配置流镜像组网图
# 配置工作日时间段。
<H3C> system-view
System View: return to User View with Ctrl+Z.
[H3C] time-range a001 8:30 to 18:00 working-day
# 定义ACL 3030,对工作日时间段内通过HTTP方式访问Internet的报文进行分类。
[H3C] acl number 3030
[H3C-acl-adv-3030] rule 0 permit tcp destination 10.0.0.1 0 destination-port eq 80 time-range a001
[H3C-acl-adv-3030] quit
# 将端口Ethernet1/0/20配置为镜像目的端口。
[H3C] interface Ethernet 1/0/20
[H3C-Ethernet1/0/20] monitor-port
[H3C-Ethernet1/0/20] quit
# 在端口Ethernet1/0/1和Ethernet1/0/2上配置流镜像,通过ACL 3010进行流识别,将匹配该ACL的报文镜像到目的端口Ethernet1/0/20。
[H3C] interface Ethernet 1/0/1
[H3C-Ethernet1/0/1] mirrored-to inbound ip-group 3010 rule 0 monitor-interface
[H3C-Ethernet1/0/1] quit
[H3C] interface Ethernet 1/0/2
[H3C-Ethernet1/0/2] mirrored-to inbound ip-group 3010 rule 0 monitor-interface
需要注意的是,在使用mirrored-to命令进行流镜像时,仅对ACL中动作为permit的规则有效。
配置中请注意如下事项:
(1) 在端口上下发ACL规则时,此时一条ACL中多个规则的匹配顺序是由交换机的硬件决定的,S3600系列以太网交换机的匹配顺序为先下发后生效。用户即使在定义ACL时配置了匹配顺序,该匹配顺序也不起作用。
(2) 每个端口支持8个出队列,队列7到队列0优先级依次降低。当端口采用SP+WRR队列调度算法时,设备会按照严格优先级优先调度权值为0的队列,当队列中没有报文发送时,才会对剩余的队列进行WRR调度;当端口采用SP+WFQ队列调度算法时,设备会按照严格优先级优先调度带宽为0的队列,当队列中没有报文发送时,才会对剩余的队列进行WFQ调度。
(3) 设备上可以配置多个镜像源端口,但只能配置一个镜像目的端口。建议镜像目的端口只用于转发镜像流量,不要作为业务端口使用,否则可能会影响正常业务。
(4) 如下命令只能匹配动作为permit的ACL规则:traffic-limit,traffic-priority、traffic-redirect、mirrored-to。
(5) 对于高级ACL中TCP/UDP端口号的匹配:只支持配置操作符为eq。
(6) 对于二层ACL,不支持配置format-type(包括802.3/802.2、802.3、ether_ii、snap)参数。
(7) 重定向的报文无论出端口是否tagged,报文都会带上tag。
(8) 配置用户自定义ACL时,偏移量长度的设置需要考虑如下情况:
l 如果没有开启VLAN-VPN功能,交换机内部处理的报文都带有1层VLAN tag,1层VLAN tag占4个字节。
l 如果某一端口上开启了VLAN-VPN功能,交换机内部处理的报文都带有2层VLAN tag,2层VLAN tag占8个字节。
常用协议类型号以及偏移量如下表所示。
表2-1 常用协议类型号以及偏移量
协议类型 |
协议号 |
没有使能VLAN VPN功能时的偏移量 |
使能VLAN VPN功能后的偏移量 |
ARP |
0x0806 |
16 |
20 |
RARP |
0x8035 |
16 |
20 |
IP |
0x0800 |
16 |
20 |
IPX |
0x8137 |
16 |
20 |
AppleTalk |
0x809B |
16 |
20 |
ICMP |
0x01 |
27 |
31 |
IGMP |
0x02 |
27 |
31 |
TCP |
0x06 |
27 |
31 |
UDP |
0x17 |
27 |
31 |
其它引用ACL规则的功能包括:
l Telnet/SNMP/WEB登录用户控制,其中Telnet用户可引用ACL 2000~4999,SNMP/WEB用户可引用的ACL 2000~2999;
l 路由策略匹配规则中引用ACL,可以引用ACL 2000~3999;
l 路由信息过滤中引用ACL,可以引用ACL 2000~3999;
l 显示匹配ACL规则的路由表项,可以引用ACL 2000~3999;
l 显示匹配ACL规则的FIB表项,可以引用ACL 2000~3999;
l TFTP客户端连接TFTP服务器引用ACL规则,可以引用ACL 2000~3999。
引用系统ACL规则的功能包括:
l 802.1x功能 (全局及端口使能后802.1x下发ACL规则);
l 集群功能 (缺省使能,在所有端口下发ACL规则),其中ACL 3998与3999是系统为集群管理预留的编号,用户无法配置;
l DHCP Snooping (使能后在所有端口下发ACL规则);
l 端口隔离 (配置且存在虚接口时下发ACL规则);
l MAC + IP端口绑定 (在端口上配置绑定策略后下发ACL规则);
l 灵活QinQ (在端口配置灵活QinQ后,根据用户配置的范围下发ACL规则);
l Voice VLAN (在端口使能Voice VLAN并存在OUIMAC时添加ACL规则)。
& 说明:
目前仅S3600-EI系列以太网交换机支持WEB Cache重定向功能。
某公司的网络拓扑如图3-1所示,具体环境如下:
l S3600交换机作为公司的中心交换机,软件版本为Release 1510;
l 市场部门通过端口Ethernet1/0/1接入交换机,属于VLAN 10,网段为192.168.1.1/24;
l 研发部门通过端口Ethernet1/0/2接入交换机,属于VLAN 20,网段为192.168.2.1/24;
l 管理部门通过端口Ethernet1/0/3接入交换机,属于VLAN 30,网段为192.168.3.1/24;
l WEB Cache Server通过端口Ethernet1/0/4接入交换机,属于VLAN 40,网段为192.168.4.1/24。WEB Cache Server的IP地址为192.168.4.2,MAC地址为0012-0990-2250。
要求启动交换机的WEB Cache重定向功能,将市场部门、研发部门和管理部门的HTTP报文全部重定向到WEB Cache Server,减少广域网连接链路的压力,同时提高获取因特网信息的速度。
图3-1 配置WEB Cache重定向组网图
# 创建市场部门所属的VLAN 10,配置VLAN 10接口的IP地址为192.168.1.1。
<H3C> system-view
System View: return to User View with Ctrl+Z.
[H3C] vlan 10
[H3C-vlan10] port Ethernet 1/0/1
[H3C-vlan10] quit
[H3C] interface Vlan-interface 10
[H3C-Vlan-interface10] ip address 192.168.1.1 24
[H3C-Vlan-interface10] quit
# 创建研发部门所属的VLAN 20,配置VLAN 20接口的IP地址为192.168.2.1。
[H3C] vlan 20
[H3C-vlan20] port Ethernet 1/0/2
[H3C-vlan20] quit
[H3C] interface Vlan-interface 20
[H3C-Vlan-interface20] ip address 192.168.2.1 24
[H3C-Vlan-interface20] quit
# 创建管理部门所属的VLAN 30,配置VLAN 30接口的IP地址为192.168.3.1。
[H3C] vlan 30
[H3C-vlan30] port Ethernet 1/0/3
[H3C-vlan30] quit
[H3C] interface Vlan-interface 30
[H3C-Vlan-interface30] ip address 192.168.3.1 24
[H3C-Vlan-interface30] quit
# 创建WEB Cache Server所属的VLAN 40,配置VLAN 40接口的IP地址为192.168.4.1。
[H3C] vlan 40
[H3C-vlan40] port Ethernet 1/0/4
[H3C-vlan30] quit
[H3C] interface Vlan-interface 40
[H3C-Vlan-interface40] ip address 192.168.4.1 24
[H3C-Vlan-interface40] quit
# 配置WEB Cache重定向功能,将VLAN 10、VLAN 20和VLAN 30接收到的HTTP报文全部重定向到WEB Cache Server。
[H3C] webcache address 192.168.4.2 mac 0012-0990-2250 vlan 40 port Ethernet 1/0/4
[H3C] webcache redirect-vlan 10
[H3C] webcache redirect-vlan 20
[H3C] webcache redirect-vlan 30
需要注意的是,本例中WEB Cache Server所属的VLAN 40的接口和参与WEB Cache重定向的VLAN 10、VLAN 20和VLAN 30的接口必须处于UP状态,否则WEB Cache重定向功能不会生效。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!