服务器测评网
我们一直在努力

linux 查ip地址命令有哪些?不同场景下怎么选?

在 Linux 系统中,查看 IP 地址是日常运维和管理中的基础操作,掌握多种查看方法不仅能提升工作效率,还能根据不同场景选择最合适的命令,本文将详细介绍 Linux 下查看 IP 地址的常用命令、适用场景及注意事项,帮助用户全面掌握相关技能。

linux 查ip地址命令有哪些?不同场景下怎么选?

使用 ip 命令:现代 Linux 系统的首选

ip 命令是 iproute2 包中的工具,功能强大且全面,是当前主流 Linux 发行版(如 Ubuntu、CentOS 7+、Debian 等)推荐使用的网络管理工具,相比传统的 ifconfigip 命令能提供更详细的网络接口信息,并支持 IPv4 和 IPv6 协议。

基本语法

查看所有网络接口的 IP 地址信息:

ip addr show  

或简写为:

ip a  

常用参数

  • 查看指定接口:例如查看 eth0 的 IP 地址:
    ip addr show eth0  
  • 仅显示 IP 地址:结合 grep 过滤出包含 inet(IPv4)或 inet6(IPv6)的行:
    ip addr show eth0 | grep 'inet '  
  • 显示详细信息:包括 MAC 地址、子网掩码、广播地址等:
    ip addr show eth0  

输出说明

执行 ip addr show 后,输出内容分为多个网络接口段落,每个接口包含以下关键信息:

  • link/ether:MAC 地址(硬件地址)。
  • inet:IPv4 地址及子网掩码(如 168.1.100/24)。
  • inet6:IPv6 地址(如果启用)。
  • scope:地址作用范围(如 global 为全局地址,link 为链路本地地址)。

使用 ifconfig 命令:传统工具的兼容性

ifconfig 是早期 Linux 系统中常用的网络配置工具,属于 net-tools 包,虽然在新系统中逐渐被 ip 命令取代,但部分旧版系统(如 CentOS 6、Debian 7 等)仍可能依赖该命令。

安装与使用

若系统未安装 ifconfig,可通过以下命令安装(以 Debian/Ubuntu 为例):

linux 查ip地址命令有哪些?不同场景下怎么选?

sudo apt install net-tools  

查看所有接口的 IP 地址:

ifconfig  

查看指定接口(如 eth0):

ifconfig eth0  

输出说明

ifconfig 的输出中,关键信息包括:

  • inet addr:IPv4 地址。
  • Bcast:广播地址。
  • Mask:子网掩码。
  • HWaddr:MAC 地址。

注意事项

ifconfig 已被官方标记为过时工具,建议在新系统中优先使用 ip 命令,以获得更好的兼容性和功能支持。

查看网络连接状态与临时 IP

除了查看接口配置,有时需要了解当前活跃的网络连接或临时获取 IP 地址(如 DHCP 客户端场景)。

使用 ssnetstat 查看连接状态

  • ss 命令(推荐,iproute2 包的一部分):
    ss -tulnp | grep ':80'  # 查看 80 端口的 TCP/UDP 连接  
  • netstat 命令(传统工具):
    netstat -tuln | grep ':80'  

查看 DHCP 客户端信息

若通过 DHCP 获取 IP,可通过以下命令查看租约信息:

linux 查ip地址命令有哪些?不同场景下怎么选?

  • Ubuntu/Debian(使用 dhclient):
    cat /var/lib/dhcp/dhclient.eth0.leases  
  • CentOS/RHEL(使用 dhclientNetworkManager):
    nmcli device show eth0 | grep IP4.ADDRESS  

不同场景下的选择建议

  • 日常查看:优先使用 ip addr show,信息全面且命令简洁。
  • 脚本编写:推荐使用 ip 命令,其输出格式稳定,适合通过 grepawk 提取特定信息(如提取 IPv4 地址):
    ip addr show eth0 | grep 'inet ' | awk '{print $2}' | cut -d'/' -f1  
  • 旧系统维护:若 ip 命令不可用,可临时使用 ifconfig,但需注意安装依赖。
  • 网络故障排查:结合 pingtraceroutess 等工具,定位 IP 配置或连接问题。

常见问题与注意事项

  1. 权限问题
    部分命令(如 ifconfig 修改配置)需要 sudo 权限,但查看操作普通用户即可执行。

  2. 虚拟接口
    Linux 中可能存在虚拟网络接口(如 docker0lo),可通过 ip addr show 中的接口名称区分(lo 为回环地址,0.0.1)。

  3. IPv6 支持
    若需查看 IPv6 地址,可在命令中添加 inet6 过滤,或直接使用 ip -6 addr show

  4. 动态 IP 变化
    通过 DHCP 获取的 IP 可能会变化,若需实时监控,可结合 watch 命令:

    watch -n 1 "ip addr show eth0 | grep 'inet '"  

Linux 系统中查看 IP 地址的方法多样,ip 命令凭借其强大的功能和现代性成为首选工具,而 ifconfig 等传统工具则在特定场景下提供兼容性支持,根据实际需求选择合适的命令,并结合参数灵活使用,能够高效完成网络配置与管理工作,掌握这些基础操作,是深入学习 Linux 网络管理的重要一步。

赞(0)
未经允许不得转载:好主机测评网 » linux 查ip地址命令有哪些?不同场景下怎么选?