ACL分类:
标准访问控制列表(调用在接近源设备上) 1-99
只能对源进行控管
扩展访问控制列表(调用在接近目标设备上) 100-199
命名访问控制列表
时间访问控制列表
acl运行规则:
一.依据序列号对ACL进行逐条匹配 (顺序性)
二.匹配中ACL中的一条列表既结束ACL过滤动作 (匹配任意一条,就跳出ACL动作)
三.列表尾部隐式拒绝所有 (ACL默认拒绝所有流量通过)
四.不能过滤本地产生的流量 (ACL不能控管本地始发的流量.源是自己目标是其他人,源是其他,目标是我自己)
标准acl:只控制源ip地址 drop所有源的流量
Router(config)#access-list [0-99] permit/deny ip-address(source)


目前设备支持的ACL,有以下两种实现方式。
•软件ACL:针对与本机交互的报文(必须上送CPU处理的报文),由软件实现来过滤报文的ACL,比如FTP、TFTP、Telnet、SNMP、HTTP、路由协议、组播协议中引用的ACL。
•硬件ACL:针对所有报文(一般是针对转发的数据报文),通过下发ACL资源到硬件来过滤报文的ACL,比如流策略、基于ACL的简化流策略、自反ACL、用户组以及为接口收到的报文添加外层Tag功能中引用的ACL。
两者主要区别在于:
•过滤的报文类型不同:软件ACL用来过滤与本机交互的报文(必须上送CPU处理的报文),硬件ACL可以用来过滤所有报文(一般是针对转发的数据报文)。
•报文过滤方式不同:软件ACL是被上层软件引用来实现报文的过滤,硬件ACL是被下发到硬件来实现报文的过滤。通过软件ACL过滤报文时,会消耗CPU资源,通过硬件ACL过滤报文时,则会占用硬件资源。通过硬件ACL过滤报文的速度更快。
•对不匹配ACL的报文的处理动作不同:当使用软件ACL时,如果报文未匹配上ACL中的规则,设备对该报文采取的动作为deny,即拒绝报文通过;当使用硬件ACL时,如果报文未匹配上ACL中的规则,设备对该报文采取的动作为permit,即允许报文通过。

生效时间段模式
在ACL规则中引用的生效时间段存在两种模式:
•第一种模式——周期时间段:以星期为参数来定义时间范围,表示规则以一周为周期(如每周一的8至12点)循环生效。
格式:time-range time-name start-time to end-time { days } &<1-7>
◾time-name:时间段名称,以英文字母开头的字符串。
◾start-time to end-time:开始时间和结束时间。格式为[小时:分钟] to [小时:分钟]。
◾days:有多种表达方式。◾Mon、Tue、Wed、Thu、Fri、Sat、Sun中的一个或者几个的组合,也可以用数字表达,0表示星期日,1表示星期一,……6表示星期六。
◾working-day:从星期一到星期五,五天。
◾daily:包括一周七天。
◾off-day:包括星期六和星期日,两天。
•第二种模式——绝对时间段:从某年某月某日的某一时间开始,到某年某月某日的某一时间结束,表示规则在这段时间范围内生效。
格式:time-range time-name from time1 date1 [ to time2 date2 ]
◾time-name:时间段名称,以英文字母开头的字符串。
◾time1/time2:格式为[小时:分钟]。
◾date1/date2:格式为[YYYY/MM/DD],表示年/月/日。
#
time-range time1 from 00:00 2014/1/1 to 23:59 2014/12/31
#
acl number 2001
rule 5 permit time-range time1
#