博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

NAT是什么?使用场景有哪些?

Posted on 2023-03-01 17:52  池塘鱼  阅读(1075)  评论(0编辑  收藏  举报

前言

在ipv4地址中,存在私有地址和公有地址的区分:
公有ip:具有全球唯一性,可以在互联网通讯,付费使用,一般用以进行互联网通讯;
私有ip:具有本地唯一性,不能在互联网通讯,无需付费,一般用以局域网内通信;

私有ip地址:
10.0.0.0/8-10.255.255.255

172.16.0.0/16-172.31.0.0/16

192.168.0.0/24 –192.168.255.0/24

一、NAT(NetWork Address Translation)

  • 定义:网络地址转换,将IP数据报报文的源ip地址或目的ip地址转换为另一个ip地址的过程。
  • 作用:解决IPV4的ip地址不够用的问题,将私网和公网在访问时进行ip地址转换,使一个公网ip可以重复利用。
  • 部署:一般部署在网络出入口位置,设备常用的有路由器、防火墙等。
    • 这种方法需要在专用网连接到因特网的边界路由器上安装NAT软件。装有NAT软件的路由器叫做NAT路由器,它至少有一个有效的外部全球IP地址。这样,所有使用本地地址的主机在和外界通信时,都要在NAT路由器上将其本地地址转换成全球IP地址,才能访问因特网连接,回来时再根据记录转换回来。
  • 行为:NAT设备负责对UDP数据报进行重写,修改UDP包的源/目的ip和端口及ip分组中的源/目的ip。

二、种类

  • 动静态维度:
    • 静态:为固定的对应关系,相当于绑定,可直接进行映射。只用ip的为一对一,ip+端口的为一对多(一个公网ip被多个私网ip复用)。一般用于在内网中对外提供服务的服务器。
    • 动态:为一对多或多对多,有两种,
      • 一是从动态ip地址池取,用完后放回池中,实现公网ip的复用。适合大多数场景;
      • 二是通过easy ip,不从池中取,而是需要时通过拨号获取临时或固定的公网ip。适合小型局域网,如企业、网吧等。
  • NAT/NAPT维度
    • NAT:一对一,即ip之间的转换,一个公网ip同时只能有一台机器使用。这种方式会对外暴露所有的端口。
    • NAPT:一对多,即结合端口映射,ip+端口 作为一个组合进行转换,因此一个公网ip可以通过结合不同的端口做实现复用。
      • 注:端口映射 如果使用的端口是80/8080/443,其公网端口是被运营商封堵的,需要在通信管理局完成网站备案后方可开通,或者使用其他端口。

三、场景

  • 内网服务器以公网IP对外提供应用

   NAT server 创建全局(基于全策略放行的安全区域)生效的server-map表项,流量只要命中server-map表项就会做NAT转换,通过NAT Server将目的地址进行自动转换实现请求和响应的的转发。常见的NAT Server实现为防火墙和路由器等。

  NAT Server如果一对一映射就将所有的端口都暴露出去了,并且要求内外网使用相同的端口号。而使用指定端口映射就可以实现指向对外提供服务的端口号发布映射,并且不要求内网网端口相同。

  “整体的流程就是,公网的某个路人甲用户(61.128.0.1)发起对于202.100.1.12的WWW或者FTP的访问,防火墙收到这个报文后首先会匹配server-map表,发现有匹配项,直接把202.100.1.12转换成了192.168.10.1,然后查找路由,找到出接口,根据入与出接口所在的安全区域,得到报文在哪两个安全区域之间流动,然后进行安全策略匹配, 所以这里得到的结论就是服务器转换的过程在安全策略之前,那么安全策略放行服务器的流量的时候,则放行的是真实的服务器地址与端口号,并不需要去关心公网IP与服务是多少。”

  • 内网向外访问

    通过网络出口的NAT设备实现,转换目的ip和端口。内联网(两个内网之间通信)就是公司A的网关访问公司B的网关,外联网(内网和外网之间的通信)就是公司网关直接访问外网。

  • VPN

    只有位于同一局域网内的设备可进行通信,如果是位于不同局域网的设备,可以通过VPN进行通信。

    “虚拟私人网络(英语:VirtualPrivateNetwork,缩写:VPN)是一种常用于连接中、大型企业或团体与团体间的私人网络的通讯方法。它利用隧道协议(Tunneling Protocol)来达到保密、传送端认证、讯息准确性等私人讯息安全效果,这种技术可以用不安全的网路(例如:网际网路)来传送可靠、安全的讯息。需要注意的是,加密讯息与否是可以控制的,如果是没有加密的虚拟私人网路讯息依然有被窃取的危险。”

    “以日常生活的例子来比喻,虚拟私人网路就像:甲公司某部门的A想寄信去乙公司某部门的B。A已知B的地址及部门,但公司与公司之间的信不能注明部门名称。于是,A请自己的秘书把指定B所属部门的信(A可以选择是否以密码与B通讯)放在寄去乙公司地址的大信封中。当乙公司的秘书收到从甲公司寄到乙公司的信件后,该秘书便会把放在该大信封内的指定部门信件以公司内部邮件方式寄给B。同样地,B会以同样的方式回信给A。在以上例子中,A及B是身处不同公司(内联网)的计算机(或相关机器),透过一般邮寄方式(公用网路)寄信给对方,再由对方的秘书(例如:支援虚拟私人网路的路由器或防火墙)以公司内部信件(内部网路)的方式寄至对方本人。请注意,在虚拟私人网路中,因应网路架构,秘书及收信人可以是同一人。许多现在的作业系统,例如Windows及Linux等因其所用传输协议,已有能力不用透过其它网路设备便能达到虚拟私人网路连接。”

    假设我们的手机想访问另一局域网内的服务器,则由两种搭设方案。如果只有服务器有公网ip,那么可以通过在在服务器的路由器上配置VPN,手机连接此VPN即可访问该服务器。如果服务器及手机所在的网络出口均具备公网IP,两个路由器假设起VPN网络,使两个路由器下的局域网实现内外直接访问。

    

 

参考:

NAT介绍        https://blog.csdn.net/nb_zsy/article/details/115225875

            https://blog.csdn.net/m0_73695023/article/details/128998701

NAT技术之NAT server  https://blog.csdn.net/thlzjfefe/article/details/127600115

VPN和NAT         https://www.xinruiyun.cn/vpn/1933.html