访问控制列表ACL(Access Control List)就是利用IP数据包中的元素来匹配数据包,所以ACL可以通过匹配IP报文中的5元素来对数据包实施“允许”“拒绝”等操作。
IP数据包中的元素,以承载TCP协议的IP数据包为例,它包含如下图所示的5个元素,这5个元素的组合能标识某数据包来龙(即源地址、源端口)去脉(即目的地址、目的端口)和通信方式(协议号),从而唯一标识了某类数据包。
例如可以用ACL描述:不让任何终端使用Telnet登录,或者可以让每个终端经由SMTP向我们发送电子邮件。
ACL的类型根据不同的划分规则可以有不同的分类,具体参见表。
划分规则 |
分类 |
应用场景 |
说明 |
---|---|---|---|
对IPv4和IPv6的支持 |
ACL4 |
IPv4的应用场景 |
相对的命令行ACL4和ACL6会有差异 |
ACL6 |
IPv6的应用场景 |
相对的命令行ACL4和ACL6会有差异 |
|
按照命名方式 |
数字ACL |
传统的ACL标识方法,用户创建ACL时,指定一个唯一的数字标识,后续的操作可以通过这个唯一的数字标识对ACL进行相关的操作。 |
- |
名字ACL |
用户在创建ACL时,可以为ACL指定一个名称。后续的操作可以通过这个唯一的名称确定一个ACL,从而对其进行相关操作。 名称相对于数字来说具有更为直观的标识和记忆的效果,S2700-52P-EI提供了灵活的ACL命令方式。 |
当前在指定名字ACL的同时,也可以同时配置数字ACL。如果没有配置数字ACL,在系统在记录此名字ACL会分配一个数字ACL的编号给该名字ACL。 ACL名称在IPv4和IPv6内分别全局唯一,互不影响。 |
|
按照ACL规则的功能 |
基本ACL |
仅使用报文的源IP地址、分片标记和时间段信息来定义规则。 |
编号范围为2000~2999。 |
高级ACL |
既可使用报文的源IP地址,也可使用目的地址、IP优先级、ToS、DSCP、IP协议类型、ICMP类型、TCP源端口/目的端口、UDP源端口/目的端口号等来定义规则。 高级访问控制列表可以定义比基本访问控制列表更准确、更丰富、更灵活的规则。 |
编号范围为3000~3999。 |
|
二层ACL |
可根据报文的以太网帧头信息来定义规则,如根据源MAC地址、目的MAC地址、以太帧协议类型等。 |
编号范围为4000~4999。 |
|
自定义ACL |
可根据偏移位置和偏移量从报文中提取出一段内容进行匹配。 |
编号范围为5000~5999。 |