NAT技术及应用浅析

2022-09-13 版权声明 我要投稿

NAT技术, 也就是网络地址转换, 其方式是通过修改IP数据包中的源IP地址, 或目的IP地址, 达到把RFC1918所提议的私有地址转换成在Internet上可路由的公有合法地址的目的。提出该技术的最初原因是为了解决IPv4地址危机。在Internet上应用广泛的IPv4技术, 由于其地址数量的局限性, 在20世纪90年代初期就已经预计到IPv4的地址数量不能满足快速增长的网络用户的需求, 从而开发了IPv6技术, 但是开发IPv6技术需要足够的时间, 为了延长IPv4技术的使用时间, 产生了NAT技术。

1 NAT技术的工作原理

NAT技术使得一个私有网络可以通过Internet注册IP连接到外部世界, 位于inside网络和outside网络中的NAT路由器在发送数据包之前, 负责把内部IP翻译成外部合法地址。内部网络的主机不可能同时与外部网络通信, 所以只有一部分内部地址需要翻译。

NA T的翻译可以采取静态翻译 (s tatic translation) 和动态翻译 (dynamic translation) 两种。静态翻译将内部地址和外部地址一对一对应。当NAT需要确认哪个地址需要翻译, 翻译时采用哪个地址pool时, 就使用了动态翻译。采用portmultiplexing技术, 或改变外出数据的源port技术可以将多个内部IP地址影射到同一个外部地址, 这就是PAT (port ad dres s translator) 。

当影射一个外部IP到内部地址时, 可以利用TCP的load distribution技术。使用这个特征时, 内部主机基于round-robin机制, 将外部进来的新连接定向到不同的主机上去。需要注意的是, load distributiong只有在影射外部地址到内部的时候才有效。

2 NAT技术的现状

N A T技术在应用时, 一般将网络分为内部和外部两个部分, 其技术手段主要是通过对router的配置来实现对IP地址的翻译, 目前主要的应用有:内部地址翻译、内部全局地址复用、TCP负载重分配、处理重叠网络。

2.1 内部地址翻译 (Translation inside local addresses)

这是比较通用的一种方法, 将内部IP一对一的翻译成外部地址。在内部主机连接到外部网络时, 当第一个数据包到达N AT路由器时, ro u ter检查它的N A T表, 因为是NAT是静态配置的, 所以可以查询出来 (simply entry) , 然后router将数据包的内部局部IP (源地址) 更换成内部全局地址, 再转发出去。外部主机接受到数据包用接受到的内部全局地址来响应, NAT接受到外部回来的数据包, 再根据NAT表把地址翻译成内部局部IP, 转发过去。

2.2 内部全局地址复用 (overloading inside glogal addresses)

使用地址和端口pair将多个内部地址影射到比较少的外部地址。这也是所谓的PAT。和内部地址翻译一样, NA T router同样也负责查表和翻译内部IP地址, 唯一的区别就是由于使用了overloading, router将复用同样的内部全局IP地址, 并存储足够的信息以区分它和其他地址, 这样查询出来的是extended entry。NAT router和外部主机的通讯采用翻译过的内部全局地址, 故同一般的通信没有差别, router到内部主机通讯时, 同样要查NAT表。esses) 这是比一的翻

2.3 TCP负载重分配 (TCP load distributing)

和以上两种操作不同, 这是NAT由外到内的翻译, 当外部主机向虚拟主机 (定义为内部全局地址) 通讯时, NAT router接受外部主机的请求并依据NAT表建立与内部主机的连接, 把内部全局地址 (目的地址) 翻译成内部局部地址, 并转发数据包到内部主机, 内部主机接受包并作出响应。NAT ro uter再使用内部局部地址和端口查询数据表, 根据查询到的外部地址和端口做出响应。

2.4 处理重叠网络

这种方法主要用于两个intranet的互连, 同样给我们处理两个重叠网络提供了方法。它的实现要求DNS server的支持 (用于区别两个不同的主机) 。

(1) 主机甲要求向主机乙建立连接, 先向DNS server做地址查询。

(2) N AT rou te r截获DN S的响应, 如果地址有重叠, 将翻译返回的地址。它将创建一个simply entry把重叠的外部全局地址 (目的地址) 翻译成外部局部地址。

(3) 路由器转发D NS响应到主机甲, 它已经把主机乙的地址 (外部全局地址) 翻译成外部局部地址。

(4) 当路由器接受到主机乙的数据包时, 它将建立内部局部、全局, 外部全局、局部地址间的转换, 主机甲将由内部局部地址 (源地址) 翻译成内部全局地址, 主机乙将由外部全局地址 (目的地址) 翻译成外部局部地址。

(5) 主机乙接受数据包并继续通讯。

3 NAT技术的实际应用

为缓解IPv4而出现的NAT技术, 时至今日, 其作用已不仅仅局限于节约IP地址, 它的应用已经扩展到网络迁移、网络重组、服务器镜像、分布式虚拟服务器等领域, 成为一个强大的工具。

3.1 NAT技术在防火墙中的应用

带有NAT技术的防火墙一般都允许用户自己设置网络地址转换规则, 当网络数据包流入防火墙时, 系统会检查该数据包是否符合用户设定的NAT规则, 如果符合, 系统会按照规则对数据包进行转换, 同时建立一条NA T进程, 当有数据返回时, 也将检查进程表, 进行相应的处理。在这项应用中, NAT的主要作用是其对内部网络具有安全性。通过防火墙的地址转移, 每个内部网络的真实IP地址得以隐藏, 在静态地址转换下, 只要防火墙的地址转换表不被窃取, 黑客就不能知道内网IP及其所对应的全局IP和他们的转换规则, 因此就无法攻击数据包, 从而达到防火墙的效果。

3.2 电子商务网站利用N A T技术实现负载均衡

可以在电子商务网站WEB服务器所在网络的路由器上利用网络地址转换的内部目的地址翻译的方法, 来达到多个服务器负载均衡的目的。外部主机向内部虚拟主机通讯, NAT设备接受外部主机的请求并依据NAT表建立与内部某台真实主机的连接, 即把内部全局地址翻译成内部局部某个地址, 并转发数据包到内部的该台主机, 内部主机接受包并作出响应。此时, 如果有第二个连接请求, NAT设备将根据NAT表建立外部主机与另一个内部主机的连接, 并转发数据, 依次类推, 直到到达内部最后一台主机, 从而达到负载重分配的功能。

随着对NAT技术研究, 其应用领域越来越广泛, 而且随着硬件设备的发展, NAT技术将会在所有网络中出现。

4 结语

NAT技术在很长时间内仍将是Internet上的主流技术, 通过不断的探索和研究, 我们才能发现其更多的作用。但是, 尽管NAT技术可以给我们带来各种好处, 例如无需为网络重分IP地址、减少ISP帐号花费以及提供更完善的负载平衡功能等, 其对一些管理和安全机制的潜在威胁仍在, 只有充分认识到这一点, 我们才能正确应用好NA T技术, 使之更加有效的为网络服务。

摘要:为缓解IPv4而出现的NAT技术, 是通过修改IP数据包中的源IP地址, 或目的IP地址, 达到将内网的私有地址转换成公网合法地址的目的。随着对该技术的深入研究, 其作用已不仅仅局限于节约IP地址, 而且在防火墙技术、分散负载、服务器镜像、分布式虚拟服务器等领域, 都的到广泛应用, 从而成为短时期内Internet网络的主流技术。

关键词:NAT技术,应用,主流技术

上一篇:嫁接育苗技术要点下一篇:我国食品安全法“十倍赔偿”规定之批判与完善