NAT——网络地址转换、NAPT

网络地址转换 NAT (Network Address Translation)

·1994 年提出。

·需要在专用网连接到互联网的路由器上安装 NAT 软件。

·装有 NAT 软件的路由器叫做 NAT路由器,它至少有一个有效的外部全球 IP 地址。

·所有使用本地地址的主机在和外界通信时,都要在 NAT 路由器上将其本地地址转换成全球 IP 地址,才能和互联网连接。

问题:在专用网上使用专用地址的主机如何与互联网上的主机通信(并不需要加密)?

解决:

1.再申请一些全球 IP 地址。但这在很多情况下是不容易做到的。

2.采用网络地址转换 NAT。++这是目前使用得最多的方法。++

网络地址转换的过程

·在内部主机与外部主机通信时,在 NAT 路由器上发生了两次地址转换

离开专用网时:替换源地址,将内部地址替换为全球地址。

进入专用网时:替换目的地址,将全球地址替换为内部地址。

NAT 地址转换表举例

·当 NAT 路由器具有 n 个全球 IP 地址时,专用网内最多可以同时有 n 台主机接入到互联网。

·可以使专用网内较多数量的主机轮流使用 NAT 路由器有限数量的全球 IP 地址。

通过 NAT 路由器的通信必须由专用网内的主机发起,因此,专用网内部的主机不能充当服务器用。

网络地址与端口号转换 NAPT

·NAT 并不能节省 IP 地址。

·NAPT 可以使多台拥有本地地址的主机,共用一个 全球 IP 地址,同时和互联网上的不同主机进行通信。

·使用运输层端口号的 NAT 叫做网络地址与端口号转换 NAPT (Network Address and Port Translation),而不使用端口号的 NAT 就叫做传统的 NAT (traditional NAT)。

NAPT 地址转换表举例

·NAPT 把专用网内不同的源 IP 地址都转换为相同的全球 IP 地址,将 TCP 源端口号转换为新的 TCP 端口号(互不相同)。

·收到从互联网发来的应答时,从 IP 数据报的数据部分找出运输层端口号,从 NAPT 转换表中找到正确的目的主机。

欢迎一起学习~

相关推荐
Cult Of3 分钟前
一个最小可扩展聊天室系统的设计与实现(Java + Swing + TCP)(2)
java·jvm·tcp/ip
科技块儿7 分钟前
平台需展示用户IP属地,如何操作?
网络·网络协议·tcp/ip
程序猿编码11 分钟前
深入浅出Linux内核级防火墙:IP/端口黑白名单的高性能实现
linux·c语言·c++·tcp/ip·内核
..过云雨11 分钟前
数据链路层核心全解:以太网、MAC 地址、MTU 与 ARP 协议深度剖析
网络·网络协议·tcp/ip·计算机网络
NaclarbCSDN12 分钟前
OSI模型与TCP/IP模型
网络·网络协议·tcp/ip
RisunJan12 分钟前
Linux命令-lnstat(显示 Linux 网络统计信息)
linux·运维·网络
一路往蓝-Anbo18 分钟前
第 4 篇:策略模式 (Strategy) —— 算法的热插拔艺术
网络·驱动开发·stm32·嵌入式硬件·算法·系统架构·策略模式
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.21 分钟前
Keepalived高可用配置指南
服务器·网络·php
2401_8322981022 分钟前
腾讯云第九代CVM,玄灵网卡加持重构算力新范式
网络
Cloud Traveler28 分钟前
Archcraft携手cpolar打造轻量化远程开发环境
网络·云原生·eureka