NAT网络地址转换原理解析

NAT(Network Address Translation),即网络地址转换,是一种在1994年提出的地址转换技术。它的主要目的是在本地网络中使用私有地址,在连接互联网时转而使用全局IP地址。NAT实际上是为解决IPv4地址短缺而开发的技术。NAT的rfc文档地址:

RFC 2663: IP Network Address Translator (NAT) Terminology and Considerations

常规NAT原理

NAT的基本工作原理是通过将一个外部IP地址和端口映射到更大的内部IP地址集来转换IP地址。具体来说,NAT使用流量表将流量从一个外部(主机)IP地址和端口号路由到与网络上的终结点关联的正确内部IP地址。在这个过程中,设备可以用同一个公网地址来转换多个私网用户发过来的报文,并通过端口号来区分不同的私网用户,从而达到地址复用的目的。

使用NAT共享上网,这是当前NAT最主要的使用场景。

NAT术语解析

公共/全球/外部网络

全局或公共网络是具有唯一网络的地址域互联网号码分配机构(IANA)分配的地址或等效的地址注册表。该网络也称为NAT讨论期间的外部网络,简称外网。

专用/本地网络/内部网络

专用网络是独立于外部网络的地址领域地址。专用网络也可以称为本地网络网络。在私有领域中的主机和之间的透明路由NAT路由器为外部领域提供了便利。也称为内部网络,简称内网。

RFC专业NAT解析

NAT有三种,分别是源NAT、目的NAT和双向NAT,对一个ip报文,会有源ip 源端口 目的ip 目的端口四个部分组成,以经过路由器向外走的报文为例,下面表格列出了三种NAT对报文内容的修改部分:

|--------------------|-----------|-----------------|-------------|-------------|-------------------------|
| NAT类型 | 源ip | 源端口 | 目的ip | 目的端口 | 说明 |
| 普通(内网)NAT/源NAT | 内->公 | 内->公 | 不变 | 不变 | |
| 普通服务器NAT/源NAT | 内->公 | 内->公(固定端口) | 不变 | 不变 | 这就是当前国内服务器公网ip的提供方式 |
| 目的NAT | 不变 | 不变 | 内或外->外 | 内或外->外 | |
| 双向NAT | 内->公 | 内->公 | 内或外->外 | 内或外->外 | |
| | | | | | |

其中内指内网的ip或端口,公指公网的ip或端口,外指外网(外网一般就是用的公网ip)的ip或端口。

相关推荐
触想工业平板电脑一体机几秒前
【触想智能】工业触控一体机在船舶海运设备上应用的特点和具体场景分析
android·网络·计算机外设·电脑·智能电视
nvd113 分钟前
Cookie 技术深度剖析与实战指南
网络
christine-rr6 分钟前
linux常用命令(9)——查看系统与硬件信息
linux·运维·服务器·网络·后端
yuanmenghao14 分钟前
自动驾驶中间件iceoryx - 同步与通知机制(一)
开发语言·网络·驱动开发·中间件·自动驾驶
寻星探路17 分钟前
【深度长文】深入理解网络原理:TCP/IP 协议栈核心实战与性能调优
java·网络·人工智能·python·网络协议·tcp/ip·ai
博晶网络21 分钟前
MR400D工业级4G路由器:TCP/IP与UDP协议,解锁工业物联网高效传输新范式‌
网络·单片机·嵌入式硬件
2301_800256111 小时前
第九章:空间网络模型(空间网络查询、数据模型、Connected、with Recursive、pgRouting)
网络·数据库·算法·postgresql·oracle
猿小路8 小时前
抓包工具-Wireshark
网络·测试工具·wireshark
Rabbit_QL9 小时前
【网络设置】Docker 自定义网络深度解析:从踩坑到工程实践
网络·docker·容器
浩子智控10 小时前
电子产品三防设计
网络·系统安全