当前位置:首页 > Linux > 正文

Linux查IP用哪个命令

在Linux中查看当前IP地址,常用命令有:,1. ip addr(推荐,显示详细网络接口信息),2. ifconfig(需安装net-tools,显示接口配置),3. hostname -I(仅快速输出本机IP),执行任一命令即可获取IP地址信息。

在Linux系统中查看当前IP地址是网络配置和故障排除的基础操作,以下是多种可靠的方法,适用于不同发行版(如Ubuntu、CentOS、Debian等),所有命令均基于Linux内核官方文档和网络工具标准实现,确保专业性和准确性:


使用 ip 命令(推荐)

ip 是现代Linux发行版的标准网络工具,取代了旧的 ifconfig,由 iproute2 软件包提供,支持所有主流发行版。

ip addr show

输出示例

2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:9b:d5:12 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.105/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s3
       valid_lft 86388sec preferred_lft 86388sec
    inet6 fe80::a00:27ff:fe9b:d512/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
  • 关键信息
    inet 后是IPv4地址(如 168.1.105),inet6 后是IPv6地址。
  • 精简用法
    ip -4 addr show(仅显示IPv4)
    ip -br addr show(简洁视图)

使用 ifconfig 命令(传统方法)

需安装 net-tools 包(部分新系统默认未安装):

sudo apt install net-tools  # Debian/Ubuntu
sudo yum install net-tools  # CentOS/RHEL

查看IP:

Linux查IP用哪个命令  第1张

ifconfig

输出示例

enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.105  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::a00:27ff:fe9b:d512  prefixlen 64  scopeid 0x20<link>
        ...

通过 hostname 命令

快速查看主机关联的IP:

hostname -I  # 注意:大写"I",显示所有非回环IP(推荐)
hostname -i  # 小写"i",可能仅显示回环地址(不推荐)

查看网关和DNS(辅助信息)

  1. 网关地址

    ip route show default

    输出示例:default via 192.168.1.1 dev enp0s3

    Linux查IP用哪个命令  第2张

  2. DNS配置

    cat /etc/resolv.conf

图形界面方法(适合桌面用户)

  • GNOME桌面
    设置 → 网络 → 点击连接名称 → 查看IP地址。
  • KDE Plasma
    系统设置 → 网络 → 当前连接 → 详细信息。

特殊情况处理

  1. 多网卡筛选
    指定网卡名查看(如 enp0s3):

    ip addr show dev enp0s3
  2. WiFi连接
    使用 iwconfig 查看无线网卡(需安装 wireless-tools)。

  3. 公有IP(互联网IP)

    Linux查IP用哪个命令  第3张

    curl ifconfig.me  # 或使用 api.ipify.org

总结与建议

方法 适用场景 优势
ip addr show 所有新发行版(首选) 无需安装,功能最全
ifconfig 旧系统或习惯用户 传统工具,直观易读
hostname -I 快速获取IP 简洁高效

安全提示

  • 避免使用未经验证的第三方脚本获取IP,可能泄露隐私。
  • 生产环境中推荐使用 ip 命令,其输出结果被自动化工具(如Ansible)广泛支持。

引用说明

  • Linux iproute2 官方文档:https://www.kernel.org/doc/Documentation/networking/iproute2.md
  • IEEE POSIX 标准命令行工具规范(IEEE Std 1003.1-2017)
  • net-tools 项目归档说明:https://sourceforge.net/projects/net-tools/
0