端口映射本质:把外部访问的IP:外部端口,转发到内网另一台机器 / 本机的目标IP:内部端口,分为路由器 DNAT、Docker 端口映射、Nginx/NAT 网关、ssh 端口转发、frp/nps 内网穿透几大类场景。
一、家庭 / 内网设备对外暴露(最常用)
家庭 NAS 外网访问 内网 NAS:192.168.1.100:5000,路由器把公网端口 8080 映射到
192.168.1.100:5000,公网访问公网IP:8080即可访问 NAS 管理后台。
注意:不建议直接映射 22、3389 高危端口到公网。
家里监控摄像头远程查看 NVR / 摄像头内网端口 80/554,路由器端口映射,在外网可以看监控画面。
内网服务器 SSH 远程管理 内网机器 SSH 22 端口,路由器映射公网非标准端口(如 2222)→内网 22,外网
ssh -p2222 公网IP连接内网 Linux。

二、Docker / K8s 容器环境
容器端口映射,宿主机访问容器服务 容器内部跑 Web 服务 80 端口,
-p 8080:80,访问宿主机 8080 就进入容器 80 端口。多实例服务,同一宿主机不同外部端口映射到多个相同容器端口 比如多个 Nginx 容器,宿主机 8081、8082 都映射容器内部 80。
容器暴露数据库端口给宿主机调试
‑p 3306:3306,宿主机数据库客户端直接连接容器 MySQL。
三、开发调试场景
本地开发,局域网其他设备访问本机服务 本机开发 Vue/SpringBoot 跑在 127.0.0.1:8080,做端口转发把网卡 0.0.0.0:8080 映射到 127.0.0.1:8080,手机同局域网访问电脑 IP 调接口。
SSH 本地端口转发:访问内网无法直连的服务 跳板机可以连通内网数据库 192.168.2.10:3306;本机执行 ssh 端口转发,本机 3307 映射到数据库 3306,本机直接连 127.0.0.1:3307 就访问内网数据库。
测试环境端口复用 一台服务器多个小服务,通过不同外部端口映射到各个业务内网端口,不用多公网 IP。
四、内网穿透(FRP/NPS/ZeroTier,反向端口映射)
没有公网 IP,通过中转服务器做端口映射
本地调试微信 / 支付宝回调 本地后端服务 8090,frp 把云服务器 8090 端口映射到家里电脑 8090,微信服务器可以回调访问你的本地程序。
本地项目临时对外演示 开发机器没有公网 IP,用 frp 映射,把本地 Web 服务暴露公网,发给客户演示。
五、网关、Nginx Proxy Manager、防火墙场景
端口复用,外网 80/443 统一入口 外网 80 端口接收请求,根据域名转发到内网不同机器不同端口(反向代理,广义端口映射)。
修改对外暴露端口,隐藏真实业务端口 真实业务端口是 8085,对外提供 8099,外部用户只知道 8099,隐藏内部真实端口号。
跨网段访问 A 网段机器不能直接访问 B 网段业务,网关做端口映射,A 网段访问网关 IP: 端口,转发到 B 网段业务服务。

六、Windows 远程桌面、虚拟机场景
虚拟机端口映射 VMware/VirtualBox 端口转发:宿主机 3390 映射虚拟机 3389,宿主机远程桌面连接 127.0.0.1:3390 访问虚拟机 Windows。
WSL2 开发,WSL 内部服务端口映射到 Windows 主机,外部局域网设备访问 WSL 里面的程序。
七、运维与安全相关场景
端口转发做跳板,不直接暴露高危端口 不直接把 22 端口放公网,对外暴露 50022 映射内网 22,降低被扫描爆破概率。
DMZ 区域,外网访问 DMZ 服务器,再映射内网特定服务
TCP/UDP 端口映射:游戏、IPTV,UDP 流量转发
典型端口映射风险提醒
不要直接映射 22、3389、3306 到公网,极易被爆破;建议使用非标准外部端口 + 密钥 / 强密码。
公网映射内网服务务必做好身份认证,不要裸奔。
UDP 端口映射容易被 DDoS 攻击。
本文原创作者:易君召,详见:https://www.yijunzhao.cn/authors/yijunzhao,转载请注明出处。
原文链接
欢迎访问 小易撩挨踢