ACL原理和作用,ACL类型和特点,ACL匹配和通配符使用( 三 )


ACL原理和作用,ACL类型和特点,ACL匹配和通配符使用

文章插图
 
•匹配192.168.1.0/24这个子网中的奇数IP地址 , 例如192.168.1.1、192.168.1.3、192.168.1.5等 。
ACL的分类与标识
•基于ACL规则定义方式的划分 , 可分为:
?基本ACL、高级ACL、二层ACL、用户自定义ACL和用户ACL 。
•基于ACL标识方法的划分 , 则可分为:
?数字型ACL和命名型ACL 。
•注意:用户在创建ACL时可以为其指定编号 , 不同的编号对应不同类型的ACL 。同时 , 为了便于记忆和识别 , 用户还可以创建命名型ACL , 即在创建ACL时为其设置名称 。命名型ACL , 也可以是“名称 数字”的形式 , 即在定义命名型ACL时 , 同时指定ACL编号 。如果不指定编号 , 系统则会自动为其分配一个数字型ACL的编号 。
•基于ACL规则定义方式的分类
分类
编号范围
规则定义描述
基本ACL
2000~2999
仅使用报文的源IP地址、分片信息和生效时间段信息来定义规则 。
高级ACL
3000~3999
可使用IPv4报文的源IP地址、目的IP地址、IP协议类型、ICMP类型、TCP源/目的端口号、UDP源/目的端口号、生效时间段等来定义规则 。
二层ACL
4000~4999
使用报文的以太网帧头信息来定义规则 , 如根据源MAC地址、目的MAC地址、二层协议类型等 。
用户自定义ACL
5000~5999
使用报文头、偏移位置、字符串掩码和用户自定义字符串来定义规则 。
用户ACL
6000~6999
既可使用IPv4报文的源IP地址或源UCL(User Control List)组 , 也可使用目的IP地址或目的UCL组、IP协议类型、ICMP类型、TCP源端口/目的端口、UDP源端口/目的端口号等来定义规则 。
【ACL原理和作用,ACL类型和特点,ACL匹配和通配符使用】基于ACL标识方法的分类
分类
规则定义描述
数字型ACL
传统的ACL标识方法 。创建ACL时 , 指定一个唯一的数字标识该ACL 。
命名型ACL
通过名称代替编号来标识ACL 。
基本ACL&高级ACL
•基本ACL:
?主要针对IP报文的源IP地址进行匹配 , 基本ACL的编号范围是2000-2999 。
?比如这个例子 , 创建的是acl 2000 , 就意味着创建的是基本ACL 。
•高级ACL:
?可以根据IP报文中的源IP地址、目的IP地址、协议类型 , TCP或UDP的源目端口号等元素进行匹配 , 可以理解为:基本ACL是高级ACL的一个子集 , 高级ACL可以比基本ACL定义出更精确、更复杂、更灵活的规则 。
ACL原理和作用,ACL类型和特点,ACL匹配和通配符使用

文章插图
 
ACL的匹配机制
•ACL的匹配机制概括来说就是:
?配置ACL的设备接收报文后 , 会将该报文与ACL中的规则逐条进行匹配 , 如果不能匹配上 , 就会继续尝试去匹配下一条规则 。
?一旦匹配上 , 则设备会对该报文执行这条规则中定义的处理动作 , 并且不再继续尝试与后续规则匹配 。
•匹配流程:首先系统会查找设备上是否配置了ACL 。
?如果ACL不存在 , 则返回ACL匹配结果为:不匹配 。
?如果ACL存在 , 则查找设备是否配置了ACL规则 。
?如果规则不存在 , 则返回ACL匹配结果为:不匹配 。
?如果规则存在 , 则系统会从ACL中编号最小的规则开始查找 。
−如果匹配上了permit规则 , 则停止查找规则 , 并返回ACL匹配结果为:匹配(允许) 。
−如果匹配上了deny规则 , 则停止查找规则 , 并返回ACL匹配结果为:匹配(拒绝) 。
−如果未匹配上规则 , 则继续查找下一条规则 , 以此循环 。如果一直查到最后一条规则 , 报文仍未匹配上 , 则返回ACL匹配结果为:不匹配 。
•从整个ACL匹配流程可以看出 , 报文与ACL规则匹配后 , 会产生两种匹配结果:“匹配”和“不匹配” 。
?匹配(命中规则):指存在ACL , 且在ACL中查找到了符合匹配条件的规则 。不论匹配的动作是“permit”还是“deny” , 都称为“匹配” , 而不是只是匹配上permit规则才算“匹配” 。


推荐阅读