ACL的配置以及翻转掩码

1、配置ACL要点

  • 访问列表要指明过滤什么协议;
  • 按顺序匹配访问列表;
  • 一般限制性的访问列表应该放在前面;
  • 在访问列表的最后隐性定义了deny any——所有每个访问列表应该至少包含一条permit声明,否则将过滤掉所有包;
  • 先创建访问列表,后使用;
  • 访问列表过滤通过路由器的流量,但不会应用于源自路由的流量。

2、ACL的编号
ACL的配置以及翻转掩码_第1张图片
3、配置ACL的步骤

  • (1)创建ACL
  • access-list access-list-number{permit|deny}{test conditions}
  • (2)将ACL绑定到接口
  • {protocol}access-group access-list-number{in|out}

4、翻转掩码

  • (1)翻转掩码的作用

  • 使用IP地址与翻转掩码地址对来定义测试条件

  • 简化测试过程,避免额外的输入

  • (2)翻转换码的格式

  • 与子网掩码类似,翻转掩码是由0、1二进制组成的32位数字,分成4段
    ACL的配置以及翻转掩码_第2张图片
    (3)翻转掩码的配置规则

  • 1意味着忽略

  • 0意味着检查

ACL的配置以及翻转掩码_第3张图片
(4)翻转掩码练习

  • 检查某个地址是不是10.1.1.1,地址对是多少?
  • 检查某个地址是不是来自网络202.19.10.0,地址对是多少?
  • 检查某个地址是不是10.1.0.0.地址对是多少?
  • 忽略所有地址,地址对是多少?

(5)Any 和host

  • Host
  • 172.30.16.29 0.0.0.0 =host 172.30.16.29
    ACL的配置以及翻转掩码_第4张图片
  • Any
  • 0.0.0.0 255.255.255.255 = any
    ACL的配置以及翻转掩码_第5张图片
    (6)复杂一点的例子
    ACL的配置以及翻转掩码_第6张图片
    (7)练习
  • 检查某个地址是不是在10.12.8.0/24-10.12.15.0/24范围内,地址对是多少?
  • 检查某个地址是不是在5.64.0.0/16-5.127.0.0/16,地址对是多少?
  • 检查某个地址是不是在168.100.32.0/24-168.100.63.0/24,地址对是多少?

5、标准ACL的创建
(1)创建标准ACL

  • access-list access-list-number {permit|deny} source [mask]

  • 未访问列表条目设置参数:

  • (1)IP标准访问列表使用:1~99

  • (2)缺省 wildcard mask =0.0.0.0

  • (3)“no access-list access-list-number” 命令删除访问列表条目
    (2)绑定ACL到指定的接口

  • ip access-group access-list-number {in | out}

  • 在接口配置模式激活访问列表

  • (1)设置inbound或outbound匹配

  • (2)缺省是Outbound

  • (3)“no ip access-group access-list-number” 命令从接口取消激活访问列表

(3)标准ACL举例

  • 如何使Ethernet0和Ethernet1端口只允许源地址为172.16.0.0网络的数据包Outbound?
    ACL的配置以及翻转掩码_第7张图片

  • 如何在端口Ethernet0阻塞主机,阻塞源地址为172.16.4.13的数据包?
    ACL的配置以及翻转掩码_第8张图片

  • 如何在接口Ethernet0阻塞子网,阻塞源地址为172.16.4.0的数据包?
    ACL的配置以及翻转掩码_第9张图片
    6、LAB:标准ACL

  • access-list?

  • access-list 号码 permit/deny 源地址 源反转码(根据源地址进行筛选)

  • int e0

  • ip access-group 号码 out/in

  • show access-list

  • show run

  • no ip access-group 号码 out/in

  • no access-list 号码

7、扩展ACL的配置
(1)扩展ACL和标准ACL的比较
ACL的配置以及翻转掩码_第10张图片
(2)扩展ACL的配置(创建)

  • access-list access-list-number {permit|deny} protocol source source-wildcard[operator port]destination destination-wildcard operator port] [established][log]
  • Access-list-number:100~199
  • permit|deny:指明允许还是阻塞
  • protocol:允许指定协议(IP,TCP,UDP,ICMP,IGRP)
  • source和destination:指明源和目的地址
  • source-wildcard和destination-wildcard
  • operator port:lt,gt,eq,neq(小于,大于,等于,不等于)端口号
  • Established(既定的):只用于inbound TCP,允许TCP建立连接(例如,ACK被置位)
  • log:发送logging信息到console
    ACL的配置以及翻转掩码_第11张图片

(3)扩展ACL的配置(绑定)

  • Router(config-if)#ip access-group access-list-number {in|out}

(4)扩展ACL的配置举例

  • 举例1:如何在接口Ethernet阻塞从subnet 172.16.4.0 到subnet 172.16.3.0的FTP数据包,同时Permit所有其它流量?(阻塞从接口E1到接口E0的数据包)
  • Deny从subnet 172.16.4.0到subnet 172.16.3.0的数据包(out of E0)Permit所有其它流量

ACL的配置以及翻转掩码_第12张图片
解释:access-list 101(编号100~199) deny tcp(ftp包在传输层包协议)
access-list 101 permit ip any any(必须要有条允许的语句,否则断路)

  • 举例2:如何在Ethernet0只阻塞所有来自subnet 172.16.4.0的telnet流量?

ACL的配置以及翻转掩码_第13张图片
(5)LAB:扩展ACL的配置

  • access-list 号码 permit/deny 协议 源 源反转码 源端口 目的 目的反转码 端口
    8、 标识ACL的配置
    (1)标识ACL
  • 使用字符串代替数字,来标识ACL
  • 优点:
  • (1)用有含义的字符串直观标识一个ACL
  • (2)需要的配置超出了99个标准ACL或者100个扩展ACL时,可以采用命名ACL
  • (3)当修改ACL中的某一条语句时,可以在不删除整个ACL的情况下修改它
    (2)标识ACL注意
  • (1)命名ACL与Cisco IOS 11.2之前的版本不兼容
  • (2)命名ACL也包含标准和扩展ACL
  • (3)不能为多个ACL使用相同的名字。不同类型的ACL也不能使用相同的名字
    (3)标识ACL的配置(创建)
  • ip access-list {standard | extended} name {permit|deny { ip access list test conditions}
  • 标识ACL的配置(绑定)
  • Router(config-if)# ip access-group name {in |out}
  • 查看ACL的配置
  • show access-lists {access-list number}
  • show ip int e0
    9、使用ACL控制VTY的访问
    (1)概述
  • 5个终端lines(0~4)
  • 过滤器可以访问路由器vty端口的包
  • 过滤从路由器通过vty访问其他设备的包

ACL的配置以及翻转掩码_第14张图片
(2)配置

  • 创建:与前面相同
  • 绑定:
  • line vty {vty # | vty-range}
  • access-class access-list-number {in | out}
    (3)配置实例
  • 如何只允许在网络192.89.55.0中的主机通过vty访问路由器?
  • access-list 12 permit 192.89.55.0 0.0.0.255
  • | line vty 0 4
  • access-class 12 in

(4)ACL配置要点

  • 访问列表条目的顺序是至关重要的,推荐先配置号访问列表,然后粘贴到路由器
  • 访问列表从上至下逐条匹配,把明确的列表(常用到的)尽量放置到前面,以减少处理负载。
    配置要点
  • No命令:使用no access-list number命令删除访问列表
    -例外:命名访问列表的删除方法不同
  • 隐形声明
  • 除非在最后声明permit any,否则路由器在末尾隐性声明deny any

放置ACL的原则

  • 放置扩展访问列表尽量靠近源
  • 放置标准访问列表尽量靠近目的

ACL的配置以及翻转掩码_第15张图片

  • 例:阻止Token Ring 访问LAN
  • 如果设置扩展列表,应该把它放置在路由器A,因为扩展列表可以指定源和目的,这样Token发送给LAN的数据包不会经过其他路由器和广域网线路
  • 如果设置标准列表,应该把它放置在路由器D,因为标准访问列表不能指定目的地址。

你可能感兴趣的:(电脑网络学习)