计算机网络——NAT

一、什么是NAT?

NAT(Network Address Translation,网络地址转换) 是一种将 私有IP地址公有IP地址 相互映射的技术,主要用于解决IPv4地址不足的问题。它像一名"翻译官",在数据包经过路由器或防火墙时修改其IP地址,实现内网设备通过少量公网IP访问互联网。

核心作用:

  • 节省公网IP:多个设备共享一个公网IP。

  • 隐藏内网结构:对外屏蔽内部网络细节,提升安全性。

  • 解决地址冲突:允许不同内网使用相同的私有IP段。


二、什么是NAT转换?

NAT转换是路由器修改数据包IP地址的过程,分为 出站转换(SNAT)入站转换(DNAT)。以下是一个典型流程:

转换步骤(以SNAT为例):

  1. 内网设备发送请求

    PC1(私有IP 192.168.1.10)访问公网服务器 203.0.113.5

  2. 路由器修改源IP

    将源IP从 192.168.1.10 替换为公网IP 203.0.113.1

  3. 服务器响应公网IP

    服务器返回数据到 203.0.113.1

  4. 路由器还原目标IP

    将目标IP 203.0.113.1 还原为 192.168.1.10,转发给PC1。


三、NAT转换的使用场景

场景 说明 示例
家庭网络 多设备(手机、电脑)通过一个公网IP上网 家用路由器默认启用NAT
企业内网 成百上千员工共享少量公网IP访问外网 防火墙部署NAT策略
云服务器 为虚拟机分配私有IP,通过NAT访问公网 AWS EC2实例使用NAT网关
端口映射 将公网IP的特定端口转发到内网服务器(如Web服务) 公网IP:80 → 内网服务器:80

四、NAT的种类

1. 静态NAT

  • 特点:一对一固定映射,一个私有IP永久绑定一个公网IP。

  • 用途:托管内网服务器(如Web服务器),支持从公网直接访问。

  • 示例

    内网IP 192.168.1.100 ↔ 公网IP 203.0.113.10

2. 动态NAT

  • 特点:从公网IP池中动态分配IP,映射关系不固定(但同一会话期间不变)。

  • 用途:企业内网多设备临时访问外网。

  • 示例

    内网设备共享公网IP池 203.0.113.1~203.0.113.5

3. NAPT(网络地址端口转换)

  • 特点 :多对一映射,通过 端口号 区分不同会话(最常用的NAT类型)。

  • 用途:家庭或小型企业网络,允许多设备共享单一公网IP。

  • 示例

    • PC1:192.168.1.10:1234203.0.113.1:50001

    • PC2:192.168.1.11:5678203.0.113.1:50002


五、NAT和NAPT的区别

对比维度 NAT NAPT(PAT)
映射方式 IP地址一对一映射 IP地址 + 端口号多对一映射
公网IP消耗 需要与内网设备等量的公网IP 仅需1个公网IP
适用场景 托管服务器、需要固定公网IP访问的服务 普通上网、多设备共享IP
端口复用 不支持 通过不同端口区分会话
典型设备 企业级防火墙、高级路由器 家用路由器、小型企业网关
配置复杂度 较高(需手动绑定IP) 低(自动管理端口映射)
相关推荐
DjangoJason10 分钟前
计算机网络 : Socket编程
linux·服务器·开发语言·笔记·计算机网络
眠りたいです12 分钟前
从数据包到可靠性:UDP/TCP协议的工作原理分析
linux·网络·网络协议·tcp/ip·udp·传输层
每次的天空41 分钟前
Android第三次面试总结之网络篇补充
android·网络·面试
shykevin6 小时前
python开发Streamable HTTP MCP应用
开发语言·网络·python·网络协议·http
tmacfrank7 小时前
网络编程中的直接内存与零拷贝
java·linux·网络
数据与人工智能律师9 小时前
虚拟主播肖像权保护,数字时代的法律博弈
大数据·网络·人工智能·算法·区块链
purrrew10 小时前
【Java ee初阶】HTTP(2)
网络·网络协议·http
玉笥寻珍12 小时前
筑牢信息安全防线:涉密计算机与互联网隔离的理论实践与风险防控
开发语言·计算机网络·安全·计算机外设·php·安全架构·安全性测试
hgdlip12 小时前
怎么快速换电脑浏览器的ip:方法与注意事项
网络·网络协议·tcp/ip·电脑
可怜的Tom被玩弄于股掌之中13 小时前
BUUCTF——Nmap
网络·安全·web安全·网络安全