在Linux系统中,IP地址是网络通信的基础,掌握查看IP地址的命令是系统管理和网络排查的基本技能,本文将详细介绍几种常用的Linux命令查IP方法,涵盖不同场景和需求,帮助用户高效获取网络配置信息。

使用ifconfig命令查看IP地址
ifconfig是传统的网络配置工具,虽然在新版Linux系统中逐渐被ip命令取代,但在许多发行版中仍可使用,通过终端输入ifconfig,可直接显示所有网络接口的详细信息,包括IP地址、子网掩码、MAC地址等,以太网接口通常显示为eth0或enp3s0,无线接口显示为wlan0,输出结果中inet字段后即为IPv4地址,inet6字段对应IPv6地址,若需查看特定接口,可加上接口名,如ifconfig eth0。
使用ip addr命令查看IP地址
ip命令是iproute2包的核心工具,功能更强大且推荐使用,执行ip addr或简写ip a,会列出所有网络接口的IP地址信息,包括接口状态、MAC地址、IP地址及其子网掩码等,与ifconfig不同,ip addr的输出结构更清晰,例如inet 192.168.1.100/24表示IPv4地址为168.1.100,子网掩码为255.255.0,若需仅显示IP地址,可结合grep命令,如ip addr | grep 'inet ' | awk '{print $2}',提取所有IPv4地址。
使用hostname命令查看主机名和IP
hostname命令主要用于查看或设置系统主机名,但加上-I选项可快速显示所有接口的IPv4地址,执行hostname -I会以空格分隔输出所有活跃接口的IP地址,适合需要快速获取IP而不关心其他网络信息的场景。

查看/etc/hosts和/etc/sysconfig/network配置文件
在静态IP配置场景中,IP地址可能存储在配置文件中,对于CentOS/RHEL系统,/etc/sysconfig/network-scripts/目录下的ifcfg-接口名文件(如ifcfg-eth0)包含IPADDR和NETMASK等字段;对于Debian/Ubuntu系统,/etc/network/interfaces文件记录了静态IP配置。/etc/hosts文件定义了主机名与IP的映射关系,可通过cat /etc/hosts查看。
使用nmcli工具(NetworkManager)
在采用NetworkManager管理网络的系统中(如现代Ubuntu、Fedora),nmcli是命令行管理网络的首选工具,执行nmcli connection show列出所有网络连接,nmcli connection show "连接名" | grep ipv4.addresses可查看指定连接的静态IP,若需动态获取当前IP,使用nmcli device show或nmcli connection show --active。
远程查看IP地址
若需远程登录Linux服务器查看IP,可通过ssh user@ip "command"执行命令。ssh root@server "ip addr | grep 'inet '"可远程获取服务器的IP地址,结合curl可获取公网IP,如curl ifconfig.me或curl ipinfo.io/ip,适合测试服务器的外网连接状态。

网络故障排查辅助命令
若IP地址显示异常,可结合其他命令排查问题。ping测试网络连通性,netstat -tuln查看监听端口,route -n检查路由表,dhclient重新获取动态IP(DHCP场景)。
Linux提供了多种命令查IP,用户可根据需求选择:ifconfig和ip addr适合查看本地接口IP,hostname -I快速获取活跃IP,配置文件适合静态IP管理,nmcli适合NetworkManager环境,远程命令和公网IP工具则满足服务器运维需求,熟练掌握这些命令,能有效提升网络管理和故障排查效率。













