ACL 和 NAT

一、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两种应用:

  1. 应用在接口的ACL-----过滤数据包(原目ip地址,原目 mac, 端口 五元组)过滤流量,然后 匹配 规则后判断该流量 通过或拒绝。

  2. 应用在路由协议-------匹配相应的路由条目

  3. 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匹配规则

  1. 一个接口的同一个方向,只能调用一个acl
  2. 一个acl里面可以有多个rule 规则,按照规则ID从小到大排序,从上往下依次执行
  3. 数据包一旦被某rule匹配,就不再继续向下匹配
  4. 用来做数据包访问控制时,默认隐含放过所有(华为设备)

二、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

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值