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

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

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

相关推荐
七歌杜金房5 小时前
我终于又有了自己的 Linux 电脑
linux·debian·mac
泯泷10 小时前
第 2 篇:设计第一套字节码:Opcode、Instruction 与 Constant Pool
前端·javascript·安全
泯泷10 小时前
第 1 篇:从 1 + 2 开始:亲手写出第一台 JSVM
前端·javascript·安全
tntxia1 天前
linux curl命令详解_curl详解
linux
扛枪的书生1 天前
Linux 网络管理器用法速查
linux
顺风尿一寸1 天前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
extrao2 天前
🚀 Kea DHCP4 自动分配系统完整搭建
网络协议
XIAOHEZIcode2 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
唐青枫2 天前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux
不做菜鸟的网工3 天前
BGP特性
网络协议