Natwork Address Translation

1、静态转换

2、动态转换

3、端口多路复用PAT

4、端口映射(服务器映射)

一、NAT基本概念

在ipv4的网络环境中,由于网络分为私网和公网,私网的地址无法在公网上进行路由

1、目的

  • 将私网的地址转换为公网地址

2、出现背景

  • IP地址不够用

3、转换方式

  • 静态转换
    • 仅进行IP地址转换
    • 1对1转换
    • 形成的是永久性的对应关系
    • 可以根据外网地址直接定位到内网地址,
    • 可以实现内外网互相访问
  • 动态转换
    • 仅进行IP地址转换
    • 多对多转换
    • 内网的一部分转换为外网的一部分
      • 内网地址 多于 外网地址时,无法实现内网所有主机同时上网
      • 外网地址 多于 内网地址
    • 由于是动态的对应关系,所以无法根据外网地址锁定到内网地址,只能实现内网访问外网
  • 端口多路复用PAT(源地址转换,NAT代理上网)
    • 携带端口一起转换
    • 多对一转 内网多个IP地址转换成外网一个IP地址,使用不同端口号进行区分
    • 形成的也是动态的对应关系,只能实现内网访问外网
  • 端口映射(服务器映射)(目的地址转换)
    • 将一台内网的服务器发布到外网,从而使外网的主机可以访问到内网的服务器
    • 目的地址转换
    • 形成的是一个永久性的对应关系,但是只能实现外网访问内网,无法实现内网访问外网

4、转换表中的4类地址

  • 内部局部地址:发送方的内网
  • 内部全局地址:发送方的外网
  • 外部局部地址:接收方的内网
  • 外部全局地址:接收方的外网

5、静态转换

路由器0设置:

//先指定内网接口和外网接口
int g0/0
ip nat inside
int g0/1
ip nat outside
exit
ip nat inside source static 192.168.10.10 23.34.56.100
	#内网转外网 所以是inside
	inside source表示内部
	static表示静态
	192.168.10.10是内网地址
	23.34.56.100是外网地址

6、动态转换

  • 动态的 多对多

  • 命令

    #1、定义内网范围,使用ACL来定义允许
    access-list 1 permit 192.168.10.0 0.0.0.255
    #2、定义外网范围,使用名称指定范围IP
    ip nat pool test 23.34.56.70 23.34.56.71 netmask 255.255.255.0
    #3、应用
    ip nat inside source list 1 pool test
    
  • 清除所有转换表

    clear ip nat translation *
    

7、PAT

  1. 端口多路复用(多对一)

    • 主要是将内网的多个地址转换为外网的一个IP地址(将端口一起转换,从而进行区分)
    • 将内网的多个地址直接转换为外网接口的地址
    • 是目前企业当中最常用的方式(源地址转换,NAT代理上网)
    • 实验

    路由器0设置:

    int g0/0
    ip nat inside 
    int g0/1
    ip nat outside
    exit
    #定义内网范围
    	access-list 1 permit any
    #定义外网范围
    	ip nat pool test 23.34.56.80 23.34.56.80 netmask 255.255.255.0
    或者直接引用接口
    	ip nat inside source list 1 interface g0/1 overload
    #应用(因为使用的是PAT,最后需要加上overload)
    	ip nat inside source list 1 pool test overload
    

    NAT转换表

  2. 端口映射(服务器映射)

    • 将内网的某一台服务器(服务器上就会有对应的服务)映射到外网的某一个IP地址的某个端口

      • 因为内网的端口标识了服务器的服务类型,所以不能更改

      • 映射出去的外网端口可以更改,但是会影响外网客户端访问时的端口号

    • 是目前企业中针对内网服务器对外提供服务时使用(目的地址转换)

    • 配置

      ip nat inside source static tcp 192.168.1.100 80 23.34.56.78 80
      #tcp 192.168.1.100 80	是指使用192.168.1.100的tcp服务的80端口
      #23.34.56.78 80			是指使用23.34.56.78的80端口进行访问
      
posted on 2022-07-04 22:12  大咸鱼8125  阅读(375)  评论(0)    收藏  举报