为什么Linux需要3种NAT地址转换?一探究竟

介绍

NAT(Network Address Translator,网络地址转换)是用于在本地网络中使用私有地址,在连接互联网时转而使用全局 IP 地址的技术。NAT实际上是为解决IPv4地址短缺而开发的技术。

优点

● 节省合法的公有 IP 地址(最大的优点)

● 当网络发生变化时,避免重新编址。

● 对外隐藏内部地址,增加网络安全性

缺点

● 无法从 NAT 的外部向内部服务器建立连接(NAT穿越)

● 转换表的生成和转换操作都会产生一定的开销

● 通信过程中一旦 NAT 遇到异常需重新启动时,所有的 TCP 连接都将被重置。即使备置两台 NAT 做容灾备份,TCP 连接还是会被断开。

静态NAT

● 定义‌:是指内部本地地址一对一转换成内部全局地址,相当内部本地的每一台PC都绑定了一个公网地址(或全局地址)。一般用于在内网中对外提供服务的服务器。

● ‌特点‌:每个内部本地地址与一个全局地址绑定,确保外部用户可以直接访问内部服务器的IP地址。缺点是需要独占宝贵的合法IP地址,即使这些地址当前未被使用,也不能用于其他转换‌。

动态NAT

说明:是指将内部网络的私有IP地址转换为公用IP地址时,IP地址是不确定的,是随机的,所有被授权访问上互联网的私有IP地址可随机转换为所定义的IP地址。

特点‌:动态转换可以重复使用有限的公网IP地址,通过指定哪些内部地址可以进行转换以及使用哪些合法地址作为外部地址,实现地址的动态分配‌。

网络地址端口转换NAPT

● 介绍:网络地址端口转换(NAPT)将多个内部本地地址映射到同一个外部IP地址的不同端口上。这是最常用的NAT方式,特别是在家庭网关和中小企业网络中。

● ‌特点‌:PAT通过使用NAT设备选定的端口号,将多个内部连接复用一个公网IP地址,从而有效地解决了IP地址不足的问题。它包括两种转换方式:源NAT(SNAT)和目的NAT(DNAT)‌

SNAT 源地址转换

修改数据包的源地址。源NAT改变第一个数据包的来源地址,它永远会在数据包发送到网络之前完成,数据包伪装就是一具SNAT的例子。

DNAT 目的地址转换

修改数据包的目的地址。DNAT刚好与SNAT相反,它是改变第一个数据携带的目的地址,如平衡负载、端口转发和透明代理就是属于DNAT。

技术文章持续更新,请大家多多关注呀~~

搜索微信公众号,关注我【 帽儿山的枪手 】

相关推荐
路人甲ing..1 天前
Ubuntu 怎么把树莓派内存卡备份制作成为镜像
linux·运维·ubuntu
獭.獭.1 天前
Linux -- 线程互斥
linux·互斥锁·mutex·互斥量·线程互斥
Broken Arrows1 天前
排查网络问题的一些工具的作用和常用使用方法
linux·网络·学习
撒币使我快乐1 天前
Windows安装Claude Code全流程
linux·windows·claude
longerxin20201 天前
ubuntu所有版本镜像下载链接
linux·运维·ubuntu
数据雕塑家1 天前
Linux下的花式「隔空」文件传输魔法
linux·运维·服务器
uoscn1 天前
链接脚本(Linker Scripts)
linux·arm开发·arm
橘子真甜~1 天前
C/C++ Linux网络编程2 - Socket编程与简单UDP服务器客户端
linux·运维·服务器·网络编程api·udp协议·udp通信
xrkhy1 天前
websocket(即时通讯)
网络·websocket·网络协议
im_AMBER1 天前
HTTP概述 01
javascript·网络·笔记·网络协议·学习·http