最基本和常用的方法就是使用 ifconfig
命令。这个命令可以显示系统中所有网络接口的详细信息,包括IP地址、子网掩码、MAC地址等。
在终端中运行 ifconfig
命令,你会看到类似如下的输出:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255
ether 00:11:22:33:44:55 txqueuelen 1000 (Ethernet)
RX packets 1234567 bytes 123456789 (117.7 MiB)
TX packets 7654321 bytes 987654321 (941.3 MiB)
interrupt 20 memory 0xf2200000-f2220000
从输出中,我们可以看到 eth0
网络接口的IP地址是 192.168.1.100
。
ifconfig
命令虽然使用非常广泛,但它已经是一个较为老旧的命令。现在更推荐使用 ip
命令,因为它不仅更加强大,而且输出也更加友好和易读。
ip
命令是 Linux 系统中用于配置网络接口的主要工具。它可以代替 ifconfig
命令完成大部分的网络配置任务。
要使用 ip
命令查看网络接口的IP地址,可以运行以下命令:
ip addr show
这个命令会输出系统中所有网络接口的详细信息,包括IP地址、MAC地址、链路状态等。输出示例如下:
1: lo: <LOOPBACK,UP,LOWER_UP> 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
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:11:22:33:44:55 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 3456sec preferred_lft 3456sec
从输出中我们可以看到,eth0
网络接口的IP地址是 192.168.1.100
。
ip
命令提供非常丰富的功能,不仅可以查看IP地址,还可以配置网络接口、路由表、防火墙等。对于系统管理员来说,掌握 ip
命令的使用是非常重要的。
除上述两种方法,我们还可以使用 nmcli
命令来查看网络接口的IP地址。nmcli
是 NetworkManager 命令行工具,它提供一种更加人性化的方式来管理网络连接。
要使用 nmcli
命令查看IP地址,可以运行以下命令:
nmcli device show
这个命令会输出系统中所有网络设备的详细信息,包括设备名称、IP地址、MAC地址等。输出示例如下:
GENERAL.DEVICE: eth0
GENERAL.TYPE: ethernet
GENERAL.HWADDR: 00:11:22:33:44:55
GENERAL.MTU: 1500
GENERAL.STATE: 100 (connected)
GENERAL.CONNECTION: Wired connection 1
GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/1
GENERAL.METERED: yes
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::abcd:ef12:3456:7890/64
IP6.GATEWAY: --
IP6.ROUTE[1]: dst = fe80::/64, nh = ::, mt = 100
从输出中我们可以看到,eth0
网络接口的IP地址是 192.168.1.100
。
nmcli
命令提供更加直观和易读的输出格式,对于不太熟悉Linux网络命令的用户来说,这种方式可能更加友好。
除上述命令行工具,我们还可以直接读取 /proc/net/dev
文件来获取网络接口的IP地址信息。这个文件包含系统中所有网络接口的统计数据,包括接收和发送的数据包数量、字节数等。
我们可以使用 cat
命令来查看 /proc/net/dev
文件的内容:
cat /proc/net/dev
输出示例如下:
Inter-| Receive | Transmit
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
lo: 1234567890 12345 0 0 0 0 0 0 1234567890 12345 0 0 0 0 0 0
eth0: 987654321 54321 0 0 0 0 0 0 987654321 54321 0 0 0 0 0 0
从输出中我们可以看到,eth0
网络接口的统计数据。但这种方法无法直接获取IP地址信息,需要结合其他工具,比如 ifconfig
或 ip
命令,才能完整地获取网络接口的配置信息。
本文介绍4种查看Linux系统网络接口IP地址的方法:使用 ifconfig
命令、 ip
命令、 nmcli
命令以及直接读取 /proc/net/dev
文件。每种方法都有自己的优缺点,系统管理员可以根据实际需求选择合适的方式。掌握这些基本的网络管理命令和技能对于维护和排查Linux系统的网络问题非常重要。