1、华为 ACL 配置教程一、ACL 基本配置1、ACL 规则生效时间段配置(需要先配置设备的时间,建议用 ntp 同步时间)某些引用 ACL 的业务或功能需要限制在一定的时间范围内生效,比如,在流量高峰期时启动设备的 QoS 功能。用户可以为 ACL 创建生效时间段,通过在规则中引用时间段信息限制 ACL 生效的时间范围,从而达到该业务或功能在一定的时间范围内生效的目的。Huaweitime-range test ?Starting timefrom The beginning point of the time rangeHuaweitime-range test 8:00 ?to The e
2、nding point of periodic time-rangeHuaweitime-range test 8:00 t Huaweitime-range test 8:00 to ?Ending TimeHuaweitime-range test 8:00 to 18:05 ?Day of the week(0 is Sunday)Fri Friday #星期五Mon Monday #星期一Sat Saturday #星期六Sun Sunday #星期天Thu Thursday # 星期四Tue Tuesday # 星期二Wed Wednesday #星期三daily Every day
3、 of the week # 每天off-day Saturday and Sunday # 星期六和星期日working-day Monday to Friday #工作日每一天Huaweitime-range test from 8:00 2016/1/17 to 18:00 2016/11/17使用同一 time-name 可以配置多条不同的时间段,以达到这样的效果:各周期时间段之间以及各绝对时间段之间分别取并集之后,再取二者的交集作为最终生效的时间范围。例如,时间段“test”配置了三个生效时段:从 2016 年 1 月 1 日 00:00 起到 2016 年 12 月 31 日 23
4、:59 生效,这是一个绝对时间段。在周一到周五每天 8:00 到 18:00 生效,这是一个周期时间段。在周六、周日下午 14:00 到 18:00 生效,这是一个周期时间段。则时间段“test”最终描述的时间范围为:2016 年的周一到周五每天 8:00到 18:00 以及周六和周日下午 14:00 到 18:00。由于网络延迟等原因,可能造成网络上设备时间不同步,建议配置NTP(Network Time Protocol),以保证网络上时间的一致。2、ACL 类型配置2.1、数字型 acl 配置Huaweiacl 2000 match-order ?auto Auto order #自动顺
5、序(默认)config Config order或Huaweiacl number 2000 match-order ?auto Auto orderconfig Config order2.2、命名型 acl 配置Huaweiacl name test ?advance Specify an advanced named ACL # 设置高级 aclbasic Specify a basic named ACLmatch-order Set ACLs match ordernumber Specify a number for the named ACLHuaweiacl name test
6、 ad Huaweiacl name test advance ?match-order Set ACLs match ordernumber Specify a number for the named ACLHuaweiacl name test number ?INTEGER Number of the basic named ACLINTEGER Number of the advanced named ACL2.3、ACL 类型配置Huaweiacl ?INTEGER Interface access-list(add to current using rules) # 接口访问列表
7、 aclINTEGER Apply MPLS ACL # 应用 MPLS ACLINTEGER Basic access-list (add to current using rules) # 基本 aclINTEGER Advanced access-list(add to current using rules) # 高级 aclINTEGER MAC address access-list(add to current using rules) # 二层 aclipv6 ACL IPv6 # 基本 acl6 和高级 acl6 配置name Specify a named ACLnumbe
8、r Specify a numbered ACL2.4、ACL 描述设置(可选)Huawei-acl-basic-2600description ?TEXT2.5、ACL 步长设置(可选)Huawei-acl-basic-teststep ?INTEGER Specify value of step二、ACL 类型规则配置1、基本 ACL 规则配置基本 ACL 编号 acl-number 的范围是 20002999。基本 ACL 可以根据报文自身的源 IP 地址、分片标记和时间段信息对 IPv4报文进行分类。Huawei-acl-basic-testrule 1 ?deny Specify m
9、atched packet denypermit Specify matched packet permitHuawei-acl-basic-testrule 1 deny ?fragment-type Specify the fragment type of packet # 分组片段类型source Specify source addresstime-range Specify a special timevpn-instance Specify a VPN-InstanceHuawei-acl-basic-testrule 1 deny source ?X.X.X.X Address
10、of sourceany Any sourceHuawei-acl-basic-testrule 1 deny source 192.168.1.1 ?0 Wildcard bits : 0.0.0.0 ( a host )X.X.X.X Wildcard of sourceHuawei-acl-basic-testrule 1 deny source 192.168.1.1 0 ?fragment-type Specify the fragment type of packet # 对分组片段类型有效time-range Specify a special time # 引用生效时间vpn-
11、instance Specify a VPN-Instance # 用于 vpnHuawei-acl-basic-2600description ? #配置规则描述TEXT ACL description (no more than 127 characters)在 ACL 中配置首条规则时,如果未指定参数 rule-id,设备使用步长值作为规则的起始编号。后续配置规则如仍未指定参数 rule-id,设备则使用最后一个规则的 rule-id 的下一个步长的整数倍数值作为规则编号。例如 ACL 中包含规则 rule 5 和 rule 7,ACL 的步长为 5,则系统分配给新配置的未指定 rule
12、-id 的规则的编号为 10。当用户指定参数 time-range 引入 ACL 规则生效时间段时,如果 time-name不存在,该规则将无法绑定该生效时间段。如果不指定参数 vpn-instance vpn-instance-name,设备会对公网和私网的报文均进行匹配。设备在收到报文时,会按照匹配顺序将报文与 ACL 规则进行逐条匹配,一旦匹配上规则组内的某条规则,则停止匹配动作。之后,设备将依据匹配的规则对报文执行相应的动作。2、高级 ACL 规则配置高级 ACL 编号 acl-number 的范围是 30003999。高级 acl 主要对源/目的 IP 地址、端口号、优先级、时间段等
13、报文进行过滤。Huawei-acl-adv-3000rule 1 permit ?Protocol numbergre GRE tunneling(47)icmp Internet Control Message Protocol(1)igmp Internet Group Management Protocol(2)ip Any IP protocolipinip IP in IP tunneling(4)ospf OSPF routing protocol(89)tcp Transmission Control Protocol (6)udp User Datagram Protocol
14、(17)Huawei-acl-adv-3000rule 1 permit udp ?destination Specify destination addressdestination-port Specify destination portdscp Specify dscpfragment-type Specify the fragment type of packetprecedence Specify precedencesource Specify source addresssource-port Specify source porttime-range Specify a sp
15、ecial timetos Specify tosvpn-instance Specify a VPN-InstanceHuawei-acl-adv-3000rule 1 permit udp source ?X.X.X.X Address of sourceany Any sourceHuawei-acl-adv-3000rule 1 permit udp source any ?destination Specify destination addressdestination-port Specify destination portdscp Specify dscpfragment-t
16、ype Specify the fragment type of packetprecedence Specify precedencesource-port Specify source porttime-range Specify a special timetos Specify tosvpn-instance Specify a VPN-InstanceHuawei-acl-adv-3000rule 1 permit udp source any des Huawei-acl-adv-3000rule 1 permit udp source any destination ?X.X.X
17、.X Specify destination addressany Any destination IP addressHuawei-acl-adv-3000rule 1 permit udp source any destination 192.168.1.1 ?0 Wildcard bits : 0.0.0.0 ( a host )X.X.X.X Wildcard of destinationHuawei-acl-adv-3000rule 1 permit udp source any destination 192.168.1.1 0 ?destination-port Specify
18、destination portdscp Specify dscpfragment-type Specify the fragment type of packetprecedence Specify precedencesource-port Specify source porttime-range Specify a special timetos Specify tosvpn-instance Specify a VPN-InstanceHuawei-acl-adv-3000rule 1 permit udp source any destination 192.168.1.1 0 d
19、estination-port ?eq Equal to given port numbergt Greater than given port numberlt Less than given port numberneq Not equal to given port number # 不等于指定端口range Between two port numbersHuawei-acl-adv-3000rule 1 permit udp source any destination 192.168.1.1 0 destination-port eq ?Protocol numberbiff Ma
20、il notify (512)bootpc Bootstrap Protocol Client (68)bootps Bootstrap Protocol Server (67)discard Discard (9)dns Domain Name Service (53)dnsix DNSIX Security Attribute Token Map (90)echo Echo (7)mobilip-ag MobileIP-Agent (434)mobilip-mn MobilIP-MN (435)nameserver Host Name Server (42)netbios-dgm NETB
21、IOS Datagram Service (138)netbios-ns NETBIOS Name Service (137)netbios-ssn NETBIOS Session Service (139)ntp Network Time Protocol (123)rip Routing Information Protocol (520)snmp SNMP (161)snmptrap SNMPTRAP (162)sunrpc SUN Remote Procedure Call (111)syslog Syslog (514)tacacs-ds TACACS-Database Servic
22、e (65)talk Talk (517)tftp Trivial File Transfer (69)time Time (37)who Who(513)xdmcp X Display Manager Control Protocol (177)Huawei-acl-adv-3000rule 1 permit udp source any destination 192.168.1.1 0 destination-port eq 21 ?dscp Specify dscpfragment-type Specify the fragment type of packetprecedence S
23、pecify precedencesource-port Specify source porttime-range Specify a special timetos Specify tosvpn-instance Specify a VPN-Instance高级 acl 可以匹配的功能有:2.1、高级 acl 常用协议数值对照表协议类型 数值ICMP 1IGMP 2IPinIP 4TCP 6UDP 17GRE 47IPOSPF 892.2、高级 acl 常用功能说明参数 说明deny 拒绝符合条件的报文permit 允许符合条件的报文sour-addr sour-wildcard:源 ip
24、 地址 源通配符掩码sourcesour-addr sour-wildcard|anyany:任意源 IP 地址dest-addr dest-wildcaard:目的 IP 地址及通配符掩码destinationdest-addr dest-wildcaard|anyany:任意目的 IP 地址icmp-typeicmp-name|icmp-type icmp-code指定 acl 规则匹配报文的 icmp 报文的类型和消息码信息,仅在报文协议是 ICMP 的情况下有效precedence 指定 acl 匹配报文时依据优先级字段进行过滤。与 tos 参数一起共同构成 DSCP 组成的二选一参数
25、。tos 指定 acl 匹配报文时依据服务类型字段进行过滤。与 precedence 参数一起共同构成 DSCP组成的二选一参数。dscp 指定 acl 匹配报文时区分服务代码点,依据IP 包中的 DSCP 优先级字段进行过滤。tcp-flag 指定 acl 规则匹配 TCP 报文中的 SYN 标志的类型time-range 指定 acl 规则生效时间段指定 acl 规则匹配报文的 UDP 或 TCP 的目的端口,仅在报文协议是 UDP 或 TCP 时生效。端口号可用名称或数字表示eq port :指定等于目的端口destination-porteq prot|gt port|lt port|
26、rage port-start port endgt port:指定大于目的端口lt port :指定小于目的端口range port-start port-end:指定目的端口范围 start 为起始端口 end 为结束端口soure-porteq prot|gt port|lt port|rage port-start port end指定 acl 规则匹配报文的 UDP 或 TCP 的源端口,仅在报文协议是 UDP 或 TCP 时生效。loging 指定 acl 匹配的报文信息进行日志记录fragmen 指定 acl 规则是否仅对非首片分片报文有效,当包含此参数时仅对非首片分片报文有效。
27、但此参数不能同时与 source-port、destination-port、icmp-type、tcp-flag 参数同时配置。ttl-expired 指定 acl 是否依据数据报文中的 ttl 值是否为 1 进行过滤。启用此命令表示过滤。5700SI 及以下版本不支持。举例:拒绝 192.168.1.0 网段与主机 61.128.128.68 进行 UDP 9090 通信Huawei-acl-adv-3002rule deny udp source 192.168.1.0 0.0.0.255 destination 61.128.128.68 0. destination-port eq
28、90903、二层 ACL 规则配置二层 ACL 编号 acl-number 的范围是 40004999。二层 acl 对源/目的 MAC、802.1p 优先级、二层协议等二层信息进行过滤。Huawei-acl-L2-4000rule 1 ?deny Specify matched packet denydescription Specify rule descriptionpermit Specify matched packet permitHuawei-acl-L2-4000rule 1 deny source-mac 1111-1111-1111 ?802.3 802.3 format8
29、021p Vlan priorityH-H-H Source MAC address mask, default is ffff-ffff-ffffcvlan-8021p Vlan priority of inner vlancvlan-id Inner vlan iddestination-mac Destination-macdouble-tag Double tagether-ii Ethernet II formatl2-protocol Layer 2 protocolsnap Snap formattime-range Specify a special timevlan-id V
30、lan idHuawei-acl-L2-4000rule 1 deny source-mac 1111-1111-1111 destination-mac ?H-H-H Destination MAC address valueHuawei-acl-L2-4000rule 1 deny source-mac 1111-1111-1111 destination-mac 2222-2222-2222 ?802.3 802.3 format8021p Vlan priorityH-H-H Destination MAC address mask, default is ffff-ffff-ffff
31、cvlan-8021p Vlan priority of inner vlancvlan-id Inner vlan iddouble-tag Double tagether-ii Ethernet II formatl2-protocol Layer 2 protocolsnap Snap formattime-range Specify a special timevlan-id Vlan id二层 acl 支持的常用功能二层 acl 支持的常用功能参数 说明802.3 8021p 指定 acl 规则匹配报文的外层vlan 的 8021p 优先级cvlan-8021p 指定 acl 规则匹
32、配报文的内层vlan 的 8021p 优先级指定 acl 规则匹配报文的内层vlan ID cvlan-id cvlan-idcvlan-id-mask cvlan-id-mask:指定内层 ID 值的掩码 十六进制destination-mac 指定 acl 规则匹配报文的目的mac 地址信息double-tag 指定 acl 匹配报文时匹配带双层tag 的报文ether-ii 指定 acl 规则匹配报文的帧封装格式l2-protocol 指定 acl 规则匹配报文的链路层协议类型snap source-mac 指定 acl 规则匹配报文的源 mac地址信息time-range vlan-i
33、d指定 acl 规则匹配报文的内层vlan ID4、用户自定义 ACL 规则配置用户自定义 ACL 编号 acl-number 的范围是 50005999。用户自定义 acl(简称 ucl),可以根据用户自定义的规则对数据报文做出相应的处理。用户自定义 ACL 支持的常用功能有用户自定义 ACL 支持的常用功能参数 说明STRING ipv4-head 指定从 ipv4 头部开始偏移ipv6-head 从 ipv6 头部开始偏移l2-head 从报文的二层头部开始 偏移l4-head 从四层协议头部开始偏 移time-range Huawei-acl-user-5000rule 1 deny
34、?STRING Rule string, the string must be hexadecimal and start with 0xipv4-head Offset from IP(v4) headipv6-head Offset from IP(v6) headl2-head Offset from l2 headl4-head Offset from L4 headtime-range Specify a special time5、用户 ACL 规则配置用户 ACL 编号 acl-number 的范围是 60006999。使用 IPv4 报文的源 IP 地址或源 UCL(User
35、Control List)组、目的地址或目的 UCL 组、IP 协议类型、ICMP 类型、TCP 源端口/目的端口、UDP 源端口/目的端口号等来定义规则。具体配置及参数同前。6、基本 ACL6 规则配置Huaweiacl ipv6 ?INTEGER Specify a basic ACL6INTEGER Specify an advanced ACL6name Specify a named ACL6number Specify a numbered ACL6Huawei-acl6-basic-2000rule 1 ?deny Specify matched packet denydescr
36、iption Specify rule descriptionpermit Specify matched packet permitHuawei-acl6-basic-2000rule 1 deny ?fragment Check fragment packetlogging Log matched packetsource Specify source addresstime-range Specify a special timeHuawei-acl6-basic-2000rule 1 deny source ?X:X:X:X IPv6 addressX:X:X:X/M IPv6 sou
37、rce address with prefixany Any source IPv6 addressHuawei-acl6-basic-2000rule 1 deny source any ?fragment Check fragment packetlogging Log matched packettime-range Specify a special time7、高级 ACL6 规则配置Huaweiacl ipv6 3000Huawei-acl6-adv-3000rule 1 ?deny Specify matched packet denydescription Specify ru
38、le descriptionpermit Specify matched packet permitHuawei-acl6-adv-3000rule 1 ?deny Specify matched packet denydescription Specify rule descriptionpermit Specify matched packet permitHuawei-acl6-adv-3000rule 1 deny ?Protocol numbergre GRE tunneling(47)icmpv6 Internet Control Message Protocol6(58)ipv6
39、 Any IPV6 protocolospf OSPF routing protocol(89)tcp Transmission Control Protocol(6)udp User Datagram Protocol(17)ACL6 相关知识将在后面的 IPV6 专题详细讲解,敬请关注重庆网管博客。8、ACL 资源告警阈值百分比设置Huawei acl threshold-alarm upper-limit upper-limit | lower-limit lower-limit *设备运行应用 ACL 的业务后会占用一部分 ACL 资源,此时可以配置 ACL 资源的告警阈值百分比。当
40、ACL 资源的使用率(即设备上实际存在的 ACL 表项占设备支持的最大 ACL表项总数的比例)等于或高于上限告警阈值百分比时,设备将会发出超限告警。之后,如果该比例又等于或小于下限告警阈值百分比,设备会再次发出告警,表明之前的超限告警情况已经恢复正常。9、扩展 ACL 表项空间资源模式设置display resource-assign configuration# 查看接口板扩展表项空间资源的配置信息。Huawei assign resource-mode mode-id slot slot-id# 配置接口板扩展表项空间资源的分配模式,用来静态分配 MAC、ACL 和 FIB 表项的底层空间
41、大小。Huawei assign acl-mode mode-id slot slot-id# 配置接口板 ACL 规格的资源分配模式。缺省情况下,扩展表项空间寄存器的资源模式为 1,仅扩展 MAC 表项。与 ACL 表项相关的分配模式包括:1、MACACL:表示同时扩展 MAC 表项和二层 ACL 表项。2、IPV4ACL:表示同时扩展 IPV4 的 IP 表项和 IPV4 的三层 ACL 表项。3、IPV6ACL:表示同时扩展 IPV6 的 IP 表项和 IPV6 的三层 ACL 表项。4、IPV4NAC:表示同时扩展 IPV4 的三层 ACL 表项和 NAC 特性专用的 ACL 表项。5
42、、L2 ACL:表示扩展二层 ACL 表项。配置接口板扩展表项空间资源的分配模式后,需要重启接口板才能生效。当设备处于核心层时,承载的业务量很大,自身的 MAC、FIB、ACL 表项也会相应增加,但是设备的表项空间有限,当设备的表项空间满足不了设备的业务要求时,会降低业务的运行效率。设备接口板提供扩展表项空间寄存器,通过配置扩展表项空间资源的分配模式,可以选择性扩大 MAC、ACL 和 FIB 表项的底层空间大小。三、ACL 应用配置1、Telnent 中应用 ACL 配置Huaweitlnet server acl ?INTEGER 或Huawei-ui-vty0-4acl ?INTEGER
43、 Apply basic or advanced ACLipv6 Filter IPv6 addressesHuawei-ui-vty0-4acl 2000 ?inbound Filter login connections from the current user interfaceoutbound Filter logout connections from the current user interface2、http 中应用 acl 配置Huaweihttp acl ?INTEGER 3、SNMP(v1、v2)中应用 ACL 配置Huaweisnmp-agent community
44、 write 1 acl ?INTEGER Apply basic ACL或Huaweisnmp-agent acl ?4、FTP 中应用 acl 配置Huaweiftp acl ?INTEGER Apply basic ACL5、TFTP 中应用 ACL 配置Huaweitftp-server acl ?INTEGER Apply basic ACL6、SFTP 中应用 ACL 配置Huaweissh server acl ?或Huawei-ui-vty0-4acl ?INTEGER Apply basic or advanced ACLipv6 Filter IPv6 addressesH
45、uawei-ui-vty0-4acl 2000 ?inbound Filter login connections from the current user interfaceoutbound Filter logout connections from the current user interface7、其他方式中应用 ACL 配置表(转自华为官方论坛)业务模块 ACL 应用方式 可使用的 ACL 编号范围流策略 a、 系统视图下执行命令 traffic classifier classifier-name operator and | or precedenceprecedence-
46、value ,进入流分类视图。b、执行命令 if-match acl acl-number | acl-name ,配置 ACL 应用于流分类。c、 系统视图下执行命令 traffic behavior behaviorname,定义流行为并进入流行为视图。d、配置流动作。报文过滤有两种流动作:deny 或 permit。e、 系统视图下执行命令 traffic policy policy-name match-order auto | config ,定义流策略并进入流策略视图。f、 执行命令 classifier classifier-name behaviorbehavior-name,
47、在流策略中为指定的流分类配置所需流行为,即绑定流分类和流行为。在系统视图、接口视图或 VLAN 视图下,执行命令 traffic-policy policy-name inbound | outbound ,应用流策略。ACL:20005999ACL6:20003999NAT 方式一:a、 系统视图下执行命令 nat address-group group-index start-address end-address,配置公网地址池。b、 执行命令 interface interface-type interface-number.subnumber,进入子接口视图。c、 执行命令 nat outbound acl-number address-groupgroup-index no-pat ,配置带地址池的 NAT Outbound。方式二:a、 系统视图下执行命令 interface interface-typeinterface-number.subnumber,进入子接口视图。b、 执行命令 nat outbound acl-number,配置 Easy IP。20003999IPSEC 方式一:a、 系统视图下执行命令