ACL访问控制列表
应用场景:
- 1、v*n类似环境中感兴趣流的匹配
- 2、抓取路由,从而达到路由控制的目的
- 3、NAT地址转换筛选
数据匹配规则:
数据包入方向:
- 1、接口收到报文
- 2、判断接口是否调用ACL
- 调用则执行匹配操作,没有调用则进行路由查表
- 3、允许的数据,执行查表操作
- 4、不允许的数据执行丢弃操作
出站规则:
- 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网络的数据
- ip access-list stand 1
- 接口下的调用
- interface f0/0
- ip access-group 1 in \在接口条用ACL名称为1,在in方向执行
- interface f0/0
- 进入视图
- 扩展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方向执行
- interface f/1
- 命名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为不抓取;