
设想一台路由器上连着很多用户,但是服务器的资源针对不同的用户访问权限是不同的,因此,如何在路由器层面去底层控制呢?(这样也是为了避免浪费路由器的资源,因为如果交由上层服务器去处理,那么不能接受的请求信息就会被路由,也就浪费了路由器资源!)

ACL分类:
标准ACL:只能过滤源地址,且不能针对单个协议去进行控制,也就是只能允许或者屏蔽所有协议。
扩展ACL:可以过滤源地址和目的地之,且可以根据单个协议或者其他应用来进行访问控制。
综合式ACL:根据需要去利用前两者的标记数来区分不同的控制,然后通过命名ACL来实现ACL控制语句的修改(注:前两种一旦确定,就无法修改!!!)



关于ACL方向问题:
1、如果要对入站的流量进行控制,就需要在入站的接口实现ACL,但它对出站方向的流量是没有任何作用的。

2、对于入方向的ACL,我们对入站的流量进行ACL匹配,满足条件就看动作是permit还是deny,如果都没能匹配上,默认是丢弃数据包的

3、对于出方向的ACL,我们先对到达路由器的数据包检查,看是否有相应的接口出去:
3.1如果没有就丢弃,
3.2如果有且设置了ACL,那么就会检查它与ACL的条件.
3.2.1如果什么也不能匹配,就会直接丢弃.
3.2.2如果满足某一条件就会根据动作{permit|deny}来决定是否转发数据包

ACL表:
包含多个语句,每个语句都有匹配条件+执行动作
这个类似于switch语句,按照顺序匹配,满足就会执行这条语句的动作,并且break
如果所有都没有匹配到,默认最后是deny

配置ACL表:
注:wildcast mask是通配符 source 是源IP地址
通配符介绍:用来更简便的匹配IP地址段的一种符



标准ACL命令:




动态ACL命令:





综合式ACL配置:
可以进行命名,且默认语句编号从10开始,并以10递增。 中间可以插入修改删除语句


ACL阶段小结:
