ACL概述
ACL(Access Control List)是应用在路由器接口上的指令列表,这些指令列表用来告诉路由器,哪些数据包可以接收,哪些数据包需要拒绝。ACL使用包过滤技术,在路由器读取OSI七层模型的第三层及第四层包头中的信息,如源地址、目的地址、源端口、目的端口等,根据预先定义好的规则,对包进行过滤、从而达到访问控制的目的。
ACL的类型
名称 | 编号范围 | 过滤内容 | 应用位置 |
标准ACL | 1-99 | 源IP地址 | 离目标近 |
扩展ACL | 100-199 | 源目的地址 | 离源近 |
命名ACL | 自主命名 | 基于标准ACL(源IP地址) 基于扩展ACL(源目标IP地址) | 离目标近 离源近 |
ACL的检查条件
ACL通过五元素来检查数据包中的指定字段来允许或拒绝数据包,这些元素位于IP头部和传输层头部。它们分别是源IP地址、目标IP地址、源端口、目标端口、协议。ACL基于以上五元素来定义规则,所以ACL也被认为是包过滤防火墙。
ACL规则的匹配顺序
- 如果匹配第一条规则,则不再往下检查,路由器将决定该数据包允许通过或拒绝通过
- 如果不匹配第一条规则,则依次往下检查,直到有任何一条规则匹配,路由器将决定该数据包允许通过或拒绝通过
- 如果最后没有任何一条规则匹配,则路由器根据默认的规则将丢弃该数据包
ACL的应用方向
ACL是一组规则的集合,它应用在路由器的某个接口上。对于路由器接口而言,ACL有以下两个方向
出:已经过路由器的处理,正离开路由器接口的数据包
入:已到达路由器接口的数据包,将被路由器处理