查看服务器IP地址是运维管理和网络配置中最基础且至关重要的操作,无论是进行远程连接、配置防火墙,还是排查网络故障,准确获取服务器的IP地址都是第一步,核心上文归纳在于:查看服务器IP需要根据操作系统类型(Windows或Linux)以及IP地址类型(内网IP或公网IP)选择对应的命令行工具或配置文件查询方式,掌握ipconfig、ifconfig、ip addr以及curl等核心命令,结合对网络接口配置文件的理解,可以高效地定位服务器网络信息。

理解内网IP与公网IP的区别
在深入具体命令之前,必须明确两个概念。内网IP(私有IP)是用于局域网内部通信的地址,通常表现为168.x.x、x.x.x或16.x.x网段,主要用于服务器内部交换机、路由器之间的通信。公网IP(公有IP)则是互联网上的全球唯一地址,用于外部用户访问服务器,在云服务器环境中,服务器通常拥有一个内网IP用于绑定应用,同时通过NAT(网络地址转换)映射一个公网IP供外部访问,查看IP时,需根据实际需求(是配置局域网还是对外发布服务)关注不同的地址段。
Windows服务器查看IP地址的方法
Windows Server环境提供了图形界面和命令行两种查看方式,对于专业运维而言,命令行更为高效。
使用CMD命令行工具
最常用的命令是ipconfig,打开命令提示符(CMD)后,输入ipconfig,系统将列出所有网络适配器的IPv4地址和IPv6地址,为了获取更详细的DNS和网关信息,建议使用ipconfig /all,该命令会显示详细的网络配置,包括物理地址(MAC地址)、DHCP服务器IP等,在输出结果中寻找“IPv4 地址”一项,即可看到当前服务器的内网IP。
使用PowerShell工具
PowerShell提供了更结构化的输出,输入Get-NetIPAddress命令,可以以对象列表的形式展示所有接口的IP配置,若只想查看IPv4地址,可以使用管道符进行筛选,例如Get-NetIPAddress -AddressFamily IPv4,这种方式在编写自动化脚本或处理大量服务器配置时尤为实用。
Linux服务器查看IP地址的方法
Linux服务器是企业级应用的主流,其查看IP的方式因发行版不同而略有差异,主要分为传统工具和现代工具两类。
使用ifconfig命令(传统方法)
ifconfig是net-tools包中的工具,虽然在一些新系统中已被弃用,但因其简洁性仍被广泛使用,输入ifconfig或ifconfig -a,系统会显示网络接口(如eth0, ens33)的详细信息,在输出中查找inet addr字段,其后的数值即为服务器的内网IP地址,需要注意的是,ifconfig默认可能不预装在最新的Linux发行版中,此时需要使用ip命令替代。
使用ip addr命令(现代标准方法)
ip命令是iproute2软件包的一部分,是当前Linux网络管理的标准工具,输入ip addr或简写ip a,可以查看网络接口状态,输出结果中,inet开头的行即表示IPv4地址。inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0,其中168.1.100即为IP地址,此命令功能强大,不仅能看IP,还能管理路由、隧道和虚拟设备。

查看特定网络接口
在服务器拥有多张网卡(如内网卡、外网卡、管理口网卡)时,查看所有接口会造成信息冗余,可以指定接口名称进行查询,例如ip addr show eth0,这将只显示eth0这张网卡的配置信息,帮助管理员快速定位关键网络接口。
查看服务器的公网IP地址
上述命令查看的通常是内网IP,若要确认服务器对外暴露的公网IP,本地命令往往无法直接获取,因为公网IP通常由网关或运营商的NAT设备分配。
使用curl命令查询外部接口
最通用的方法是让服务器向外部网站发起请求,由外部网站返回其看到的公网IP,常用的命令包括:
curl ifconfig.mecurl cip.cccurl ip.sb
这些命令会返回服务器的公网IPv4地址,部分服务(如cip.cc)还会返回运营商和地理位置信息,这对于排查CDN加速问题或确认IP归属非常有帮助。
通过配置文件查看静态IP
对于配置了静态IP的服务器,直接查看网络配置文件是获取IP最可靠的方式,且能了解子网掩码和网关配置。
CentOS/RHEL系统
在CentOS 7及以下版本,配置文件通常位于/etc/sysconfig/network-scripts/目录下,文件名类似ifcfg-eth0,使用cat /etc/sysconfig/network-scripts/ifcfg-eth0查看,其中IPADDR字段即为静态IP地址,在CentOS 8及以上或RHEL 8中,若使用NetworkManager,配置文件可能位于/etc/sysconfig/network-scripts/或通过nmcli命令管理。
Ubuntu/Debian系统
Ubuntu的传统配置文件是/etc/network/interfaces,而在新版本(尤其是使用Netplan的版本),配置文件位于/etc/netplan/目录下,通常为.yaml结尾的文件,使用cat /etc/netplan/00-installer-config.yaml可以查看到addresses字段,其中定义了服务器的静态IP地址及网关信息,通过查看配置文件,不仅能确认当前IP,还能验证IP是否为静态分配,避免重启后IP变更导致的服务中断。

常见问题与专业建议
在实际运维中,可能会遇到命令执行后找不到IP的情况,这通常意味着网络接口未启动或未获取到DHCP地址,首先应检查物理连接,然后使用ethtool工具查看网卡链路状态,对于云服务器,务必确认安全组规则是否允许ICMP协议,否则可能导致无法ping通,误以为IP配置错误,在多网卡绑定或配置虚拟IP(VIP)用于高可用场景时,使用ip addr命令能更清晰地看到主IP和别名IP的归属关系,这是ifconfig无法比拟的优势。
相关问答
Q1:为什么在Linux服务器输入ifconfig命令提示“command not found”?
A1:这是因为您的Linux发行版(如CentOS 8、Ubuntu 18.04+)默认未安装net-tools工具包,该工具包包含ifconfig,解决方法是使用现代的标准命令ip addr来替代,或者通过包管理器安装net-tools(例如yum install net-tools或apt install net-tools),从专业角度看,ip命令功能更强大,建议逐步适应使用ip命令。
Q2:如何判断服务器使用的是动态IP还是静态IP?
A2:在Linux中,可以使用ip addr show查看,如果IP地址是通过DHCP获取的,通常会有dynamic字样(取决于配置),更准确的方法是查看配置文件,在CentOS中查看ifcfg-eth0文件,若BOOTPROTO=dhcp则为动态,若BOOTPROTO=static则为静态,在Windows中,可以在网络适配器属性中查看“Internet 协议版本 4 (TCP/IPv4)”的属性,看是选择“自动获得IP地址”还是“使用下面的IP地址”。
如果您在查看服务器IP的过程中遇到任何疑问,或者有更高效的查询技巧,欢迎在评论区留言交流,我们可以共同探讨网络运维中的最佳实践。

















