ACL访问控制列表

应用场景:

  • 1、v*n类似环境中感兴趣流的匹配
  • 2、抓取路由,从而达到路由控制的目的
  • 3、NAT地址转换筛选

数据匹配规则:

数据包入方向:
ACL访问控制列表

  • 1、接口收到报文
  • 2、判断接口是否调用ACL
    • 调用则执行匹配操作,没有调用则进行路由查表
  • 3、允许的数据,执行查表操作
  • 4、不允许的数据执行丢弃操作

出站规则:
ACL访问控制列表

  • ACL只能过滤经过本设备的流量,无法过滤自己设备产生的流量;

ACL的匹配规则:

ACL访问控制列表
数据包进入ACL语句中,必定已经执行了一次转发或者丢弃操作,如果一个接口单方向调用多个ACL语句,无法生效多条,只能生效最后配置的一条
#:思科设备默认隐形最后一条ACL语句为阻止所有数据;

ACL的类型

- 标准ACL:

只能匹配源地址的访问控制列表**
- access-list 1 deny 1.1.1.0 0.0.0.255
- access-list 1 dent 1.1.2.0 0.0.0.255
- access-list 1 permit any
默认直接配置,所以有语句的seq从10开始,第二句20,第三句30,留下中间数据方便冗余更改优先级

  • 添加其他语句需要进入ACL视图配置:
    • 进入视图
      • ip access-list stand 1
        • 11 deny 192.1.1.0 0.0.0.255 \调价ACL seq 11阻止源地址192,.168.1.0/24网络的数据
    • 接口下的调用
      • interface f0/0
        • ip access-group 1 in \在接口条用ACL名称为1,在in方向执行

- 扩展ACL:

只能匹配原地址、目的地址,协议、端口号、TTL等信息
配置

  • access-list 100 deny ip 1.1.1.0 0.0.0.255 host 3.3.3.3 \阻止原地址为1.1.1.0/24,目的地址为3.3.3.3/32的数据包
  • access-list 100 permit ip any any \允许所有其他任何的源和目的进入视图添加15编号的ACL语句:
  • ip access-list extended 100 \进入access-list 扩展100的ACL
    • 15 deny ip 1.1.2.0 0.0.0.255 192.168.3.0 0.0.0.255 \\15 优先级 阻止源IP 1.1.2.0 255.255.255.0和目的IP:192.168.3.0 255.255.255.0的地址段
  • 接口下调用
    • interface f/1
      • ip access-group 100 out \在接口条用ACL名称为100,在OUT方向执行

- 命名ACL:

命名标准ACL:

  • ip access-list standard NAT \进入自定义名字为NAT的标准ACL
    • 10 deny 1.1.1.0 0.0.0.255 \ 优先级为10 阻止 1.1.1.0 255.255.255.0的地址在此接口进入
    • 20 permit ary \优先级为20 允许所有地址可以通过(先过滤优先级10在过滤20,不符合10的要求直接丢弃)
      命名扩展ACL:
  • ip access-list external NAT \ 进入自定义名字为NAT的扩展ACL
    • 10 deny ip 原地址 源掩码 目的地址 目的掩码 \优先级为10 阻止 IP协议 X.X.X.X X.X.X.X DIP: X.X.X.X X.X.X.X)

ACL通配符掩码(反掩码):

192.168.1.0/25 用标准ACL匹配原地址
#25位掩码为 1111 1111 . 1111 1111 . 1111 1111 . 1 000 0000
用32位掩码减去使用掩码
32位掩码位 1111 1111 . 1111 1111 . 1111 1111 . 1 111 1111
25位掩码为 1111 1111 . 1111 1111 . 1111 1111 . 1 000 0000
结果等于= 0000 0000 。0000 0000 . 0000 0000 。 0 111 1111
把结果加起来就是反掩码
结果等于 7个1的二进制 也就是 27 , 27 1+2+4+8+16+32+64等于127
所有最终结果为
0.0.0.127
结束地址范围减去起始地址范围等于最终结果

192.168.0.0/23
23位掩码为 255.255.254.0
32位掩码为 255.255.255.255
32位掩码减去23位掩码
255.255.255.255 - 255.255.254.0 等于 0.0.1.255
最终掩码:0.0.1.255
说人话就是 最大地址减去起始地址得出使用地址

或者转换成10进制使用
192.168.0.0/23
地址范围:
起始地址 ------ 结束地址
192.168.0.0 ~ 192.168.1.255
结束地址减去起始地址
结束地址 --------- 起始地址
192.168.1.255 - 192.168.0.0
最终结果:
0.0.1.255

- 抓取感兴趣流

使用 permit 为抓取感兴趣流,deny为不抓取;