linux命令获取ip
linux命令获取ip详细介绍
在 Linux 系统中,获取 IP 地址的常用命令如下:
1.
ip addr(推荐,现代 Linux 标准命令)
该命令用于显示网络接口的详细信息,包括 IP 地址、子网掩码、MAC 地址等。
用法:
bash
addr
输出示例(以以太网接口 enp0s3 为例):
plaintext
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 08:00:27:4f:5a:8c brd ff:ff:ff:ff:ff:ff
inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s3
valid_lft 86351sec preferred_lft 86351sec
inet6 fe80::a00:27ff:fe4f:5a8c/64 scope link
valid_lft forever preferred_lft forever
- 其中
inet后的192.168.1.100即为 IPv4 地址(排除127.0.0.1回环地址)。
2.
ifconfig(传统命令,需安装
net-tools 包)
经典网络配置工具,部分 Linux 发行版(如 Ubuntu 20.04+)默认不安装,需手动安装:
bash
net-tools
用法:
bash
输出示例:
plaintext
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::a00:27ff:fe4f:5a8c prefixlen 64 scopeid 0x20<link>
ether 08:00:27:4f:5a:8c txqueuelen 1000 (Ethernet)
RX packets 1234 bytes 123456 (123.4 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 5678 bytes 789012 (789.0 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
inet后的192.168.1.100即为 IPv4 地址(排除127.0.0.1回环地址)。
3.
hostname -I(快速获取所有活动 IP 地址)
最简单的命令,直接列出所有非回环接口的 IP 地址,以空格分隔。
用法:
bash
输出示例:
plaintext
192.168.1.100 10.0.0.5
- 适用于快速查看,无需关注详细接口信息。
4. 特定接口的 IP(如查看
enp0s3 的 IP)
结合 grep 过滤指定接口:
bash
addr show dev enp0s3
输出:
plaintext
inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s3
总结:
- 推荐新手使用
hostname -I,简洁快速。 - 查看详细信息用
ip addr,现代 Linux 通用。 - 传统环境兼容用
ifconfig(需先安装net-tools)。