查服务器IP地址最直接的方法是登录服务器操作系统执行查询命令,公网IP则以云控制台展示为准。对于一台Linux服务器,输入ip addr即可看到网卡绑定的IP;若是云服务器,登录服务商控制台查看实例详情是最不容易出错的方式,不同场景下查法不同,下面按实际需求拆解。
查IP前先分清:内网IP和公网IP是两回事
很多新手在问“服务器IP是什么”时,其实混用了两个概念。内网IP是服务器在私有网络里的地址,比如168.x.x、x.x.x、16.x.x,只能在内网里通信。公网IP是暴露在互联网上的地址,别人访问你的网站、SSH远程登录,用的都是公网IP。
一台服务器可能同时拥有多个IP:物理网卡上绑着内网IP,路由器或云平台通过NAT映射出一个公网IP,你在服务器里执行ip addr看到的往往是内网IP,公网IP需要额外手段确认,行业共识认为,把这两个概念混为一谈,是查IP时最容易翻车的地方。
判断自己需要哪个IP很简单:本地电脑能直接访问的,就是公网IP;只有内网其他机器能访问的,就是内网IP。 如果你只是想在局域网里连接服务器,内网IP就够了;如果要做网站、对外提供接口,必须用公网IP。
服务器ip地址查询命令:Linux和Windows的实操方法
登录服务器后,系统自带的网络命令是最快、最可靠的查询工具,不需要装任何第三方软件,一条命令就能拿到结果。
Linux系统查IP的常用命令
绝大多数云服务器和VPS跑的是Linux,以下命令按推荐程度排序:
ip addr(或简写为ip a):现代Linux发行版的标准命令,输出所有网卡及其IP地址,看到inet后面的地址就是IP,/24之类的后缀是子网掩码。hostname -I:只显示IP,不做多余输出,适合脚本调用,注意是大写的I,小写i会显示主机名。ifconfig:老牌命令,部分新系统没预装,需要先安装net-tools工具包,输出格式直观,但信息量较大。ip route get 1.1.1.1:显示访问外网时走哪条路由、源IP是什么,能直接告诉你服务器对外通信用的内网IP。
举个例子,你SSH登录一台Ubuntu服务器,输入ip addr,输出里通常会看到eth0或ens3这样的网卡名,下面的
inet 172.16.0.5/20就是这台服务器的内网IP,如果这台服务器是云主机,公网IP往往不直接显示在网卡上,而是由云平台的网关做了NAT转发。
如果你用linux查看服务器ip命令时发现IP和云控制台对不上,别慌,这大概率是NAT机制导致的,控制台上的公网IP才是外界访问你的地址。
Windows Server的查询方法
Windows服务器同样有图形化和命令行两种路径:
- 打开命令提示符(CMD)或PowerShell,输入
ipconfig,在“以太网适配器”或“WLAN”段落里找IPv4 地址。 - 在PowerShell里输入
Get-NetIPAddress,输出更结构化,还能看到IP所属的接口索引。 - 图形化路径:打开“网络和共享中心”→“更改适配器设置”→右键网卡→“状态”→“详细信息”,同样能看到IP、网关、DNS。
Windows云服务器的公网IP同样不在ipconfig里体现,一律以云控制台为准。
云服务器ip地址在哪里看:控制台是最权威的答案
买了简米云、酷番云、华为云或AWS的服务器,管理控制台里一定有明确的IP信息。服务器本机查到的IP可能有NAT偏差,但控制台上展示的公网IP、内网IP都是真实配置,不会出错。
以主流云厂商为例,操作路径基本都是“实例列表”→“实例详情”:
- 简米云ECS:登录控制台,进入“云服务器ECS”→实例列表,点击实例ID进入详情页,在“配置信息”区域能看到公网IP、内网IP、弹性IP,如果实例绑定了弹性公网IP(EIP),列表里会单独显示,这个IP就是对外访问的地址。
- 酷番云CVM:控制台→云服务器→实例列表,点击实例名进入详情,基本信息里直接显示公网IP和内网IP,如果用了NAT网关或负载均衡,实际对外地址可能是网关的IP。
- 华为云ECS:控制台→弹性云服务器→实例列表,详情页的“基本信息”里标注了弹性公网IP和私有IP。
- AWS EC2:EC2控制台→实例→选中实例,下方“详细信息”选项卡里有“公有 IPv4 地址”和“私有 IPv4 地址”两行,注意AWS的公有IP在实例停止再启动后可能变化,固定IP需要绑定弹性IP(Elastic IP)。
这里有一个实操重点:如果域名解析指向的是云服务器的公网IP,但网站打不开,先回控制台核对IP是否变更。 包年包月的ECS在到期续费后IP不会变,但按量付费的实例或某些低价VPS在释放重建后IP会换新,这是排查故障的高频原因。
服务器藏在NAT后面,怎么查到真实的公网出口IP?
很多公司办公网络或家庭宽带的服务器,并没有直接分配到公网IP,而是通过路由器做端口映射,这种情况下,在服务器本机执行任何命令都只能看到内网IP,查不到对外服务的公网IP,要拿真实出口IP,有两个办法:
- 访问第三方IP查询服务:在服务器上执行
curl ifconfig.me或curl cip.cc,返回的就是这台服务器访问互联网时的出口IP,如果服务器在NAT后面,这个IP是路由器的公网IP,不是服务器自己的。 - 查看路由器或防火墙的WAN口IP:登录路由器管理界面(通常是
168.1.1或168.0.1),在“网络状态”或“WAN口信息”里能看到运营商分配的公网IP,如果是动态IP,这个地址会定期变化,需要搭配DDNS(动态域名解析)服务来固定访问入口。
这个场景在“有公网IP的服务器”和“内网穿透的服务器”之间经常让人困惑,假设你租了一台云服务器,又在办公室搭了一台内网服务器通过frp或ngrok反向代理映射到云服务器上,那么用户访问的是云服务器的公网IP,内网服务器本身有没有公网IP已经不重要了。你真正要查的,是那个对外提供服务的入口地址。
常见误区与排查思路
查IP这件事看似简单,实际运维中因为查错IP导致的故障比比皆是,把常见坑列出来,方便你对照自查:
- 把内网IP当公网IP用:在外网SSH连接
168.x.x,永远连不上,正确做法是确认云控制台的公网IP或路由器的端口映射规则。 - DNS解析记录指向了旧IP:服务器迁移或换IP后,没同步修改域名解析,用户访问的还是老地址,排查时用
ping或nslookup查看域名实际解析到哪个IP,再和服务器当前IP比对。 - 多网卡环境查错网卡:服务器上有
eth0、eth1两块网卡,一块连内网、一块连外网,只看第一块容易误判,用ip route get 8.8.8.8这种命令,让系统告诉你“访问外网时走哪个IP”。 - 云控制台登录不上去,无法查IP:如果控制台都进不去,说明账号权限或网络出了问题,此时可以通过服务商提供的VNC远程连接(网页终端)登录服务器,再用系统命令查IP。
实际运维中还有个小技巧:在服务器上部署个定时任务,把当前IP记录到日志文件里,命令很简单,ip addr show eth0 | grep inet配合crontab即可实现,这样服务器IP变动后,你有历史记录可以回溯,不用抓瞎。
查询服务器IP的三种场景速查表
| 场景 | 最快方法 | 适用条件 | 注意事项 |
|---|---|---|---|
| SSH已登录Linux服务器 | ip addr或hostname -I |
服务器正常运行 | 看inet后面的IP,区分内网/公网 |
| 远程桌面/本地操作Windows服务器 | ipconfig |
服务器可访问 | 找IPv4地址一栏 |
| 云服务器没登录或无法登录 | 云厂商控制台实例详情 | 有控制台访问权限 | 公网IP和内网IP分开标注 |
| 服务器在NAT后,想查公网出口 | curl ifconfig.me |
服务器能访问外网 | 返回的是NAT设备的公网IP |
| 域名指向的目标IP未知 | ping或nslookup加域名 |
域名解析正常 | 对比解析结果和服务器实际IP |
关于服务器IP的常见疑问
问:买了云服务器,但忘记公网IP了,怎么找回来?
登录云厂商官网,进入控制台找到“实例列表”,每一台云服务器的基本信息里都明确写着公网IP和内网IP,即使不记得密码登录不上系统,控制台也能查,如果账号里实例太多,可以用控制台的搜索功能按实例ID或名称筛选。
问:为什么服务器里查到的IP和ping域名得到的IP不一样?
服务器里查到的通常是内网IP,ping域名得到的是域名解析指向的公网IP,云服务器通过NAT将内网IP映射到公网IP,两个地址都是这台服务器真实在用的,只是视角不同,如果ping出的IP和云控制台的公网IP也对不上,说明DNS解析记录有误,需要检查域名解析设置。
问:服务器换IP后,网站多长时间能恢复访问?
取决于DNS解析记录的生效速度,修改域名A记录指向新IP后,全球DNS缓存刷新需要几分钟到48小时不等,如果设置了较短的TTL值(比如300秒),多数用户会在5分钟内访问到新IP,云服务器本身的公网IP变更立即生效,不需要等待,但依赖旧IP的连接会全部断开,需要重新配置。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/674443.html





