在Linux系统中,IP地址是设备在网络中的唯一标识,掌握查看IP地址的方法是系统管理和网络排查的基础,Linux提供了多种命令和工具来查询IP地址,适用于不同的场景和需求,本文将详细介绍几种常用的方法及其使用技巧。

使用ip addr命令查看IP地址
ip addr(或简写为ip a)是Linux系统中查看网络接口和IP地址的首选命令,它功能强大且信息全面,执行该命令后,会列出系统中所有网络接口(如eth0、ens33、lo等)的详细信息,包括接口状态、MAC地址、IP地址、子网掩码、广播地址等。
在终端输入ip addr,输出结果中会以inet关键字标识IPv4地址,以inet6标识IPv6地址,对于每个IP地址,还会显示其前缀长度(即子网掩码的CIDR表示形式),如果接口处于UP状态且inet后存在IP地址,则表示该接口已正确配置并连接到网络,通过ip addr show dev <接口名>命令可以查看特定接口的IP信息,如ip addr show dev eth0仅显示eth0接口的配置。
使用ifconfig命令查看IP地址
ifconfig是传统的网络配置工具,在早期Linux版本中广泛使用,虽然在新系统中可能需要手动安装net-tools包(如sudo apt install net-tools),但其简洁的输出仍被许多用户青睐。
执行ifconfig命令后,会列出所有已激活的网络接口信息,每个接口下会显示inet addr(IPv4地址)、Bcast(广播地址)、Mask(子网掩码)等关键字,若需查看特定接口,可使用ifconfig <接口名>,例如ifconfig eth0,需要注意的是,ifconfig已逐渐被ip命令取代,部分现代Linux发行版默认未安装,建议优先使用ip命令。
使用hostname命令查看主机名和IP地址
hostname命令主要用于查看或设置系统主机名,但结合-I选项(大写i)可快速获取所有已配置的IPv4地址,执行hostname -I会以空格分隔输出所有网络接口的IP地址,适用于仅需获取IP而不关心其他网络信息的场景。

hostname -I可能输出168.1.100 10.0.0.1,表示当前系统有两个IPv4地址分别配置在eth0和eth1接口上,该命令输出简洁,适合在脚本中调用或快速查看主IP地址。
查看网关和DNS配置
排查网络问题时,除了IP地址,网关和DNS配置同样重要,使用ip route命令可以查看默认网关:ip route | grep default会显示默认路由的网关地址,如default via 192.168.1.1 dev eth0表示网关为192.168.1.1。
DNS配置信息通常存储在/etc/resolv.conf文件中,可通过cat /etc/resolv.conf查看,其中nameserver行指定了DNS服务器的IP地址,需要注意的是,某些系统(如使用systemd-resolved的发行版)可能需要通过resolvectl status命令查询DNS信息。
动态IP与静态IP的区别
Linux系统中的IP地址可分为动态获取(DHCP)和静态配置两种方式,动态IP由路由器或DHCP服务器自动分配,重启后可能变化,适合普通用户;静态IP由手动设置,固定不变,适合服务器等需要稳定网络环境的场景。
通过ip addr查看时,若IP地址后包含dynamic关键字,表示为动态IP;若无此标识,则通常为静态配置,修改静态IP需要编辑网络配置文件,如Ubuntu系统的/etc/netplan/目录下的配置文件,或CentOS系统的/etc/sysconfig/network-scripts/中的ifcfg文件,修改后需重启网络服务或使用netplan apply命令生效。

网络故障排查技巧
当无法连接网络时,可通过以下步骤排查:首先使用ip addr确认接口是否获得IP地址;若未获得,检查DHCP服务是否正常运行;若IP地址异常,尝试释放并重新获取IP(如dhclient eth0);若IP正常但无法上网,使用ping 8.8.8.8测试网络连通性,再通过nslookup www.baidu.com检查DNS解析是否正常。
通过以上方法,用户可以灵活应对不同场景下的IP地址查询需求,无论是日常网络管理还是故障排查,都能快速定位问题并解决,掌握这些命令不仅能提高工作效率,也是深入理解Linux网络管理的重要基础。



















