文章目录
一、什么是ACL?
1.1 ACL概述
- 访问控制列表(Access Control Lists,ACL)是应用在路由器接口的指令列表。这些指令列表用来告诉路由器哪些数据包可以收、哪些数据包需要拒绝。
1.2 ACL分类
- 基本ACL:范围2000-2999
- 高级ACL:范围3000-3999
- 二层ACL:范围4000-4999
- 自定义ACL:范围5000-6999
1.3 ACL工作原理
- ACL使用包过滤技术,在路由器上读取第三层及第四层包头中的信息,如源地址、目的地址、源端口、目的端口等,根据预先定义好的规则,对包进行过滤,从而达到访问控制的目的。
- ACL有两个方向。
- 出:已经过路由器的处理,正离开路由器接口的数据包。
- 入:已到达路由器接口的数据包,将被路由器处理。
如果对接口应用了ACL,那么路由器将对数据包应用该组规则进行顺序检查。
1.4 ACL的应用
- 匹配IP流量(可基于源、目的IP地址、协议类型、端口号等)
- 在Traffic-filter中被调用
- 在NAT中被调用
1.5 ACL的步长及匹配顺序
1.5.1 ACL步长
- 步长是指在路由器自动为ACL规则分配编号的时候,每个相邻规则编号之间的差值。例如,如果将步长设定为5,规则编号分配是按照0、5、10、15…这样的规律分配的。缺省情况下,步长为5。
- 当步长改变后,ACL中的规则编号会自动重新排列。例如,原来规则编号为0、5、10、15,当通过命令把步长改为2后,则规则编号变成0、2、4、6。
- 当使用命令将步长恢复为缺省值后,交换机将立刻按照缺省步长调整ACL规则的编号。例如:ACL 3001,步长为2,下面有4个规则,编号为0、2、4、6。如果此时使用命令将步长恢复为缺省值,则ACL规则编号变成0、5、10、15,步长为5。
- 设置适当的步长,有助于用户对ACL的管理,如方便在规则之间插入新的规则。例如配置好了4个规