NAT概述NAPT

# NAT概述

#### 为什么会有NAT

  以前由于IPv4地址不足,无法满足网络的发展,IPv6还未广泛应用

  为了节约IPv4地址,将IPv4地址分为公有地址和私有地址,企业内网都使用私有IPv4地址,而公网上的设备都使用公网IPv4地址

  由于私有IPv4地址在不同的企业内是被重复使用的,所以企业私有IPv4地址在公网上使用会产生IP地址冲突,所以企业私有IPv4地址无法透传到公网,所以企业内网无法与公网设备通信

  如果企业内网要与公网通信,企业就需要拥有公网IPv4地址,假设企业有上千台电脑和服务器,所以企业也必然有上千个私有IPv4地址,但是企业可以租用到的公有IPv4地址可能只有4个或8个,所以公网IPv4地址数量太少,无法满足企业内网所有设备的上网需求

  所以企业的私有IPv4地址要与公网通信,就需要将多个私有IPv4地址转换为1个公有IPv4地址后,才可以和公网设备通信

  如果将企业私有IPv4地址转换为公有IPv4地址,需要依赖一个技术,NAT(网络地址转换)

#### NAT是什么

  NAT是将IP数据报文中的私有IP地址转换为公有IP地址的过程

#### NAT的作用
  - 对数据包的“私有IP地址”和“公有IP地址”进行转换,实现内网到外网的访问
  - 隐藏内网,避免来自外网的攻击,提高网络安全性

#### **NAT核心工作表:NAT转换表**

  每一个条目 1个私有 和 1个公有 绑定在一起

  **数据包从内向外发送时**

  - 转换的是数据包的:**“源IP地址”**,由私转公
  - 先经过路由表,再经过NAT表

  **数据包从外向内返回时**

  - 转换的是数据包的:**“目标IP地址”** 由公转私
  - 先经过NAT表,再经过路由表

### NAT分类

  #### 静态NAT:

    私有IP地址和公有IP地址都是1对1转换,不节省公网IP

  #### 动态NAT:

    基于“NAT地址池”实现“私有IP地址”和“公有IP地址”之间的转换
一个公有IP地址在不同的时间可以为多个私有IP地址进行转换
但是在同一时间一个公有IP地址只能为一个私有IP地址的网络会话进行转换
所以,动态NAT也没有从根本上解决公网IP节约的问题,
所以,如果公司的内网设备有同时上网的需求,产生大量网络会话,会导致NAT地址池枯竭
那么NAT地址池里公有IP地址的数量就需要很多很多,才有可能满足私有IP地址的主机上网的需求
所以动态NAT也没有从根本上解决节省公有IP地址的目的

  #### NAPT:网络地址端口转换( Network Address Port Translation )

    多对一的地址转换,使用“IP地址+端口号”的形式进行转换,使多个私有IP地址可共用一个公网IP地址访问外网

    允许多个私有地址同时转换为同一个公有地址,因此也称为“多对一地址转换”或地址复用

    NAPT的实现方式主要有EasyIP和地址池NAPT

  #### NAT Server:

    NATServer 是一种特殊的静态NAT

    主要应用于外网用户访问企业内网服务器的场景

  

 

第一步:给PC1/PC2/Server1配置接口IP地址,掩码,网关
第二步:配置NAT
R1的配置:
[Huawei]sys R1
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip address 192.168.1.254 24
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip address 200.1.1.1 29    //掩码是29
[R1-GigabitEthernet0/0/1]quit
[R1]ip route-static 0.0.0.0 0.0.0.0  200.1.1.6   //配置默认路由,下一跳为公网网关
[R1]int g0/0/1    //进入出接口
[R1-GigabitEthernet0/0/1]nat static global 200.1.1.2 inside 192.168.1.1  
//在出口设备的出接口上配置静态NAT,让公网IP 200.1.1.2 和内网IP 192.168.1.1做1对1绑定
以后PC1在访问公网的时候,PC1发送的数据包到达R1的g0/0/1接口的时候,这个接口会将PC1发的
这个数据报文的源IP:192.168.1.1 转换为200.1.1.2,从而实现内网访问公网的需求

[R1-GigabitEthernet0/0/1]nat static global 200.1.1.3 inside 192.168.1.2  

第三步:配置ISP-dx路由器
ISP-dx2的配置:
[Huawei]sys ISP-dx
[ISP-dx]int g0/0/0
[ISP-dx-GigabitEthernet0/0/0]ip address 200.1.1.6 29
[ISP-dx-GigabitEthernet0/0/0]int g0/0/1
[ISP-dx-GigabitEthernet0/0/1]ip address 210.1.1.254 24

第四步:测试与验证
PC1 ping  Server1  可以通
PC2 ping  Server1  可以通

**1)NAT配置在出口设备的出接口上**

**2)NAT转换表**

NAT有一个转换表:一个私有IP 和一个公网IP绑定在一起

数据包出去的时候,转换源IP: 将源IP由私有IP转换为公有IP,  目标IP不变

数据包回来的时候,转换目的IP: 将目的IP由公有IP地址,转换为私有IP,源IP不变

**3)备注:**

-默认路由解决的是数据出去的问题

-NAT解决的时候数据回来的问题

4)**静态NAT:**
私有IP地址和公有IP地址是1对1转换
一个私有IP地址,绑定一个公有IP地址
静态1对1 并没有从根本上节约IPv4地址

 

第一步:给PC1/PC2/Server1配置接口IP地址,掩码,网关
第二步:配置默认路由
R1的配置:
[Huawei]sys R1
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip address 192.168.1.254 24
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip address 200.1.1.1 29    //掩码是29
[R1-GigabitEthernet0/0/1]quit
[R1]ip route-static 0.0.0.0 0.0.0.0  200.1.1.6   //配置默认路由

第三步:配置动态NAT
[R1]nat address-group 1 200.1.1.2 200.1.1.5 
[R1]acl 2000
[R1-acl-basic-2000]rule 10 permit source 192.168.1.0 0.0.0.255
[R1-acl-basic-2000]quit
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]nat outbound  2000 address-group 1  no-pat
// 让acl 2000 定义的内网地址段,192.168.1.0/24  绑定公网地址池 address-group 1
//不做端口转换(no-pat)

第四步:配置ISP-dx路由器
ISP-dx的配置:
[Huawei]sys ISP-dx
[ISP-dx]int g0/0/0
[ISP-dx-GigabitEthernet0/0/0]ip address 200.1.1.6 29
[ISP-dx-GigabitEthernet0/0/0]int g0/0/1
[ISP-dx-GigabitEthernet0/0/1]ip address 210.1.1.254 24

 

第一步:给PC1/PC2/Server1配置接口IP地址,掩码,网关
第二步:配置默认路由
R1配置:
[Huawei]sys R1
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip address 192.168.1.254 24
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip address 200.1.1.1 29    //掩码是29
[R1-GigabitEthernet0/0/1]quit
[R1]ip route-static 0.0.0.0 0.0.0.0  200.1.1.6   //配置默认路由

第三步:配置NAPT之地址池NAT
R1配置:
[R1]nat address-group 1 200.1.1.2 200.1.1.5   //创建nat地址池
[R1]acl 2000
[R1-acl-basic-2000]rule 10 permit source 192.168.1.0 0.0.0.255   //定义acl
[R1-acl-basic-2000]quit
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]nat outbound  2000 address-group 1 
//acl 2000 定义的内网地址段,192.168.1.0/24  绑定公网地址池 address-group 1
//表示的是利用address-group 1地址池里面的公网IP给
acl 2000定义的私有IP地址段:192.168.1.0/24 做nat转换


第四步:配置ISP-dx路由器
ISP-dx的配置:
[Huawei]sys ISP-dx
[ISP-dx]int g0/0/0
[ISP-dx-GigabitEthernet0/0/0]ip address 200.1.1.6 29
[ISP-dx-GigabitEthernet0/0/0]int g0/0/1
[ISP-dx-GigabitEthernet0/0/1]ip address 210.1.1.254 24

第五步:测试与验证
PC1  ping  server1  -t   通
PC2  ping  server1  -t   通

 

第一步:给PC1/PC2/Server1配置接口IP地址,掩码,网关
第二步:配置默认路由
R1配置:
[Huawei]sys R1
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip address 192.168.1.254 24
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip address 200.1.1.1 30    //掩码是30
[R1-GigabitEthernet0/0/1]quit
[R1]ip route-static 0.0.0.0 0.0.0.0  200.1.1.2   //配置默认路由

第三步:配置NAPT之easy-ip
R1配置:
[R1]acl 2000
[R1-acl-basic-2000]rule 10 permit source 192.168.1.0 0.0.0.255   //定义acl
[R1-acl-basic-2000]quit
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]nat outbound  2000 
//让acl 2000 定义的内网地址段,利用出接口IP地址来做nat 转换

第四步:配置ISP-dx路由器
ISP-dx的配置:
[Huawei]sys ISP-dx
[ISP-dx]int g0/0/0
[ISP-dx-GigabitEthernet0/0/0]ip address 200.1.1.2  30
[ISP-dx-GigabitEthernet0/0/0]int g0/0/1
[ISP-dx-GigabitEthernet0/0/1]ip address 210.1.1.254 24

第五步:测试与验证
PC1-4  ping  server1  -t  (可以抓包验证转换的地址为出接口IP地址)

 

第一步:给PC1/PC2/Server1配置接口IP地址,掩码,网关
第二步:配置默认路由
R1配置:
[Huawei]sys R1
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip address 192.168.1.254 24
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip address 200.1.1.1 29    //掩码是29
[R1-GigabitEthernet0/0/1]quit
[R1]ip route-static 0.0.0.0 0.0.0.0  200.1.1.6   //配置默认路由

第三步:配置NAPT只地址池NAT
R1配置:
[R1]nat  address-group 1  200.1.1.2  200.1.1.4
[R1]acl 2000
[R1-acl-basic-2000]rule 10 permit source 192.168.1.0 0.0.0.255   //定义acl
[R1-acl-basic-2000]quit
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]nat outbound  2000  address-group 1   
 //利用address-group 1地址池里面的公网IP给:
 acl 2000定义的私有IP地址段:192.168.1.0/24 做nat转换
 
 
备注: 让外网主机ping 通200.1.1.5(做nat-server -icmp 绑定)
[R1-G0/0/1]nat server protocol icmp global 200.1.1.5 inside 192.168.1.10


第四步:配置NAT Server
R1配置:
[R1]int g0/0/1
[R1-G0/0/1]nat server protocol tcp global 200.1.1.5  80 inside 192.168.1.10 80
        //将私有IP:192.168.1.10的80端口映射给公有IP:200.1.1.5的80的端口
        //让外网主机能够通过200.1.1.5:80 访问到企业内网web服务器
        
[R1-G0/0/1]nat server protocol tcp global 200.1.1.5  21 inside 192.168.1.20 21
        //将私有IP:192.168.1.20的21端口映射给公有IP:200.1.1.5的21的端口
        //让外网主机能够通过200.1.1.5:21 访问到企业内网FTP服务器
        
[R1-G0/0/1]quit
[R1]nat alg  ftp  enable    //开启FTP协议的NAT ALG功能
    //如果ftp数据想通过nat来透传,需要nat中开启alg功能
======================================================================
备注:
NAT能够识别网络层IP头部和传输层TCP/UDP头部的IP地址信息和端口信息
但是对于一些特殊应用层协议,如FTP,NAT不能很好识别FTP报文数据部分包含的IP地址信息或端口信息,
所以在FTP报文数据部分包含的IP地址信息和端口信息,NAT无法有效转换
如果要解决这些特殊协议的NAT转换,就需要在NAT中开启应用层网关ALG
=======================================================================

第五步:配置ISP-dx路由器
ISP-dx的配置:
[Huawei]sys ISP-dx
[ISP-dx]int g0/0/0
[ISP-dx-GigabitEthernet0/0/0]ip address 200.1.1.6 29
[ISP-dx-GigabitEthernet0/0/0]int g0/0/1
[ISP-dx-GigabitEthernet0/0/1]ip address 210.1.1.254 24

第五步:测试与验证
内网:PC1-4  ping  server1  -t 
外网:Client1 通过http-client1 访问内网web服务器: http://200.1.1.5
外网:Client1 通过ftp-client1 访问内网ftp服务器 :服务器地址:200.1.1.5

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

2301_77277479

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值