NAT原理与端口映射
导语:内网地址不能直接上公网,NAT 是必经之门;而端口映射是把内网服务"开个窗"给外面——本文讲清原理与开窗口的安全边界。
一、为什么要关注(背景与痛点)
企业内网用的是私有地址(10.x/192.168.x),互联网不认,必须靠 NAT 转换成公网地址才能上网。但当分支或合作伙伴需要访问总部某服务时,又得做端口映射(端口转发)把内网端口映射到公网。映射开得随意,等于把内网门牌号贴到了街上——理解 NAT 与映射的边界,是安全发布的前提。
二、核心原理 / 关键概念
NAT(网络地址转换)在出口设备改写报文的 IP/端口,使内外网互通。常见类型:
- SNAT(出方向,源地址转换):内网访问互联网时,把源私有 IP 换成公网 IP,多内网共享少量公网地址。
- DNAT / 端口映射(入方向,目的地址转换):外部访问公网 IP:端口 时,翻译成内网 IP:端口,用于发布服务。
- NAPT(端口复用):多个内网 IP 共用一个公网 IP,靠端口号区分,最常用。
- 一对一 NAT:内网某 IP 固定映射某公网 IP,适合需要稳定对外地址的设备。
要点:NAT 是"有状态"的,设备维护会话表;映射属于 DNAT,会主动把外部流量引入内网,风险高于 SNAT。
三、落地做法 / 操作步骤
场景 A:内网上网(SNAT,通用思路,各厂商命令语法略有差异)
- 华为:
nat address-group定义公网地址池 +nat-policy出接口调用 source nat。 - 新华三:
nat outbound在出接口绑定 ACL 与地址组。 - 思科:
ip nat inside source list+ip nat outside接口标记。
场景 B:发布内网服务(端口映射)
- 华为:
nat server protocol tcp global 公网IP 443 inside 内网IP 443 - 思科:
ip nat inside source static tcp 内网IP 443 公网IP 443 - 锐捷/迈普/信创国产:关键字(nat server / ip nat inside source static)略有差异。
安全要点:映射只对必要端口开放;发布的服务尽量放在 DMZ;映射后务必在防火墙写最小化安全策略。
四、网络如何为数据存储/备份提供安全底座
NAT 与映射若用错,会直接威胁存储安全:把存储管理口或信创云盘后台做公网端口映射而不加限制,等于把数据保险柜的钥匙挂在门口。正确姿势是——对外服务(如信创云盘)只映射业务端口并置于 DMZ,管理端口绝不映射公网;远程分支备份走 VPN(见 VPN 篇)而非端口映射,数据全程加密、不暴露公网。SNAT 上网与 DNAT 发布必须分开规划、分别审计。
五、常见误区 / 避坑提醒
- 映射全端口(DMZ 主机):一键把整台内网机暴露公网,极其危险。
- 管理口映射公网:SSH/管理后台被扫爆只是时间问题。
- 忘记配套安全策略:NAT 放行了但防火墙没放,或反过来防火墙放了大范围。
- 公网 IP 混用:上网 NAT 与发布服务共用同一公网 IP,难以区分与限速。
六、小结与行动建议
NAT 解决"能上网",端口映射解决"能被访问",二者都要守住安全边界。原则:出网上 SNAT、发布走 DMZ、映射只开必要端口、管理口永不公网、远程访问优先 VPN。每次映射都登记用途与责任人,定期审计,过期即收。