-
2800+
全球覆盖节点
-
0.01s
平均响应时间
-
70+
覆盖国家
-
130T
输出带宽
大家好,今天要聊的主题是云服务器外网IP映射到内网IP的那些事儿。你如果在使用阿里云、腾讯云、华为云或者其他云平台时,发现自己的服务器给了一个公开IP,却不小心把应用部署在了私有子网,导致外部世界连你都看不到,心慌不已,那这篇文章就能帮你落地解决。
先说一句,别光顾着给应用调试,别忘了先把公网=内网的桥梁搭好。用一句网络梗来说,外网是大世界,内网是安全区,二者你想互通,必须先做好NAT(网络地址转换)或者反向代理这条桥。别忙死了,先按下文分步操作,练练手,把外网IP映射到内网IP,马上就能让你的服务摆脱“人不见”小尴尬。
—— 1️⃣ 先定位:你在哪个平台?不同云商的格式不太一样,但核心概念一样:公网IP(外网)、私网IP(内网)、安全组与路由表。先登录云控台,找到你要操作的实例,记录下它的公网IP和私网IP。可别忘记,Unix系统自带路由表要确认内部网关是否指向了正确的子网网关。
—— 2️⃣ 开门见山:开一条安全组规则,让外网IP可以访问内部的某个端口。比如你要让一个 Nginx 服务在 80 端口暴露,安全组里添加入站规则:协议 TCP,端口 80,源 IP 0.0.0.0/0(如果你想全网访问),或自定义 IP 段。记住,安全组是虚拟防火墙,你得让它允许通过。
—— 3️⃣ 路由表要跟上:如果你是使用专有网(VPC)并且把实例放在了私有子网,默认思政的路由表是没有通往 Internet 的。你需要在子网所在 VPC 里,添加一条默认路由(0.0.0.0/0)到 NAT 网关或 Internet 网关。NAT 网关只用于出站流量,想让公网进入到内网,你得用到弹性负载均衡或专用 VIP。
—— 4️⃣ 选择你的桥梁:是用 ELB(负载均衡)还是用代理软件(比如 Nginx + iptables 或者 Cloudflare)?对比一下:
如果你是阿里云用户,推荐用阿里云的弹性负载均衡(slb),因为它不仅支持 HTTP/HTTPS,还支持 TLS 终端,甚至可以做七层健康检查。你只需在 load_balancer 控制面板里创建后端服务器组,填入私网 IP,外层负载均衡器会拿到你配置的公网 IP。
为了让你更直观,下面给一个最常见的配置模板:假设你正在使用腾讯云,主机 A 拥有公网 IP 1.2.3.4,私网 IP 10.0.0.5。你想让外网访问 1.2.3.4:80 时,自动转发到 10.0.0.5:80。
步骤:
爱美儿网络工作室携手三大公有云,无论用户身在何处,均能获得灵活流畅的体验
2800+
0.01s
70+
130T