没有合适的资源?快使用搜索试试~ 我知道了~
ACL的基本工作原理及配置方法
5星 · 超过95%的资源 需积分: 50 25 下载量 176 浏览量
2010-11-03
21:31:26
上传
评论 1
收藏 488KB DOC 举报
温馨提示
试读
38页
介绍了Cisco路由器中常见ACL类型的基本工作原理和配置,是初学者快速了解ACL技术的学习资料。
资源推荐
资源详情
资源评论
ACL 概述
1. 概述
1.1 ACL 简介
ACL(Access Control List
,访问控制列表
)是一系列运用到路由器接口的指令列表。这些指令告诉路
由器接收哪些数据包而拒绝哪些数据包,接收或者拒绝根据一定的规则进行。ACL 在路由器的端口
过滤网络数据流量,决定是否转发或阻止数据包。ACL 应该根据路由器的端口所允许的每个协议来
制定,如果需要控制流经某个端口的数据流,就需要为该端口允许的每一个协议分别创建 ACL。例
如 , 如 果 端 口 被 配 置 为 允 许 IP 、 IPX 和 AppleTalk 协议 的 数 据 流 , 那 么 就 需 要 创 建 至 少 3 个
ACL。ACL 具有如下作用:
限制网络流量,提高网络性能。
提供数据流控制。
为网络服务提供基本的安全保护。
决定转发或阻止哪些数据流。
在路由器的每个端口,可以创建两个 ACL:一个用于过滤进入端口的数据流(Inbound),另一个用
于过滤流出端口的数据流(Outbound)。一个 ACL 列表中可以包含多个 ACL 指令,ACL 指令的放
置顺序是很重要的。当路由器在决定转发或者阻止数据包的时候, Cisco IOS 将按照 ACL 中指令的顺
序依次检查数据包是否满足某一个指令条件。当检测到某个指令条件满足的时候,就去执行该指令规
定的动作,并且不会再检测到后面的指令条件。
1.2 ACL 工作流程
无论是否使用 ACL,通信处理过程的开始都是一样的。如图 1-1 所示:
图 1-1 路由器上的 ACL 工作流程
当路由器的某个接口收到一个分组时,路由器会首先检查该分组是否可路由,如果不可路由,路由器
则丢弃该分组。接下来,路由器判断给入接口上有没有 ACL,如果没有则直接查询路由表;如果有
ACL,则判断该 ACL 的指令组是否允许该分组通过,如果不允许通过,则丢弃。如果 ACL 的指令组
允许该分组通过,再查询路由表。从这里可以看出在路由器的入口方向,ACL 的检查在查询路由表
前被执行。
路由器查询路由表,选择该分组的外出接口。检测外出接口是否有 ACL,如果没有 ACL,则转发分
组;如果外出接口也有 ACL,则判断 ACL 指令组是否允许该分组通过,如果允许则向外转发;如果
拒绝,则丢弃该分组。
上面提到了 ACL 指令组是允许还是拒绝。事实上,ACL 指令组可能会包含多个语句。在这种情况下,
ACL 将首先检查 ACL 指令组的第一条指令与收到的分组是否匹配。如果匹配,看该条指令规定的动
作,是允许还是拒绝,如果允许则转发该分组,如果拒绝则丢弃该分组,同时退出 ACL 指令组,不
再继续往下比较。如果不匹配,则执行第二条指令,这里的操作和第一条指令一样。如此循环下去,
如果所有的指令都不匹配,则隐含动作是拒绝。
1.3 通配符掩码
在介绍 ACL 之前,首先必须掌握通配符掩码(Wildcard Masking)的作用和写法。路由器使用通配符
掩码与源或目的地址一起来分辨匹配的地址范围。像子网掩码告诉路由器 IP 地址的那些位属于网络
号一样。通配符掩码告诉路由器为了判断匹配情况,它需要检查 IP 地址中的哪些位。
在子网掩码中,将掩码的一位设成 1 表示 IP 地址对应的位属于网络地址部分。而在访问控制列表中,
将通配符掩码中的一位设成 1 表示忽略 IP 地址中对应的位,该位既可以是 1 又可以是 0,有时,可将
其称作“不检查”位,因为路由器在判断是否匹配时并不关心它们。通配符掩码设成 0 则表示 IP 地址中
相对应的位必须精确匹配。例如,“192.168.1.0 0.0.0.254”地址和通配符掩码实现的是匹配 192.168.1.0
网段中所有偶数 IP 地址;“192.168.1.1 0.0.0.254” 地址和通配符掩码实现的是匹配 192.168.1.0 网段中
所有奇数 IP 地址。
对于访问控制列表,判断是否匹配的过程实际上分为 3 个步骤。在数据包过滤中,为进行匹配,路由
器 检 查 IP 数 据 包 报 头 中 的 IP 地 址 。 假 设 访 问 控 制 列 表 语 句 中 包 含 地 址 掩 码 对 “ 192.168.1.0
0.0.0.255”,一个数据包源地址为 192.168.1.2,路由器将如下操作:
步骤
1
:
用访问控制列表语句中的通配符掩码和地址进行逻辑或( 192.168.1.0 和 0.0.0.255 执行逻辑
或),该操作的结果为 192.168.1.255。
步骤
2
:
用访问控制列表语句中的通配符掩码和数据包报头中的 IP 地址执行逻辑或(192.168.1.2 和
0.0.0.255 执行逻辑或),该操作的结果为 192.168.1.255。
步骤
3
:
将两个结果相减,如果两个结果相等,相减的结果则精确为零,则匹配;如果相减的结果不
为零,则不匹配,对下条语句重复执行上述 3 个步骤。
在 IP 访问控制列表地址掩码对中,有两个关键字可以用来省略一些输入。一个是“any” ,它可以用来
代替地址掩码对“0.0.0.0 255.255.255.255”,该地址掩码对匹配任何 IP 地址。另一个是“host”,用来替
代通配符掩码 0.0.0.0,比如实现匹配 IP 地址 10.1.1.1,则可以写成“host 10.1.1.1”,该语句等同于
“10.1.1.1 0.0.0.0”。在标准访问控制列表中,当通配符掩码是 0.0.0.0 时会被自动省略,如果是“host
10.1.1.1”时,“host”也会被省略。也就是说,如果没有通配符掩码,则表示该掩码是 0.0.0.0,仅匹配
一个 IP 地址。在扩展访问控制列表中,通配符掩码 0.0.0.0 或“host”关键字不能省略。
2. ACL 类型
ACL 根据功能不同,有多种类型,下面将做一简单的讨论:
2.1 标准 ACL 列表
2.1.1 配置标准 ACL
该部分的配置命令基于图 2-1 的组网拓扑:
图 2-1 标准访问控制列表
首先应该配置相应的路由信息,保证全网的连通性。接下来配置访问控制列表,要求不允许 R1 访
问 R3。配置访问控制列表分两个步骤:创建 ACL 和应用 ACL:
创建 ACL
访问控制列表是在全局模式下输入的,命令的句法如下:
Router(config)# access-list access-list-number {deny | permit} {source [source-wildcard] | any } [log]
参数“access-list-number”是 1 到 99 之间的整数,是标准 ACL 的编号,表 2-1 给出了 Cisco IOS
定义的不同类型的访问控制列表的编号:
表 2-1 Cisco IOS 访问控制列表编号
访问控制列表编号 描述
1~99 IP 标准访问控制列表
100~199
IP 扩展访问控制列表
200~299 协议类型代码访问控制列表
300~399
DECnet 访问控制列表
400~499 XNS 标准访问控制列表
500~599
XNS 扩展访问控制列表
600~699 AppleTalk 访问控制列表
700~799
48 比特 MAC 地址访问控制列表
800~899 IPX 标准访问控制列表
900~999
IPX 扩展访问控制列表
1000~1099 IPS SAP 访问控制列表
1100~1199
扩展 48 比特 MAC 地址访问控制列表
1200~1299 IPX 汇总地址访问控制列表
1300~1999
IP 标准访问控制列表(扩充范围)
2000~2699 IP 扩展访问控制列表(扩充范围)
下面的配置是在路由器 R3 上创建标准访问控制列表:
R3(config)# access-list 1 deny 12.1.1.1
R3(config)# access-list 1 permit any
上面两句的顺序很重要,因为匹配是从上至下,当条件匹配时执行操作。如果把两行的顺序调
换一下,当 IP 地址 12.1.1.1 试图通过时,因为 12.1.1.1 是“any”中的一个地址,执行的操作也是
允许,所以永远执行不到第二条,所有的 IP 地址都将被允许。
应用 ACL
创建好列表后,接下来还必须将它应用到每个想要用它的接口。因为只想拒绝 R1 访问 R3,其
他的访问不受影响,可以把列表用在 R3 的 S1/0 接口,当数据包进入 R3 时进行判断,配置如
下:
R3(config)# interface s1/0
R3(config-if)# ip access-group 1 in
至于是先创建列表,还是先在接口下调用列表。两个步骤的操作顺序没有关系。
编辑/ACL
ACL 配置完成后,如果不需要,可以使用命令删除。下例是删除路由器 R3 上创建的 ACL 1:
R3(config)# no access-list 1
此外,ACL 应用完成后,如果需要暂时解除 ACL 或者把 ACL 调整到其他接口,可以使用命令
取消 ACL 在接口的应用。下例是取消前面在 R3 接口 S1/0 创建的 ACL:
剩余37页未读,继续阅读
资源评论
- shxflg2012-09-13内容挺好的,介绍ACL挺全面的;谢谢分享
Scofield73
- 粉丝: 2
- 资源: 20
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功