在 Linux 系统中,查看 IP 地址的常用命令有以下几种,推荐使用更现代的 ip命令:

📌 1. ​ip addrip a(最推荐 👍)​

  • 命令:​

    ip addr show
    # 或者更简洁的写法:
    ip a
  • 功能:​​ 这是最强大、最现代的命令,用于显示所有网络接口的详细配置信息,包括 IP 地址(IPv4 和 IPv6)、MAC 地址、状态等。

  • 输出关键信息:​

    • inet行后面跟的是 IPv4 地址和子网掩码(如 192.168.1.100/24)。

    • inet6行后面跟的是 IPv6 地址。

    • link/ether行后面跟的是 MAC 地址。

    • state UP表示接口已启用。

  • 例子:​

    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
        link/ether aa:bb:cc:dd:ee:ff brd ff:ff:ff:ff:ff:ff
        inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic noprefixroute eth0
           valid_lft 86384sec preferred_lft 86384sec
        inet6 fe80::aabb:ccff:fedd:eeff/64 scope link noprefixroute
           valid_lft forever preferred_lft forever
  • 优势:​​ 功能全面,是 ifconfig的现代替代品,几乎所有发行版默认安装。

⚠ 2. ​ifconfig(传统命令)​

  • 命令:​

    ifconfig
    # 或者查看特定接口(如 eth0)
    ifconfig eth0
  • 功能:​​ 传统上用于配置和显示网络接口信息。但在许多较新的 Linux 发行版中,默认可能不再安装 net-tools包(包含 ifconfig)。

  • 安装:​​ 如果提示命令未找到,可安装:

    # Debian/Ubuntu 系
    sudo apt-get install net-tools
    # RHEL/CentOS 系
    sudo yum install net-tools
  • 输出关键信息:​

    • inet后面是 IPv4 地址(如 192.168.1.100)。

    • inet6后面是 IPv6 地址。

    • ether后面是 MAC 地址。

    • RX/TX显示网络流量统计。

  • 例子:​

    eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
          inet 192.168.1.100  netmask 255.255.255.0  broadcast 192.168.1.255
          inet6 fe80::aabb:ccff:fedd:eeff  prefixlen 64  scopeid 0x20<link>
          ether aa:bb:cc:dd:ee:ff  txqueuelen 1000  (Ethernet)
          ...
  • 注意:​​ 虽然仍在广泛使用,但官方推荐迁移到 ip命令。

🔍 3. ​hostname(快速查看特定 IP)​

  • 命令:​

    hostname -I  # 注意是大写 I
  • 功能:​​ 快速显示系统所有非环回 IPv4 地址(如果有多个网卡或多个 IP),每个 IP 地址用空格分隔。不显示 IPv6。

  • 例子输出:​

    192.168.1.100 10.8.0.10
  • 优点:​​ 非常简洁,方便用于脚本中获取 IP 地址。Ubuntu 等发行版常用。

📦 4. ​使用 nmcli(NetworkManager 命令行工具)​

  • 命令:​

    nmcli device show
    # 或者精简版
    nmcli device
  • 功能:​​ 如果系统使用 NetworkManager 管理网络(常见于桌面环境和一些服务器),此命令可以显示设备及其连接状态、IP 信息等。

  • 输出关键信息:​​ 在 IP4.ADDRESS[1]IP6.ADDRESS[1]行找到 IP 地址。

🚀 总结与推荐

  • 首选​: ​ip addrip a​ - 功能最全,最现代,几乎所有发行版默认安装,无额外依赖。

  • 次选/传统​: ​ifconfig​ - 熟悉度高,但可能需要手动安装软件包,正在被 ip取代。

  • 快速脚本获取​: ​hostname -I​ - 超级简单获取所有非环回 IPv4 地址。

  • NetworkManager 用户​: ​nmcli device show​ - 集权管理工具的详细信息。

🖥 查看特定接口

对于以上所有命令(除了 hostname -I),你都可以指定网络接口名来查看该接口的信息:

ip a show eth0  # 查看 eth0 的 IP 信息
ifconfig eth0   # 查看 eth0 的 IP 信息 (如果已安装 ifconfig)
nmcli device show eth0  # 查看 eth0 的 IP 信息 (如果使用 NM)

🌐 补充:快速查询公网IP (非系统命令)

系统命令只能查到本地接口的 IP。要查公网 IP,需要用网络服务:

# 常用服务
curl ifconfig.me
curl icanhazip.com
curl ipinfo.io/ip
curl ident.me

注意:​​ 选择这些服务时请留意其隐私条款!

💻 根据你的系统和需求选择最合适的命令吧!通常 ip addr是最优解。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐