目录
(1)给Client1、Client2、Server1和Server2配置ip、网关等
(2)进入Client1的FtpClient中,输入要访问的服务器地址,并登录
(4)验证此时client1中httpclient不能访问server1
(5)验证但此时client1中ftpclient可以访问server1
一、ACL
1.ACL概述
- ACL是由一系列permit或deny语句组成的、有序规则的列表
- ACL是一个匹配工具,能够对报文进行匹配和区分
2.ACL应用
- 应用在接口的ACL——过滤数据包(源目ip地址(低级),源目mac,端口 五元组)
- 应用在路由协议——匹配相应的路由条目
- NAT、IPSEC VPN、QOS——匹配感兴趣的数据流(匹配上我设置的 数据流的)
3.ACL工作原理
当数据包从接口经过时,由于接口启用了acl,此时路由器会对报文进行检查,然后做出相应的处理(拒绝permit和允许deny)。
4.规则编号
- 规则编号(Rule ID) : 一个ACL中的每一条规则都有一个相应的编号。
- 步长(Step) : 步长是系统自动为ACL规则分配编号时,每个相邻规则编号之间的差值,缺省值为5。步长的作用是为了方便后续在旧规则之间,插入新的规则。
- Rule ID分配规则: 系统为ACL中首条未手工指定编号的规则分配编号时,使用步长值(例如步长=5,首条规则编号为5)作为该规则的起始编号;为后续规则分配编号时,则使用大于当前ACL内最大规则编号且是步长整数倍的最小整数作为规则编号。
5.通配符
- 通配符是一个32比特长度的数值,用于指示IP地址中,哪些比特位需要严格匹配,哪些比特位无需匹配。
- 通配符通常采用类似网络掩码的点分十进制形式表示,但是含义却与网络掩码完全不同。
子网掩码
连续的1 代表网络位 ,连续的0代表主机位 0 1中间不能穿插
反掩码
连续的0代表网络位,连续的1代表主机位
通配符掩码
根据参考ip地址,通配符“1”对应位可变 ,”0“对应位不可变 ,中间0 1可以穿插
6.ACL的分类与标识
基于ACL规则定义方式的分类:
分类 | 编号范围 | 规则定义描述 |
---|---|---|
基本ACL | 2000~2999 | 仅使用报文的源IP地址、分片信息和生效时间段信息来定义规则。 |
高级ACL | 3000~3999 | 可使用IPv4报文的源IP地址、目的IP地址、IP协议类型、ICMP类型、TCP源/目的端口号、UDP源/目的端口号、生效时间段等来定义规则。 |
二层ACL | 4000~4999 | 使用报文的以太网帧头信息来定义规则,如根据源MAC地址、目的MAC地址、二层协议类型等。 |
用户自定义ACL | 5000~5999 | 使用报文头、偏移位置、字符串掩码和用户自定义字符串来定义规则。 |
用户ACL | 6000~6999 | 既可使用IPv4报文的源IP地址或源UCL(User Control List)组,也可使用目的IP地址或目的UCL组、IP协议类型、ICMP类型、TCP源端口/目的端口、UDP源端口/目的端口号等来定义规则。 |
基于ACL标识方法的分类:
分类 | 规则定义描述 |
---|---|
数字型ACL | 传统的ACL标识方法。创建ACL时,指定一个唯一的数字标识该ACL。 |
命名型ACL | 通过名称代替编号来标识ACL。 |
7.ACL的匹配机制
从上而下,一次匹配,一旦匹配,立即执行,不再匹配
小范围写在上面,大范围写在下面。
8.ACL的应用原则
- 基本ACL:尽量用在靠近目的的地点点
- 高级ACL:尽量用在靠近源的地方(可以保护带宽和其他资源)
9.匹配规则
- 一个接口的同一个方向,只能调用一个acl
- 一个acl里面可以有多个rule规则,按照规则ID从小到大排序,从上往下依次执行
- 数据包一旦被某rule匹配,就不再继续向下匹配
- 用来做数据包访问控制时,默认隐含放过所有(华为设备)
二、ACL访问控制列表实验
步骤:1.建立规则 2.进入接口 调用规则
1、基本ACL访问控制列表实验
(1)给Client1、Client2、Server1和Server2配置ip、网关等
(2)配置路由
<Huawei>u t m #关闭华为的信息提示
<Huawei>sys #进入系统视图
[Huawei]sys r1 #改名为r1
[r1]int g0/0/0 #进入0/0/0接口
[r1-GigabitEthernet0/0/0]ip add 192.168.1.254 24 #配置IP
[r1-GigabitEthernet0/0/0]int g0/0/1 #进入0/0/1接口
[r1-GigabitEthernet0/0/1]ip add 192.168.2.254 24 #配置IP
[r1-GigabitEthernet0/0/1]int g0/0/2 #进入0/0/2接口
[r1-GigabitEthernet0/0/2]ip add 192.168.3.254 24 #配置IP
[r1-GigabitEthernet0/0/2]q #退出接口模式
(3)此时全网互通
(4)配置路由拒绝访问命令
[r1]acl number 2000 #建立acl 2000规则
[r1-acl-basic-2000]rule 5 deny source 192.168.1.1 0 #默认编号5 拒绝来自192.168.1.1的流量
[r1-acl-basic-2000]q #退出acl 2000规则
[r1]int g0/0/1 #进入g0/0/1接口
[r1-GigabitEthernet0/0/1]traffic-filter outbound acl 2000 #当设备从特定接口向外发送数据时执行ACL
[r1-GigabitEthernet0/0/1]q #退出
(5)验证实验
在server1中配置服务器信息并启动:
此时client2可以访问server1: