为什么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。

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

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

相关推荐
Doraemomo15 分钟前
Linux内核驱动开发——中断与定时器
linux·运维·驱动开发
2301_8084143825 分钟前
Linux中动静态库的理解
linux·运维·服务器
国科安芯1 小时前
断电也隔离、听得真:ASL3159S 单通道 SPDT 模拟开关的“断电保护 + 音频保真“账
单片机·嵌入式硬件·安全·商业航天·抗辐射
hasty1 小时前
2026软件供应链安全政策全景
安全·安全威胁分析·代码复审
M78佐菲1 小时前
ARM学习笔记(11)
linux·arm开发·笔记·嵌入式硬件·学习
M78佐菲1 小时前
ARM学习笔记(10)
linux·arm开发·笔记·嵌入式硬件·学习
小程序设计1 小时前
基于STM32的智慧厨房多参数安全监测与预警系统设计
stm32·嵌入式硬件·安全
半仙白桑2 小时前
内核篇第十五讲:system-V共享内存
linux·共享内存·shmget·shmat·shmdt·shmctl
绿蕉2 小时前
从“叠积木补安全“到“设计即安全“:EE 架构里的安全左移革命
安全·架构
一条破秋裤2 小时前
Linux 线程创建:pthread_create 与基本回收
java·linux·运维