晟辉智能制造

协议类型地址映射技术如何实现高效转换?

核心定义

协议类型地址映射技术,通常简称为端口映射地址转换,是一种在网络边界(如路由器、防火墙或专用NAT设备)上执行的技术,它的核心功能是将一个网络地址(通常是私有IP地址)和端口号,映射到另一个网络地址(通常是公网IP地址)和端口号

协议类型地址映射技术如何实现高效转换?-图1
(图片来源网络,侵删)

它就像一个公司的“前台接待”或“总机”:

  • 内部员工(私有IP):每个员工都有自己的分机号(端口号),但外部访客不知道这些内部结构。
  • 公司总机(公网IP):所有外部来电都打到这一个总机号码上。
  • 前台(NAT设备):前台根据来电者的需求(协议类型和目的端口),将电话转接到正确的员工分机上,它也会记录下这个转接关系,以便员工能回拨电话。

为什么需要这项技术?(核心目的)

这项技术主要解决了以下几个关键问题:

  1. IPv4地址枯竭:这是最原始也是最重要的原因,全球公网IPv4地址是有限的,而互联网设备数量呈爆炸式增长,NAT允许多个设备共享一个或少数几个公网IP地址,极大地缓解了地址耗尽的问题。
  2. 网络安全性:NAT提供了一个基本的“屏障”,外部网络无法直接访问内部网络中的设备,因为它们都不知道内部设备的真实IP地址,所有连接都必须由内部设备主动发起,这使得外部攻击者更难直接攻击内部主机。
  3. 简化网络管理:在一个企业或家庭网络中,可以自由使用私有IP地址段(如 168.0.0/16),无需向ISP(互联网服务提供商)申请公网IP,网络管理员可以灵活地规划、变更和增加内部设备,而无需关心公网IP地址的分配。

工作原理与关键技术

端口映射的实现依赖于 网络地址转换 机制,根据连接的发起方式,主要分为以下几种类型:

a. NAT(网络地址转换)

这是最基础的映射,只转换IP地址,不关心端口。

协议类型地址映射技术如何实现高效转换?-图2
(图片来源网络,侵删)
  • 工作方式:内部网络使用一个私有IP地址池,所有出站流量在离开NAT设备时,都会被替换为设备的一个或多个公网IP地址。
  • 缺点:如果多个内部设备同时上网,NAT设备无法区分返回的流量应该交给哪个内部设备,所以纯粹的NAT在现代互联网中很少使用,它通常是更复杂技术的一部分。

b. NAPT(网络地址端口转换) / PAT(端口地址转换)

这是目前最广泛使用的类型,我们常说的“端口映射”或“路由器转发”指的就是它。

  • 工作方式:NAPT不仅转换IP地址,还转换传输层协议的端口号,它会在内部IP:Port和外部IP:Port之间建立一个转换表。
  • 例子
    • 内部主机A (168.1.10:8080) 访问外部网站,NAPT设备将其映射为 0.113.1:50001
    • 内部主机B (168.1.11:3333) 也访问同一个网站,NAPT设备将其映射为 0.113.1:50002
    • 这样,两个内部主机就可以共享同一个公网IP,通过不同的端口号进行区分。

c. PAT(端口地址转换)

PAT 和 NAPT 在实际应用中几乎可以看作是同义词,都指通过端口转换实现多对一的地址映射,Cisco等厂商常用PAT这个术语。

d. DMZ(非军事区)

这是一种特殊的NAT应用,用于对外部提供服务(如Web服务器、FTP服务器)。

  • 工作方式:NAT设备将一个或几个特定的公网端口映射到位于“DMZ”区域的内部服务器上,这个DMZ区域是一个半开放的网络,它既能被外部网络访问,又在一定程度上受到内部防火墙的保护。
  • 例子
    • 将公网IP 0.113.180 (HTTP) 和 443 (HTTPS) 端口映射到DMZ区的服务器 168.10.20 的对应端口。
    • 这样,外部用户就可以通过 http://203.0.113.1 访问到这台Web服务器,而它又不会直接暴露在内部核心网络中。

具体应用场景

家庭网络中的共享上网

这是最典型的例子。

协议类型地址映射技术如何实现高效转换?-图3
(图片来源网络,侵删)
  • 拓扑:你的家庭路由器开启了NAT/PAT功能。
  • 映射
    • 家里你的手机 (168.1.5)、笔记本电脑 (168.1.6)、平板电脑 (168.1.7) 都通过Wi-Fi连接到路由器。
    • 路由器从ISP获得一个公网IP,45.67.89
    • 当你用手机浏览网页时,路由器会建立一个映射,45.67.89:55000 -> 168.1.5:80
    • 当你的笔记本也在浏览时,路由器会建立另一个映射,45.67.89:55001 -> 168.1.6:80
  • 结果:你和家人可以同时上网,但ISP的服务器只看到你们都在使用同一个公网IP 45.67.89,通过不同的端口号来区分不同的设备。

企业服务器对外提供服务

假设公司有一台Web服务器,需要让外部用户访问。

  • 拓扑:公司防火墙(或路由器)是NAT设备。
  • 问题:Web服务器的内网IP是 0.0.100,外部用户无法直接访问这个私有地址。
  • 解决方案:在防火墙上进行端口映射(也叫端口转发 Port Forwarding)。
    • 规则:将防火墙的公网IP 0.113.580 端口,映射到内网服务器 0.0.10080 端口。
  • 结果
    • 当外部用户在浏览器中输入 http://203.0.113.5 并访问时,请求会到达防火墙。
    • 防火墙根据映射规则,将这个请求转发给内网的 0.0.100
    • Web服务器处理请求后,将响应返回给防火墙,防火墙再将其转发给外部用户。

技术的优缺点

优点

  • 节省公网IP地址:核心优势,是IPv4时代延续互联网生命的关键技术。
  • 增强安全性:隐藏了内部网络结构,提供了基本的匿名性和隔离性。
  • 灵活性和可扩展性:内部网络可以随意变更,不影响与外部的通信。
  • 简化网络配置:内部设备无需配置复杂的公网路由。

缺点

  • 打破端到端原则:互联网最初设计是“端到端”的,任何两个主机都可以直接通信,NAT破坏了这一模型。
  • 导致应用层兼容性问题:一些需要直接连接的应用协议(如某些P2P下载、视频会议、在线游戏)在NAT环境下会失效,因为它们无法直接建立连接,这催生了UPnP(通用即插即用)NAT-PMP(NAT端口映射协议)等技术,让应用程序可以自己请求路由器进行端口映射。
  • 增加网络延迟和复杂性:NAT设备需要维护状态表,处理数据包的转换,这会增加一点点延迟,NAT故障排查也相对复杂。
  • 不利于服务器部署:一个公网IP只能映射到有限的内部服务器,如果服务种类很多,就需要购买多个公网IP。

未来展望:IPv6与NAT

随着 IPv6 的普及,公网IP地址变得近乎无限,理论上每个设备都可以拥有一个唯一的公网IP,这从根本上解决了IPv4地址枯竭的问题,因此在纯IPv6网络中,NAT不再是必需的

NAT的某些功能(如安全性、简化管理)仍然有价值,一种新的技术——NAT64/DNS64 被提出来,它的主要作用是让纯IPv6的客户端能够访问纯IPv4的服务器,而不是像传统NAT那样让IPv4客户端访问IPv4服务器,它扮演的是一个“协议翻译网关”的角色,而不是地址节省器。

协议类型地址映射技术(NAT/PAT/端口映射) 是一项在IPv4时代至关重要、至今仍广泛使用的技术,它通过在网络边界转换IP地址和端口号,巧妙地解决了公网IP地址不足的问题,并提供了额外的安全层,尽管它打破了互联网的端到端模型,带来了一些兼容性挑战,但在可预见的未来,尤其是在IPv4与IPv6共存的过渡期,它仍将是网络基础设施中不可或缺的一部分。

分享:
扫描分享到社交APP
上一篇
下一篇