怎么看运行程序的服务器IP,服务器IP怎么查?

想知道运行程序的服务器IP,最直接的方法是登录那台服务器,执行一条系统命令去查网卡地址,但更准确的是用端口反查正在监听的进程,再确认它绑定的IP。很多新手栽跟头的地方,是查了IP却发现那是内网地址,和外界访问的入口对不上。

先分清你要找的IP是哪一种

在敲命令前,先问自己一个问题:我要的是程序本机监听的IP,还是外部访问程序时用的IP?这两个东西绝大多数情况下不一样。

获得服务器ip地址和端口的方法
加载中
获得服务器ip地址和端口的方法
不
不处chu
1528--
原视频地址

服务器通常有两层网络身份,第一层是内网IP,一般长这样:192.168.x.x、10.x.x.x、172.16.x.x,这是服务器在机房局域网或云VPC网络里的私有地址,程序日志里显示的往往就是这个,第二层是公网IP,也就是互联网上路由可达的地址,你从家里电脑访问一个网站,域名解析到的那个IP就是公网IP,云服务器厂商会把公网IP通过NAT映射到内网IP上,所以在服务器内部用命令看,默认看到的几乎都是内网IP。

还有一种叫回环地址,永远都是127.0.0.1,程序如果绑定了这个地址,表示只能本机访问,外部设备连不进来,排查的时候看到这个地址,别急着抄下来,它不算真正的服务器对外IP。

主流Linux服务器查看IP的实用命令

国内生产环境使用Linux的比例相当高,尤以CentOS、Ubuntu、Debian为主,登录服务器后,推荐按以下顺序操作。

第一步,用ip addr命令查看所有网卡信息,这个命令输出里,lo是回环接口,eth0或ens33是物理网卡,重点看eth0下面inet后面的地址,那就是这台服务器当前的主IP。

ip addr

如果你的系统比较老旧,没有ip命令,就用ifconfig,若提示找不到,先装个网络工具包,CentOS执行yum install net-tools,Ubuntu执行apt install net-tools。

第二步,只提取IP地址本身,避免被一堆MTU和MAC地址干扰:

hostname -I

这条命令会把所有网卡的IP一次性列出来,空格分隔,干净利落,多个IP时,第一个通常是主IP。

第三步,如果你想确认具体是哪个进程在监听端口,以及它绑定的IP,用ss命令:

ss -lntp

输出里Local Address:Port那一列,比如0.0.0:8080表示监听所有网卡的8080端口,168.1.10:8080表示只监听这个内网IP,配合-p参数显示进程名,能直接看到PID和程序名称。

行业共识认为,ss命令是netstat的替代方案,速度快且信息更全,老习惯用netstat -lntp也完全没问题,输出格式类似。

Windows服务器查看IP和程序端口

Windows Server在国内占有率也不低,尤其是传统企业。

查看IP最简单的方法,在CMD或PowerShell里输入:

ipconfig

输出里的IPv4 地址就是你要找的答案,如果有多个网卡,带Default Gateway的那个通常是主用网卡。

如果你的Windows服务器跑了Java、.NET或数据库程序,想知道程序发布在哪个端口,对应IP是多少,用组合拳,先查端口和PID:

netstat -ano | findstr :8080

最后一列就是PID,然后用任务管理器或者命令看这个PID对应哪个程序:

tasklist | findstr 1234

至于程序绑定的IP,在netstat -ano输出里看Local Address列,如果显示0.0.0:8080,说明程序监听所有IP,你从任何能路由到这台服务器的地址都能访问,如果显示0.0.1:8080,那这个服务只有服务器本机能访问。

PowerShell用户还可以用更现代的写法:

Get-NetIPAddress -AddressFamily IPv4
Get-Process -Id 1234 | Select-Object ProcessName

云服务器怎么查看公网IP

如果你用的是简米云、酷番云、华为云的云服务器,情况特殊一些,在服务器内部执行ip addr,看到的通常是内网IP,因为云厂商的架构决定了公网IP是映射到内网IP上的,行业内存在一种常见的误解:认为在服务器里看到的IP就是对外IP。

查云服务器公网IP,最权威的地方是云厂商控制台,登录网页控制台,找到云服务器ECS或CVM实例列表,页面上直接显示公网IP和内网IP,这是排查时最直接、最不容易错的方式。

如果你只想从服务器命令行里知道公网IP,可以访问一些接口,比如curl ifconfig.me或curl ip.sb,但这些接口依赖外网连通性,在某些安全组限制严格的机房可能不通,注意这些公共服务不是标准,仅作为辅助手段。

云服务器的安全组规则决定了哪些IP能访问你的程序,即使公网IP正确,安全组没放行对应端口,外部依然无法访问,控制台里的安全组配置,和公网IP同等重要。

程序日志和配置文件里的IP线索

有时候你不能登录服务器,或者服务器太多,逐一排查效率太低,这时候要从程序本身下手找线索。

第一个线索是启动脚本和配置文件,Java应用看application.yml或application.properties里的server.address,Nginx看nginx.conf里的listen指令,Tomcat看server.xml里的Connector标签,这些配置里写的IP可能是0.0.0.0、内网IP或者具体的地址,能明确告诉你程序设计上监听哪个IP。

第二个线索是日志文件,很多程序启动时会打印监听地址,比如Spring Boot的启动日志里会有Tomcat started on port(s): 8080 (http) with context path '',虽然没直接写IP,但可以推断是监听所有地址,数据库日志、消息队列日志同理,通常会记录本节点监听的Host。

第三个线索是进程的环境变量,某些部署平台会把当前节点的IP注入环境变量,比如HOSTNAME、POD_IP,在Linux下用env命令查看全部环境变量,或者在容器里用printenv,常常能找到线索。

多IP和容器环境下的IP选择

一台服务器有多个IP的情况很常见,这时候IP选错了会出大问题。

物理机多网卡场景:服务器有内网网卡和存储网卡,程序需要对外提供服务,应该绑定业务网卡的IP,绑定错了存储网卡的IP,外部访问就会间歇性失败。

容器场景:Docker容器有独立的网络命名空间,在宿主机上用docker ps看容器ID,然后docker exec -it 容器ID bash进入容器,再执行ip addr看容器自己的IP,宿主机IP和容器IP不是一回事,端口映射遵循宿主机IP:映射端口->容器IP:实际端口的规则。

Kubernetes集群更复杂,查看Pod的IP用kubectl get pod -o wide,查看Service的ClusterIP用kubectl get svc,你要访问的是Service,不是背后某一个Pod的IP,这些技术在运维面试里是高频考点,生产环境也极常用。

从外部确认程序IP是否真的可达

查到了IP和端口,最后一步是验证,用ping只能确认服务器在线,不能确认端口通,测试TCP端口连通性,推荐用telnet或者Linux下的nc:

telnet 你的IP 8080

或者:

nc -zv 你的IP 8080

如果提示Connected to,说明IP和端口都能正常访问,如果Connection refused,要么是程序没启动,要么是防火墙拦截了。

还有一个细节:数据库程序常用的3306端口,Redis的6379端口,很多厂商默认只允许内网访问,你需要从另一台同内网的机器去测试,而不是直接从你本地的Mac或Windows去连,这一点常常让人困惑,明明IP没错,却总是连不上。

常见误区与快速排查思路

  • 看了ifconfig的IP就直接用,多数情况下那只是内网地址,公网访问要用控制台上显示的IP。
  • 以为0.0.0是一个真实IP,它不是,它表示“本机所有地址”。
  • 把容器IP当成宿主机IP,容器重启后IP会变,外部访问应该用宿主机IP加映射端口。

快速排查路径归纳如下:先确认程序监听端口,用ss -lntp,再看监听地址是0.0.0.0还是具体IP,若是云服务器,去控制台确认公网IP和安全组,最后从外部用telnet验证。

怎么查看运行程序的服务器IP:完整实操总结

怎么查看运行程序的服务器IP,最终落地的步骤可以凝练成五步,第一步,登录服务器查看网卡IP,Linux用ip addr,Windows用ipconfig,第二步,查看程序监听的端口和地址,Linux用ss -lntp,Windows用netstat -ano,第三步,区分内网IP和公网IP,云服务器以控制台为准,第四步,检查防火墙和安全组是否放行该端口,第五步,从外部用telnet或nc验证连通性。

Q&A:关于服务器IP的常见疑问

为什么我查到的IP和域名解析出来的IP不一致

因为你查到的通常是内网IP,而域名解析到的是公网IP,云服务器内部永远看不到自己的公网IP,只能看内网,这是NAT机制决定的正常现象。

程序日志里显示的IP是127.0.0.1,外部还能访问吗

能,程序绑定了127.0.0.1时,外部确实无法直接访问,但如果前面有Nginx反代,Nginx通过本机回环地址转发请求,程序就不需要绑定外部IP,这种情况常见于前后端分离的部署架构,对于Spring Boot应用设置server.address=127.0.0.1,搭配Nginx代理是标准安全做法。

netstat查不到我想找的端口,是不是IP有问题

先确认程序是否真的启动了,可能进程崩溃导致端口根本没监听,其次确认你有权限看到所有进程,有些程序以其他用户身份运行,需要sudo netstat -lntp,最后确认你找的端口号正确,程序默认端口常有改动。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/%e6%80%8e%e4%b9%88%e7%9c%8b%e8%bf%90%e8%a1%8c%e7%a8%8b%e5%ba%8f%e7%9a%84%e6%9c%8d%e5%8a%a1%e5%99%a8ip%ef%bc%8c%e6%9c%8d%e5%8a%a1%e5%99%a8ip%e6%80%8e%e4%b9%88%e6%9f%a5%ef%bc%9f/

赞 (0)
上一篇 2026年10月21日 19:19
下一篇 2026年10月21日 19:19

相关推荐

  • ASP如何实现一行布局?高效布局方法详解

    ASP一行布局ASP一行布局的核心在于运用现代CSS技术实现高效、精准的页面结构控制,显著提升开发效率与页面性能, 其本质是充分利用CSS Flexbox和CSS Grid两大布局模型,通过极简的代码(通常一行核心声明)解决传统布局中复杂的定位、对齐与响应问题,是专业前端开发的高效实践, 核心利器:Flexbo……

    2026年2月7日
    14110
  • 服务器443端口被占用怎么办?解决方法大全

    服务器443端口被占用是导致HTTPS服务无法启动、网站无法访问的常见原因,解决该问题的核心在于快速定位占用进程并采取合理的释放或配置修改措施,处理此类故障的优先策略并非直接终止进程,而是通过“端口状态诊断-进程溯源-服务冲突分析-针对性解决”的逻辑闭环,在保障服务器现有业务稳定性的前提下恢复443端口的正常监……

    2026年4月11日
    8300
  • 服务器U盘启动不了怎么办,启动失败是什么原因?

    服务器用U盘启动不了,先别急着报修,多数情况下,问题出在U盘可引导性、BIOS/UEFI启动模式、安全启动和RAID/硬盘模式这四件事上, 按下面顺序排查,通常能快速缩小范围,避免把设置问题当成硬件故障,服务器用U盘启动失败是什么原因?先做三步快速定位服务器和普通PC不一样,它对启动介质、固件策略、阵列卡驱动更……

    2026年10月7日
    000
  • AIoT实习生是做什么的,AIoT实习生需要掌握哪些技能

    AIoT实习生岗位的核心价值在于连接硬件底层与云端算法,要求具备嵌入式开发基础及Python数据处理能力,2026年该岗位更侧重边缘计算部署与多模态数据清洗实战,AIoT实习生的核心能力画像与岗位定位从单一开发向全栈协同的转变在2026年的物联网生态中,单纯的“写代码”已无法覆盖AIoT实习生的工作全貌,业内专……

    2026年6月17日
    2700
  • ASP.NET怎么学最快?新手入门教程看这里就懂了!

    ASP.NET:构建现代企业级Web应用的强大框架ASP.NET 是由微软开发并持续演进的免费、开源Web应用框架,是.NET平台的核心组成部分,它专为构建高性能、可扩展、安全且易于维护的企业级Web应用程序、API服务和实时应用而设计,ASP.NET的核心优势与技术栈跨平台能力: 基于.NET Core的现代……

    2026年2月7日
    13400
  • nginx怎么配置二级目录访问其他服务器,反向代理怎么设置?

    在nginx里配置二级目录访问别的服务器,核心就是用location块配合proxy_pass指令,把指定目录的请求反向代理到目标服务器,这么配置直接、稳定,而且支持多级路径转发,nginx二级目录代理配置的核心原理先分清楚“二级目录”和“二级域名”很多人在刚开始接触nginx配置时,会把二级目录和二级域名搞混……

    2026年10月5日
    000
  • ftp服务器适用于tcp吗?ftp服务器tcp协议详解

    是的,FTP(文件传输协议)服务器主要基于 TCP(传输控制协议) 工作,以下是详细解释:为什么 FTP 使用 TCP?可靠性要求高:FTP 用于传输文件,要求数据完整、无丢失、无重复,TCP 提供面向连接、可靠的数据传输服务,确保所有数据包按顺序到达,需要双向通信:FTP 在传输过程中需要同时发送命令(如登录……

    2026年7月12日
    7400
  • 迭代法excel怎么用?excel迭代计算设置方法

    在Excel中启用迭代计算,只需进入“文件-选项-公式”,勾选“启用迭代计算”并设置最大迭代次数,即可让单元格引用自身或形成闭环引用,从而解决循环引用报错并实现动态模拟,很多用户遇到Excel报错“循环引用”时,第一反应是公式写错了,急着去排查哪个单元格引用了谁,这往往是Excel在提醒你:这个逻辑本身就是一个……

    2026年7月8日
    10700
  • 戴尔服务器R620管理口IP怎么配置?,有哪些步骤

    Dell R620配置管理口(iDRAC7)IP,最直接的路径是开机按F2进入System Setup→iDRAC Settings→Network,把DHCP改成Static并填写同网段IP、掩码和网关;如果机器在机房且无显示器,优先用前面板LCD菜单设置,管理口就是主板上标记为iDRAC的专用千兆网口,不要……

    2026年9月17日
    400
  • 我的世界手机版服务器NPC怎么弄?,手机版NPC生成指令

    我的世界手机版服务器要添加NPC,核心思路有两条:一是用原版指令直接生成简单的村民或盔甲架,二是安装服务端插件或行为包来实现带对话、商店、战斗功能的完整NPC,如果你刚开服或者只想快速弄几个站桩角色,原版指令就能搞定;如果想让NPC卖东西、发任务,那就得走插件路线,原版指令生成NPC:零插件快速上手我的世界手机……

    2026年10月12日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注