
最简单直接的方法就是使用 ifconfig 命令。这是 Linux 中最常用的网络配置工具,可以查看网卡的 IP 地址、子网掩码、MAC 地址等信息。
在终端中输入 ifconfig 命令,会显示系统中所有网卡的详细信息。通常情况下,我们需要关注 inet 项,它就是 IPv4 地址。你的系统同时支持 IPv6,还会显示 inet6 项,这就是 IPv6 地址。
例如,我的系统输出如下:
eth0: flags=4163 mtu 1500
inet 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::215:5dff:fe21:7a05 prefixlen 64 scopeid 0x20
ether 00:15:5d:21:7a:05 txqueuelen 1000 (Ethernet)
RX packets 1234567 bytes 987654321 (939.3 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 987654 bytes 12345678 (11.8 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 12345 bytes 987654 (964.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 12345 bytes 987654 (964.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
从输出中可以看到,我的 IPv4 地址是 192.168.1.100,IPv6 地址是 fe80::215:5dff:fe21:7a05。
ifconfig 命令虽然使用方便,但它已经被 ip 命令取代成为 Linux 中的标准网络配置工具。ip 命令不仅可以查看 IP 地址,还可以管理网络接口、路由、防火墙等更多网络相关的设置。
在终端中输入 ip addr show 命令,就可以查看系统中所有网络接口的 IP 地址信息。
例如,我的系统输出如下:
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/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: eth0: mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:15:5d:21:7a:05 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 86297sec preferred_lft 86297sec
inet6 fe80::215:5dff:fe21:7a05/64 scope link noprefixroute
valid_lft forever preferred_lft forever
从输出中可以看到,我的 IPv4 地址是 192.168.1.100,IPv6 地址是 fe80::215:5dff:fe21:7a05。
你只需要查看 IPv4 地址,还可以使用 hostname 命令。这个命令可以显示主机名,并且如果主机名与 IP 地址绑定,也会一并显示 IP 地址。
在终端中输入 hostname -I 命令,就可以直接查看 IPv4 地址。
例如,我的系统输出如下:
192.168.1.100
可以看到,输出就是我的 IPv4 地址 192.168.1.100。
你使用的是 NetworkManager 管理网络连接,可以使用 nmcli 命令查看 IP 地址。nmcli 是 NetworkManager 的命令行工具,它可以提供比 ifconfig 和 ip 更丰富的网络信息。
在终端中输入 nmcli device show 命令,就可以查看所有网络设备的详细信息,包括 IP 地址。
例如,我的系统输出如下:
GENERAL.DEVICE: eth0
GENERAL.TYPE: ethernet
GENERAL.HWADDR: 00:15:5D:21:7A:05
GENERAL.MTU: 1500
GENERAL.STATE: 100 (connected)
GENERAL.CONNECTION: Wired connection 1
GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/1
GENERAL.METERED: no
WIRED-PROPERTIES.CARRIER: on
IP4.ADDRESS[1]: 192.168.1.100/24
IP4.GATEWAY: 192.168.1.1
IP4.ROUTE[1]: dst = 0.0.0.0/0, nh = 192.168.1.1, mt = 100
IP4.ROUTE[2]: dst = 192.168.1.0/24, nh = 0.0.0.0, mt = 100
IP6.ADDRESS[1]: fe80::215:5dff:fe21:7a05/64
IP6.GATEWAY:
IP6.ROUTE[1]: dst = fe80::/64, nh = ::, mt = 256, table=255
从输出中可以看到,我的 IPv4 地址是 192.168.1.100,IPv6 地址是 fe80::215:5dff:fe21:7a05。
在 Linux 终端中,共有四种常用的方法来查看 IP 地址:使用 ifconfig 命令、ip addr show 命令、hostname -I 命令,以及使用 nmcli 命令。每种方法都有自己的优缺点,根据需求和偏好可以选择合适的方式。无论采用哪种方法,掌握查看 IP 地址的技能都是非常重要的,它可以帮助我们更好地了解和管理网络环境。