一、ACL
1.ACL 概述及 产生的背景
ACL: access list 访问控制列表
2.ACL 类型
基本ACL: acl 2000 - 2999 只能限制 源IP地址, 依据依据数据包当中的源IP地址匹配数据
高级ACL: acl 3000 - 3999 限制 源ip 目的ip,源mac 目的 mac, 端口 五元组
依据数据包当中源、目的IP,源、目的端口、协议号匹配数据
编号4000-4999---二层ACL,MAC、VLAN-id、802.1q
3.ACL 工作原理
当数据包从接口经过时,由于接口启用了acl, 此时路由器会对报文进行检查,然后做出相应的处理。
4.ACL 应用
ACL两种应用:
-
应用在接口的ACL-----过滤数据包(原目ip地址,原目 mac, 端口 五元组)过滤流量,然后 匹配 规则后判断该流量 通过或拒绝。
-
应用在路由协议-------匹配相应的路由条目
-
NAT、IPSEC VPN、QOS-----匹配感兴趣的数据流(匹配上我设置的 数据流的)规定哪些流量能使用NAT
5.关于通配符掩码
首先让我们先了解一下子网掩码和反掩码。
子网掩码的作用是:用连续的 1 表示网络位,0 表示主机位。
如:192.168.1.0/24 C类地址 的 子网掩码 用二进制表示为 :
1111 1111 . 1111 1111 . 1111 1111 . 0000 0000
如上述所示:为 1 的有二十四位,为 0 的有八位。也就是主机位有 8 位,网络位有 24 位。
反掩码 顾名思义,就是用 0 表示网络位, 1 表示主机位。
如:192.168.1.0/24 C类地址 的 反掩码 用二进制表示为 :
0000 0000 . 0000 0000 . 0000 0000 . 1111 1111
看来 子网掩码 和 反掩码 0 或 1 都是连续的,但是通配符掩码的0 和 1 可以不连续。
通配符的 “0”表示固定,即用来固定不能变的部分。
通配符的 “1”表示任意取值,用来表示放开的部分。而且不需要连续
比如:
Ip为192.168.1.6 通配符为0.0.0.6。他匹配出来的IP为 192.168.1.0 1.2 1.4 1.6 四个
先把它们转化成二进制:
192.168.1.0000 0110
0 . 0 .0.0000 0110
因为通配符的 0 表示固定 ,所有只有第二位和第三位可以变换。得出四种IP地址。
关于ACL 案例
案例1-----拒绝源IP为192.168.10.1的数据包
acl 2000
rule deny source 192.168.10.1 0.0.0.0
案例2------拒绝源IP为192.168.10.0/24的所有数据包
acl 2000
rule deny source 192.168.10.0 0.0.0.255
案例3------拒绝源IP为192.168.10.0/24所有奇数主机发送的数据包
acl 2000
rule deny source 192.168.10.1 0.0.0.254
6.实际操作
<Huawei>u t m #关闭提示信息
Info: Current terminal monitor is off.
<Huawei>
<Huawei>sys #进入系统视图
Enter system view, return user view with Ctrl+Z.
[Huawei]sys R1 #重命名
[R1]
[R1]int g0/0/0 #进入端口
[R1-GigabitEthernet0/0/0]ip add 192.168.1.254 24 #配置网关
[R1-GigabitEthernet0/0/0]
[R1-GigabitEthernet0/0/0]int g0/0/1 #进入端口
[R1-GigabitEthernet0/0/1]ip add 192.168.2.254 24 #配置网关
[R1-GigabitEthernet0/0/1]
[R1-GigabitEthernet0/0/1]int g0/0/2 #进入端口
[R1-GigabitEthernet0/0/2]ip add 192.168.3.254 24 #配置网关
[R1-GigabitEthernet0/0/2]
[R1-GigabitEthernet0/0/2]q
[R1]acl 2000 #建立基本acl
[R1-acl-basic-2000]rule 5 deny source 192.168.1.1 0.0.0.0 #建立一个编号为5
拒绝 来自 192.168.1.1 的流量 规则
[R1-acl-basic-2000]
[R1-acl-basic-2000]q
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]traffic-filter outbound acl 2000 #数据流向 及 调用规则
[R1-GigabitEthernet0/0/1]q
[R1]
在接口下调用acl 分为两个方向
inbound方向--------当接口收到数据包时执行ACL
outbound方向-------当设备从特定接口向外发送数据时执行ACL
-----------------------
没有被acl匹配数据默认采用permit动作
-----------------------
基本acl需要调用在离 目的设备 最近的接口上
高级ACL:尽量用在靠近源的地方(可以保护带宽和其他资源)
先设置192.168.2.1 服务器的 http 服务
打开AR1进行配置
<Huawei>u t m #关闭提示信息
Info: Current terminal monitor is off.
<Huawei>
<Huawei>sys #进入系统视图
Enter system view, return user view with Ctrl+Z.
[Huawei]sys R1 #重命名
[R1]
[R1]int g0/0/0 #进入端口
[R1-GigabitEthernet0/0/0]ip add 192.168.1.254 24 #配置网关
[R1-GigabitEthernet0/0/0]
[R1-GigabitEthernet0/0/0]int g0/0/1 #进入端口
[R1-GigabitEthernet0/0/1]ip add 192.168.2.254 24 #配置网关
[R1-GigabitEthernet0/0/1]
[R1-GigabitEthernet0/0/1]int g0/0/2 #进入端口
[R1-GigabitEthernet0/0/2]ip add 192.168.3.254 24 #配置网关
[R1-GigabitEthernet0/0/2]
[R1-GigabitEthernet0/0/2]q
[R1]acl 3000 #建立高级acl
[R1-acl-basic-3000]rule 5 deny tcp source 192.168.1.1 0 destination 192.168.2.1 0 destination-port eq www #建立一个编号为5 拒绝 来自 192.168.1.1 的流量 访问 192.168.2.1
www (80端口)服务
[R1-acl-basic-3000]
[R1-acl-basic-3000]q
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000 #数据流向 及 调用规则
[R1-GigabitEthernet0/0/0]q
[R1]
基本ACL:尽量用在靠近目的点
高级ACL:尽量用在靠近源的地方(可以保护带宽和其他资源)
注意!!:虚拟设备端口默认打开,在配置真实设备时记得进入端口输入 undo shut
然后查看是否配置成功
7.ACL匹配规则
- 一个接口的同一个方向,只能调用一个acl
- 一个acl里面可以有多个rule 规则,按照规则ID从小到大排序,从上往下依次执行
- 数据包一旦被某rule匹配,就不再继续向下匹配
- 用来做数据包访问控制时,默认隐含放过所有(华为设备)
二、NAT
NAT 地址转换
作用:通过对网络地址转换,实现内网地址和公网地址的互相访问
原理:主要应用在企业出口路由器上,从内网出去时将源地址转换为企业公网ip,从公网中回来时将目的地址及公网地址转为对应的内网地址。
1.NAT分类
静态NAT:私网地址和公网地址一对一映射,局限性是需要每一个私网ip对应一个公网ip,所以需要公网ip比较多。(不如直接买公网IP)
动态NAT:将公网ip划出一个公网ip池,当内网地址访问外网时随机分配一个公网对应ip,访问完毕后回收公网ip。(没什么人用这个,公网池分配完其它私网就无法分配到了,就没法上网了)
NAT Server:(端口映射)可以让用户 访问内网服务器。
你访问 200.0.0.1 等于 访问 192.168.1.100
Easy-IP:使用一个公网地址 可供多个私网使用
使用端口号区分 数据到底给 哪个私网 (空余 端口有多少就可以供多少个私网上网)
NAT 应用场景
具体过程:
200.0.0.135 公网地址 买的 运营商给你的
192.168.1.1 公司的内网地址
去访问 外网服务器 180.101.50.242
源地址 192.168.1.1 目的地址180.101.50.242
经过 路由器NAT技术处理 静态模式
源地址:200.0.0.135 目的地址:180.101.50.242
回包的时候
源地址 180.101.50.242 目的地址:200.0.0.135
经过 路由器NAT技术处理
源地址 180.101.50.242 目的地址:192.168.1.1
1.静态NAT实验配置
工程手动将一个私有地址和一个公网地址进行关联,一 一对应,缺点和静态路由一样
<Huawei>u t m #关闭提示信息
Info: Current terminal monitor is off.
<Huawei>
<Huawei>sys #进入系统视图
Enter system view, return user view with Ctrl+Z.
[Huawei]sys chuko #更改名称
[chuko]
[chuko]int g0/0/1 #进入接口
[chuko-GigabitEthernet0/0/1]ip add 192.168.1.254 24 #配置网关
[chuko-GigabitEthernet0/0/1]
[chuko-GigabitEthernet0/0/1]int g0/0/0 #进入接口
[chuko-GigabitEthernet0/0/0]ip add 200.0.0.135 24 #配置网关
[chuko-GigabitEthernet0/0/0]
[chuko-GigabitEthernet0/0/0]nat static enable #nat 静态启用
[chuko-GigabitEthernet0/0/0]
[chuko-GigabitEthernet0/0/0]nat static global 200.0.0.148 inside 192.168.1.1 #设置nat 静态 外网网址是 200.0.0.148 对应内网网址是 192.168.1.1 #注意!不能直接使用 接口地址200.1.1.1
[chuko-GigabitEthernet0/0/0]q
[chuko]
[chuko]dis nat static #查看静态nat信息。
Static Nat Information:
Interface : GigabitEthernet0/0/0
Global IP/Port : 200.0.0.148/---- #外网IP
Inside IP/Port : 192.168.1.1/---- #内网IP
Protocol : ----
VPN instance-name : ----
Acl number : ----
Netmask : 255.255.255.255
Description : ----
Total : 1
[chuko]
查看能否ping通
2.动态配置
基于静态NAT实验, 配置动态NAT(用 undo 把静态配置删掉)
[chuko]int g0/0/0 #进入接口
[chuko-GigabitEthernet0/0/0]dis th #查看当前视图配置
[V200R003C00]
#
interface GigabitEthernet0/0/0
ip address 200.0.0.135 255.255.255.0
nat static global 200.0.0.148 inside 192.168.1.1 netmask 255.255.255.255
nat static enable
#
return
[chuko-GigabitEthernet0/0/0]undo nat static global 200.0.0.148 inside 192.168.1.
1 netmask 255.255.255.255 #取消操作
[chuko-GigabitEthernet0/0/0]undo nat static enable #取消操作
[chuko-GigabitEthernet0/0/0]
[chuko-GigabitEthernet0/0/0]dis th
[V200R003C00]
#
interface GigabitEthernet0/0/0
ip address 200.0.0.135 255.255.255.0
#
return
[chuko-GigabitEthernet0/0/0]q
[chuko]
[chuko]nat address-group 1 200.0.0.100 200.0.0.130 #建立地址池
[chuko]
[chuko]acl number 2000 #添加低级acl
[chuko-acl-basic-2000]
[chuko-acl-basic-2000]rule 5 permit source 192.168.1.0 0.0.0.255#给需要地址转换的网段添加规则
[chuko-acl-basic-2000]
[chuko-acl-basic-2000]q
[chuko]int g0/0/0
[chuko-GigabitEthernet0/0/0]
[chuko-GigabitEthernet0/0/0]nat outbound 2000 address-group 1 no-pat #添加向外发送 规则
[chuko-GigabitEthernet0/0/0]
[chuko-GigabitEthernet0/0/0]q
[chuko]
三、NAT Server (NATPT 端口映射)
NAT Server----内网服务器对外提供服务,针对目的ip和目的端口映射
内网服务器的相应端口映射成路由器公网ip地址的相应端口
配置好ip地址
企业出口路由器需要配置默认路由
在企业出口路由器上 的g0/0/1 口配置
int g0/0/1
ip address 200.1.1.1 255.255.255.0
nat server protocol tcp global current-interface www inside 192.168.1.100 www
nat static enable
四、Easy - IP
1.使用列表匹配私网的ip地址
2.将所有的私网地址映射成路由器当前接口的公网地址
根据上述 NAT Server 进行配置
企业出口配置:
acl 2000
rule permit source 192.168.1.0 0.0.0.255
int g0/0/1
undo nat static global 200.1.1.100 inside 192.168.1.1 netmask 255.255.255.255
nat outbound 2000
display nat session all