一、ACL功能(指定某些人能做某些事)
ACL---访问控制列表,用于数据流的匹配和筛选
功能:
访问控制:ACL+Packet-filter(包过滤)
路由控制:ACL+Route-policy(路由策略)
流量控制:ACL+QOS(服务质量)
二、ACL组成
组成:由若干条permit或deny语句组成,每条语句就是一条规则
语句形式:
rule permit(deny) source 192.168.1.0 0.0.0.255
rule 2 permit(deny)source 172.16.0.0 0.0.255.255
若为一个网段则配反掩码,具体的则用0.0.0.0
手动指定:0、1、2、3......
自动生成:5、10、15....5的倍数(为了以后加规则)
通配符(反掩码)
三、ACL分类
基本ACL:只关心报文的源地址,2000~2999
高级ACL:对数据包的五元组(源IP、目的IP、源端口、目的端口、协议类型)进行检查,编号3000~3999
二层ACL(二层联想到数据链路层):检查二层帧的头部信息,源MAC地址\目的MAC地址\二层协议类型等等,编号4000~4999
三层联想到路由层
用户自定义ACL:使用报文头部、字符串掩码和用户自定义字符串来定义规则,编号5000~5999(相当于以上的结合)
四、匹配机制
包过滤方向:
出方向:数据流出的方向
入方向:数据流入的方向
注:包过滤不许配置在接口某个方向上才能生效,一个接口的一个方向只能配置一个包过滤策略。
建议:在不影响实际效果的前提下,包过滤尽量配置在离源地址最近的接口的入方向。
匹配机制:
1、数据包到达接口先检查是否应用了ACL
2、按照ACL编号顺序(从小到大)匹配第一条规则,匹配进一步检查该条规则的动作。否则与下一跳规则进行匹配....
3、所以规则都不匹配,检查默认动作,默认动作允许则放行,默认动作拒绝则放弃
练习1:
rule permit source 192.168.1.0 0.0.0.255 destination 192.168.2.0 0.0.0.255
允许192.168.1.0这个网段访问192.168.2.0这个网段
练习2:
rule deny source 192.168.1.5 0.0.0.0 destination 192.168.2.10 0.0.0.0
拒绝192.168.1.5这个地址访问192.168.2.10这个地址
练习3:
rule permit source 100.1.1.1 0.0.0.0 destination 192.168.10.1 0.0.0.0
rule deny source 100.1.1.0 0.0.0.255 destination 192.168.10.1 0.0.0.0
在100.1.1.0这个网段中只有100.1.1.1这个地址能访问192.168.10.1这个地址
练习4:
rule deny source 100.1.1.0 0.0.0.255 destination 192.168.10.1 0.0.0.0
rule permit source 100.1.1.1 0.0.0.0 destination 192.168.10.1 0.0.0.0
拒绝100.1.1.0这个网段中所有的地址访问192.168.10.1这个地址
练习5:
rule permit source 0.0.0.0 255.255.255.255 destination 192.168.10.1 0.0.0.0
允许任何地址访问192.168.10.1这个地址
练习6:
rule permit source 100.2.2.0 0.0.0.255 destination any
允许100.2.2.0这个网段访问任何地址
用一条静态默认路由来模拟网关