ACL的概述
ACL(access list):访问控制列表
- ACL是由一系列permit和deny语句组成的、有序规则的列表
- ACL是一个匹配工具,能够对报文进行匹配和区分
ACL两种应用:
- 应用在接口的ACL-----过滤数据包(原目ip地址,原目 mac, 端口 五元组)
- 应用在路由协议-------匹配相应的路由条目
- NAT、IPSEC VPN、QOS-----匹配感兴趣的数据流(匹配上设置的 数据流的)
工作原理
当数据包经过端口时,由于端口启用了ACL,路由器检测该报文进行检测,然后做出相应的处理。
ACL种类
-
基本ACL 2000-2999 依据数据包当中的源IP地址匹配数据(数据时从哪个IP地址过来的)
-
高级ACL 3000-3999依据数据包当中源、目的IP,源、目的端口、协议号匹配数据(五元组)
-
编号4000-4999---二层ACL,MAC、VLAN-id、802.1q
ACL的组成
-
建立ACL2000的规则表
-
rule(规则) deny或permit(允许或拒绝) source 1.1.1.0(源地址) 0.0.0.255(通配符掩码)
-
规则编号一个ACL中每一条规则都有一个相应的编号,而步长默认为5,作用是为了方便后续在旧规则中插入新的规则。
-
通配符掩码是匹配acl控制范围,0代表此位不可变化,1代表此位可以变化。
实验拓扑
基础配置
实验目的:
通过ACL使得192.168.1.1(客户机)不可访问192.168.2.1(服务器)
192.168.1.1(客户机)可以正常访问192.168.2.2(服务器)
client1(客户机1):192.168.1.1 /24
client2(客户机2):192.168.2.1 / 24
server1(服务器1):192.168.2.1 /24
server2(服务器2):192.168.3.1 /24
在路由器三个端口上配上对应的IP地址
此时可发现客户机1可ping通服务器1
开始ACL的配置
[R2]ac1 2000
[R2-acl-basic-2000lrule deny source 192.168.1.1 0
[R2-acl-basic-2000]q[R2lint g0/0/1
[R2-GigabitEthernet0/0/11traffic
[R2-GigabitEthernet0/0/lltraffic-filter ou
[R2-GigabitEthernet0/0/1]traffic-filter outbound acl 2000
[R2-GigabitEthernet0/0/1ldis th
[V200R003C001
#
interface GigabitEthernet0/0/1
ip address 192.168.2.254 255.255.255.0
traffic-filter outbound acl 2000
return
#
[R2-GigabitEthernet0/0/1]q
此时客户机1 ping服务器1失效
而客户机1 ping 服务器2 成功,由此得出试验成功
高级配置
client1 可以ping 通 serever1 但是无法访问端口号可视为成功。
创建acl3000表配置并且应用
结果
总结
应用原则
- 基本ACL:尽量用在靠近目的点
- 高级ACL:尽量用在靠近源的地方(可以保护带宽和其他资源)