推荐使用 ip addr show 命令查看所有接口IP地址,它能同时显示IPv4/IPv6、子网掩码及接口状态;若需简洁IPv4列表可用 hostname -I;查公网IP则用 curl ifconfig.me。

如果您在Linux系统中需要快速确认当前主机的网络地址,但不确定使用哪个命令或工具获取准确的IP信息,则可能是由于不同发行版默认安装的网络工具存在差异。以下是多种可靠且广泛适用的查看IP地址的方法:
一、使用 ip 命令查看所有接口IP地址
ip 命令是现代 Linux 发行版中推荐的标准网络配置工具,属于 iproute2 工具包,能同时显示 IPv4 和 IPv6 地址,并提供接口状态、子网掩码等完整信息。
1、在终端中输入:ip addr show
2、按回车执行命令,等待输出结果。
3、在输出中查找以 inet 开头的行,其后跟随的点分十进制地址即为 IPv4 地址(例如 inet 192.168.1.100/24)。
4、如需仅查看特定网卡(如 eth0 或 ens33),可运行:ip addr show eth0 或 ip addr show ens33。
二、使用 ifconfig 命令查看网络接口信息
ifconfig 是传统网络配置工具,虽在部分新发行版中未预装,但语法直观、输出清晰,仍被大量用户习惯使用;适用于需快速定位主网卡 IPv4 地址的场景。
1、在终端中输入:ifconfig
2、若提示 command not found,则需先安装 net-tools 包:对于 Debian/Ubuntu 系统,运行 sudo apt install net-tools;对于 RHEL/CentOS 系统,运行 sudo yum install net-tools。
3、再次执行 ifconfig,在输出中查找 inet 字段后的地址(例如 inet 192.168.1.100)。
4、如仅关注某接口(如 wlan0),可直接运行:ifconfig wlan0。
三、使用 hostname 命令快速获取主IPv4地址
hostname -I 命令专用于以空格分隔形式一次性列出主机所有非环回 IPv4 地址,不显示 IPv6,输出简洁,适合脚本调用或快速确认内网地址。
1、在终端中输入:hostname -I
2、按回车执行,输出将为纯 IP 地址列表(例如:192.168.1.100 10.0.2.15)。
3、注意该命令不会显示子网掩码或接口名,仅返回可用 IPv4 地址。
4、若输出为空,说明系统尚未分配有效 IPv4 地址,需检查网络连接或 DHCP 服务状态。
四、使用 nmcli 命令通过 NetworkManager 获取IP信息
nmcli 是 NetworkManager 的命令行接口,适用于使用桌面环境(如 GNOME、KDE)或已启用 NetworkManager 服务的服务器,可精确关联 IP 地址与活跃连接名称。
1、在终端中输入:nmcli device show
2、查找输出中以 IP4.ADDRESS[1] 开头的行,其值即为主 IPv4 地址(例如:IP4.ADDRESS[1]: 192.168.1.100/24)。
3、如需仅查看当前激活连接的 IP,可先运行:nmcli connection show --active,再结合连接名查询详细信息。
4、若系统未启用 NetworkManager,该命令可能返回 No such device 错误,此时应选用其他方法。
五、使用 dig 或 curl 查询公网IP地址
当需要确认当前 Linux 主机对外暴露的公网 IP 地址时,该方法通过向外部可信服务发起 DNS 或 HTTP 请求获取结果,依赖网络连通性及远程服务可用性。
1、使用 curl 查询公网 IP:curl ifconfig.me 或 curl icanhazip.com。
2、使用 dig 查询(基于 DNS):dig +short myip.opendns.com @resolver1.opendns.com。
3、若 curl 未安装,可改用 wget:wget -qO- ifconfig.me。
4、若命令无响应或返回超时,请检查防火墙设置、DNS 配置或外网访问权限。










