简介
在这个实验中,你将学习如何检查 Linux 系统上网络接口的状态。网络接口对于网络连接至关重要,了解它们的状态对于故障排除和配置来说必不可少。
通过实践练习,你将使用像 ip
、ifconfig
和 nmcli
这样强大的命令行工具来检查接口详细信息、验证其运行状态,并深入了解其配置。在这个实验结束时,你将能够熟练判断一个网络接口是否处于活动状态并准备好进行通信。
在这个实验中,你将学习如何检查 Linux 系统上网络接口的状态。网络接口对于网络连接至关重要,了解它们的状态对于故障排除和配置来说必不可少。
通过实践练习,你将使用像 ip
、ifconfig
和 nmcli
这样强大的命令行工具来检查接口详细信息、验证其运行状态,并深入了解其配置。在这个实验结束时,你将能够熟练判断一个网络接口是否处于活动状态并准备好进行通信。
ip link show
检查接口状态在这一步中,你将学习如何使用 ip link show
命令检查 Linux 系统上网络接口的状态。网络接口是你的计算机连接到网络(如 Wi-Fi 或以太网)的接入点。
ip
命令是 Linux 中用于网络配置的强大工具。link
子命令用于管理网络设备,而 show
则用于显示有关它们的信息。
如果你还没有打开终端,请打开它。你可以通过点击桌面左侧的 Xfce Terminal 图标来完成此操作。
现在,在终端中输入以下命令并按回车键:
ip link show
你将看到类似如下的输出:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff
让我们来详细分析一下输出内容:
1: lo:
:这是回环接口。它是计算机用于与自身通信的虚拟接口。它始终处于“开启”和运行状态。2: eth0:
:这可能是你的主要网络接口,通常代表以太网连接。<BROADCAST,MULTICAST,UP,LOWER_UP>
:这些是表示接口功能和当前状态的标志。UP
和 LOWER_UP
表示该接口处于活动状态,并且可以发送和接收数据。mtu 1500
:最大传输单元(Maximum Transmission Unit),即无需分段即可发送的最大数据包大小。qdisc mq
:队列规则(Queueing discipline),用于管理数据包的发送方式。state UP
:接口的当前运行状态。mode DEFAULT
:操作模式。group default
:接口所属的组。qlen 1000
:传输队列长度。link/ether 02:42:ac:11:00:02
:接口的 MAC 地址。ip link show
命令是快速检查网络接口状态和基本信息的基础工具。
点击 Continue 进入下一步。
ifconfig
输出验证接口在这一步中,你将使用 ifconfig
命令查看网络接口信息。虽然 ip
是现代标准,但 ifconfig
仍然很常用,它能提供与网络接口相关的类似详细信息。
ifconfig
命令用于配置或查看网络接口的配置。当不带任何参数使用时,它会显示所有活动网络接口的状态。
在终端中输入以下命令并按回车键:
ifconfig
你将看到类似如下的输出:
eth0: flags=... mtu 1500
inet 172.17.0.2 netmask 255.255.0.0 broadcast 172.17.255.255
ether 02:42:ac:11:00:02 txqueuelen 1000 (Ethernet)
RX packets ... bytes ...
RX errors ... dropped ... overruns ... frame ...
TX packets ... bytes ...
TX errors ... dropped ... overruns ... carrier ... collisions ...
lo: flags=... mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1000 (Local Loopback)
RX packets ... bytes ...
RX errors ... dropped ... overruns ... frame ...
TX packets ... bytes ...
TX errors ... dropped ... overruns ... carrier ... collisions ...
让我们来看看 ifconfig
提供的关键信息:
eth0:
和 lo:
:网络接口的名称。flags=...
:与 ip link show
中的标志类似,用于指示接口的状态和功能。inet 172.17.0.2
:分配给该接口的 IPv4 地址。netmask 255.255.0.0
:网络掩码,用于确定 IP 地址的网络部分和主机部分。broadcast 172.17.255.255
:网络的广播地址。ether 02:42:ac:11:00:02
:接口的 MAC 地址。RX packets ... bytes ...
:有关接收数据包和字节数的统计信息。TX packets ... bytes ...
:有关传输数据包和字节数的统计信息。对比 ifconfig
和 ip link show
,你会发现它们提供的信息类似,但格式不同。ifconfig
通常更适合快速查看 IP 地址和网络掩码,而 ip
在各种网络配置方面更具通用性。
练习使用这两个命令,熟悉它们的输出。
点击 Continue 进入下一步。
nmcli
检查接口详细信息在这一步中,你将使用 nmcli
命令来查看网络接口的详细信息。nmcli
是一个用于控制 NetworkManager 的命令行工具,NetworkManager 是许多 Linux 系统中管理网络连接的服务。与 ip
或 ifconfig
相比,在某些任务中,它提供了一种更用户友好的方式来与网络设置进行交互。
要使用 nmcli
查看网络设备的摘要信息,请输入以下命令并按回车键:
nmcli device status
你将看到类似如下的输出:
DEVICE TYPE STATE CONNECTION
eth0 ethernet connected Wired connection 1
lo loopback unmanaged --
此输出显示了设备名称 (DEVICE
)、设备类型 (TYPE
)、当前状态 (STATE
) 以及活动连接 (CONNECTION
)。
要获取特定接口的更详细信息,你可以使用 nmcli device show
命令,后面跟上接口名称。让我们来查看 eth0
的详细信息。
输入以下命令并按回车键:
nmcli device show eth0
你将看到大量输出,其中提供了关于 eth0
接口的详细信息,包括其硬件地址、IP 地址、DNS 服务器等。输出大致如下(为简洁起见,部分内容省略):
GENERAL.DEVICE: eth0
GENERAL.TYPE: ethernet
GENERAL.HWADDR: 02:42:AC:11:00:02
GENERAL.STATE: 100 (managed)
GENERAL.CONNECTION: Wired connection 1
GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/1
WIRED-PROPERTIES.CARRIER: on
IP4.ADDRESS[1]: 172.17.0.2/16
IP4.GATEWAY: 172.17.0.1
IP4.ROUTE[1]: dst = 172.17.0.0/16, nh = 0.0.0.0, mt = 100
IP4.DNS[1]: ...
IP6.ADDRESS[1]: ...
IP6.GATEWAY: ...
nmcli
对于编写网络配置脚本特别有用,并且对于那些更喜欢比 ifconfig
更结构化输出的用户来说也很适用。
你现在已经学习了三种不同的命令(ip link show
、ifconfig
和 nmcli
)来检查 Linux 中的网络接口。每个命令都提供了类似的信息,但详细程度和格式有所不同。
点击 Continue 完成此实验。
在本次实验中,你学习了如何使用各种命令行工具来检查 Linux 中网络接口的状态。你首先了解了 ip link show
命令,这是一个用于显示网络设备详细信息的强大工具,包括设备的状态(开启或关闭)和功能。该命令能全面概述所有可用的接口,例如回环接口 (lo
) 和你的主网络接口(如 eth0
)。
通过查看 ip link show
的输出,你可以识别像 UP
和 LOWER_UP
这样的关键标志,以确认某个接口是否处于活动状态并可用于通信。这第一步为你提供了对系统链路层网络连接的基本理解。