第一章 第八节:深入理解 NAT、路由与端口映射
NAT(网络地址转换)是现代网络中不可或缺的技术,它解决了公网 IP 不足的问题,并保障了内部网络的安全性。结合路由与端口映射,NAT 技术可以实现多种网络部署方式。
🌐 一、什么是 NAT?
NAT(Network Address Translation) 是一种将私有 IP 地址转换为公有 IP 地址的技术。
📌 主要用途:
- 节省公网 IP 资源
- 隐藏内网结构,增强安全性
- 实现局域网访问公网
🧭 二、NAT 的类型详解
NAT 类型 | 描述 |
---|---|
静态 NAT | 一对一映射,适用于服务器发布 |
动态 NAT | 多个私有地址映射到公网地址池 |
PAT(端口地址转换) | 又称端口映射,多个私有地址共享一个公网 IP |
🛣️ 三、路由的基本概念
路由(Routing)是数据包在网络中的传输路径决定机制。
📌 Linux 查看和配置路由命令:
ip route show # 查看路由表
ip route add # 添加静态路由
ip route del # 删除路由
默认网关设置:
ip route add default via 192.168.1.1
🔀 四、端口映射(Port Forwarding)
端口映射是 NAT 的一种形式,用于将外部访问的某个端口映射到内网某台主机的端口。
📌 示例:将公网 80 端口映射到内网 192.168.1.100 的 8080 端口
# 临时端口映射(需要 iptables 支持)
iptables -t nat -A PREROUTING -p tcp --dport 80 \
-j DNAT --to-destination 192.168.1.100:8080
iptables -t nat -A POSTROUTING -j MASQUERADE
🌉 五、NAT 与路由结合使用场景
场景 | 描述 |
---|---|
家庭路由器共享上网 | 多个设备使用同一个公网 IP |
企业内网访问公网 | 使用 PAT 映射提高安全性 |
云服务器端口映射 | 外网访问内网容器或虚拟机服务 |
🧠 六、实践建议与注意事项
- NAT 映射冲突问题:确保映射端口唯一,避免覆盖。
- 安全防护:避免开放过多端口导致攻击风险。
- 端口映射后防火墙配置:别忘了
firewalld
或iptables
规则的放行设置。 - 排查工具:使用
tcpdump
、netstat
、ss
、nmap
等工具排查问题。
✅ 七、小结
- NAT 是连接内外网的桥梁;
- 理解不同类型的 NAT,有助于灵活配置网络;
- 路由表与端口映射是构建稳定网络的核心;
- 学会配置 NAT 和路由,是 Linux 运维的基本功。