【运维✨】云服务器公网 IP 迷雾:为什么本机看不到那个地址?

适合第一次用云服务的新手,5 分钟看懂「弹性公网 EIP」和「端口映射」


故事开场

小 A 买了一台云服务器,厂商给他分配了公网 IP 203.0.113.47 。

他登录机器,输入 ip a,却怎么也找不到这个地址------只有一张私有网卡 192.168.0.12 。

更奇怪的是,浏览器访问 203.0.113.47:8080 能看到网页,访问 203.0.113.47:5000 却直接超时。

小 A 陷入迷茫:

「公网 IP 到底在哪?为什么有的端口能进,有的不能进?」


1 分钟原理:云厂商在幕后做了一次「搬家」

云服务厂商为了节省公网地址,会给每台云主机绑定一个 弹性公网 IP(Elastic IP,简称 EIP) ,然后在机房边缘做一次 1:1 NAT:

方向 地址变化
公网→私网 203.0.113.47:端口 → 192.168.0.12:端口
私网→公网 192.168.0.12 源地址 → 203.0.113.47 源地址

结果:

  • 本机永远看不到 203.0.113.47,只能看到私网 192.168.0.12
  • 公网 IP 像「影子」一样挂在云端,只负责「收包→转发」

2 分钟实验:把「影子」拆开看

① 在本机查地址

bash 复制代码
$ ip a | grep inet
inet 192.168.0.12/24 brd 192.168.0.255 scope global eth0

→ 确实只有私网地址

② 从公网来敲门

bash 复制代码
# 能通(云控制台放行了 8080)
curl http://203.0.113.47:8080

# 超时(云控制台没放行 5000)
curl http://203.0.113.47:5000

→ 能否连通 取决于「安全组 / 防火墙」是否把对应端口映射进来


3 分钟选择:我要不要开放更多端口?

方案 怎么做 优点 缺点
A. 继续加端口映射 在云控制台再开 TCP 5000 入方向 最简单,公网直连 每开一个端口就多一个攻击面
B. 只用 Nginx 反向代理 只保留 80/443,/api/ 转发到 localhost:5000 端口少,易配 HTTPS、限流、WAF 多一次转发,延迟略增

生产环境推荐 方案 B ;快速调试可用 方案 A


4 分钟命令:把 5000 映射进来(方案 A 示例)

  1. 登录云控制台 → 安全组 → 入方向规则
  2. 添加 TCP 5000 允许源 0.0.0.0/0
  3. 立即再测
bash 复制代码
curl http://203.0.113.47:5000

→ 通!


5 分钟总结:一句话背下来

"公网 EIP 是云端的'影子',背后 NAT 到私网;想从公网连新端口,要么去控制台放行,要么让 Nginx 代理,别指望本机能'看到'那个公网地址!"

记住这张图,以后再也不会被「找不到公网 IP」困扰啦!


彩蛋小贴士

  • 如果只想内网用,安全组直接禁止 0.0.0.0,只留公司/校园网段, Shadow 就彻底隐身。
  • 换区域 / 换云厂商,原理一模一样,只是菜单名字不同。
相关推荐
零基础1235 分钟前
LLM Agent 驱动的物模型构建:从设备手册到边缘接入的自动化实践
运维·人工智能·经验分享·python·自动化
星夜夏空9911 分钟前
网络编程(5)—— Reactor实现(v3)
服务器·网络·php
程序猿老A1 小时前
从入门型到企业型:云服务器开放共享型到独享型规格升级
运维·服务器
Ruiery2 小时前
Linux 6.6内核 CPU 深度解析(九):时钟与 TSC — 内核怎么从 PIT/HPET 切到 TSC
linux·运维·服务器
吴声子夜歌3 小时前
Nginx应用与运维——Nginx日志管理
java·运维·nginx
打工仔折腾 AI3 小时前
用UU远程把家里电脑变成AI Agent常驻服务器:CLI、端口映射与代理实测
运维·服务器·人工智能·后端·python·电脑·ai agent 实战
91刘仁德3 小时前
Linux网络编程从入门到实战:UDP/TCP协议与socket编程全解析
linux·网络·笔记·tcp/ip·udp
guo_wen_qiang3 小时前
云服务器nacos搭建-集群&持久化
java·运维·服务器
牢姐与蒯3 小时前
一点小碎片——每个线程独有的东西——上下文+栈
linux·运维·服务器