ACL: access control list ,访问控制列表,用于匹配感兴趣的 流量,并进行“控制”; -作用: 用于实现对数据报文的控制; -类型: 标准 -只能匹配 IP 头部中的 源IP 地址; 扩展 -可以同时匹配 IP 头部中的 源和目标 IP 地址, 同时,还可以匹配 传输层协议; -表示: ID,通过不同范围的ID,表示 ACL 的不同类型; 标准 - 1~99 扩展 - 100~199 word ,通过名字,表示 ACL (项目中常用方法) 通过 名字 区分不同的 ACL 时候,在创建之初, 必须提前指定 ACL 的类型; 例如: ip access-list standard "name" ip access-list extended "name" -配置: 创建ACL ip access-list standard ABC 10 deny 192.168.1.0 0.0.0.255 调用ACL interface gi0/1 ip access-group ABC in 验证ACL show ip access show ip interface gi0/1 测试 PC-1 ----> PC-3 192.168.1.1 --> 192.168.2.3 -工作原理: 当端口在特定的方向收到流量以后,开始进行特定方向 上的 ACL 条目的检查,规则如下: 1、ACL如果多个条目,则按照每个条目的序列号从小 到大依次检查、匹配: 2、首先检查数据包的源头IP地址,是否可以匹配; 如果不可以,则检查下一个 ACL 条目; 如果可以,则继续(3) 3、其次检查数据包的目标IP地址,是否可以匹配; 如果不可以,则检查下一个 ACL 条目; 如果可以,则继续(4) 4、再次检查数据包的IP后面的协议的类型,是否可以匹配 如果不可以,则检查下一个 ACL 条目; 如果可以,则继续(5) 5、查看 该 ACL 条目的 动作 : permit / deny ; 6、确定 该 ACL 调用在端口的什么方向? 如果是 out,则表示允许/拒绝 转发出去; 如果是 in , 则表示允许/拒绝 转发进来; 注意: ACL 条目 是按照序列号从小到大,逐条目检查的; 如果该条目没有匹配住,则匹配下一个条目; 如果该条目匹配主了,则执行上面的(5,6)作用; 每个 ACL 后面都有一个隐含的拒绝所有。 针对 标准/扩展 ACL 的 “允许” 所有,配置命令如下: 标准ACL - ip access-list standard Permit 10 permit any 扩展ACL - ip access-list extended Permit 10 permit ip any any **** 在现网中,对ACL进行创建、修改、删除之前,都要 查看一下当前设备上是否存在对应的 ACL 以及调用情况 ACL调用建议: 1、如果想通过标准 ACL ,拒绝访问某一个目标主机, 则将 ACL 调用在距离目标主机尽可能近的地方; 2、如果想通过标准 ACL ,控制某一个源IP地址主机 的上网行为,则将调用在距离源IP地址主机尽可能近的地方 3、扩展 ACL 应该调用在距离 源主机 尽可能近的地方; 因为扩展 ACL 可以精确的区分不同类型的流量; 通过 ACL 控制流量 的 配置思路: 1、先分析原有数据流的走向 2、确定转发路径上的设备 (确定路由设备) 3、确定在哪些设备的、哪些端口的、哪些方向上 4、确定 ACL 如何写 5、确定 如何调用 6、验证和测试