linux查看所有ip命令
linux查看所有ip命令详细介绍
在 Linux 系统中,查看所有 IP 地址的常用命令有以下几种:
1.
ip addr 或
ip a(推荐,新语法)
这是较新的通用网络配置工具 ip 的命令,适用于大多数现代 Linux 发行版(如 Ubuntu、CentOS 7+ 等)。
bash
addr showa
- 输出说明:会显示所有网络接口(包括物理网卡、回环接口、虚拟接口等)的 IP 地址、子网掩码、MAC 地址等信息。
- 示例关键部分:plaintext
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic noprefixroute eth0
valid_lft 86358sec preferred_lft 86358sec
inet后面是 IP 地址和子网掩码(如192.168.1.100/24)。lo是回环接口(本地环回地址,127.0.0.1),eth0等是物理网卡。
2.
ifconfig(经典命令,部分系统需手动安装)
这是传统的网络接口配置工具,在较旧的 Linux 版本或需要兼容旧系统时使用。部分新系统(如 Ubuntu 18.04+)可能默认不安装,需通过 apt install net-tools 安装。
bash
- 输出说明:显示网络接口的 IP 地址、子网掩码、广播地址、MAC 地址等,不显示 IPv6 地址(需加
-a选项显示所有接口,包括未激活的)。 - 示例关键部分:plaintext
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::20c:29ff:fe4d:80b6 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:4d:80:b6 txqueuelen 1000 (Ethernet)
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
3. 查看特定接口的 IP(如仅查看 IPv4)
- 过滤 IPv4 地址(排除回环接口):bash
addr show up - 简洁输出 IP 地址(每行一个):bash
addr
4. 查看 IPv6 地址
如需单独查看 IPv6 地址,可使用:
bash
addr show
总结
- 推荐优先使用
ip addr,因为它是更现代、功能更全面的工具,支持 IPv4/IPv6,且在所有新系统中默认可用。 ifconfig作为传统工具,仍可用于兼容旧环境,但部分新系统可能需要手动安装依赖包(如net-tools)。