在管理和维护 CentOS 服务器的过程中,查看和了解系统网卡的状态是网络配置和故障排查的基础,无论是检查 IP 地址、MAC 地址,还是确认网卡的连接状态,掌握正确的命令都至关重要,本文将详细介绍在 CentOS 系统中查看网卡信息的几种常用且高效的方法,涵盖了从现代标准命令到传统工具,再到图形化界面的命令行工具,帮助您全面掌握系统网络状况。

使用 ip 命令:现代标准方法
ip 命令是 iproute2 软件包的一部分,已成为现代 Linux 发行版(包括 CentOS 7 及更高版本)中查看和管理网络信息的首选工具,它功能强大,输出信息清晰。
最常用的组合是 ip addr 或其简写 ip a,用于显示所有网络接口的详细信息。
ip addr
其输出信息通常如下所示:
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
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:1a:2b:3c:4d:5e brd ff:ff:ff:ff:ff:ff
inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::21a:2bff:fe3c:4d5e/64 scope link
valid_lft forever preferred_lft forever 输出信息解读:
1: lo:和2: eth0::接口编号和名称。lo是本地回环接口,eth0是第一个以太网接口(在较新的系统中可能命名为ens33等)。<BROADCAST,MULTICAST,UP,LOWER_UP>:接口标志。UP表示接口已启用。state UP:接口的运行状态。link/ether 00:1a:2b:3c:4d:5e:网卡的 MAC 地址。inet 192.168.1.100/24:接口的 IPv4 地址和子网掩码。inet6 fe80::...:接口的 IPv6 地址。
使用 ifconfig 命令:传统方法
ifconfig 是一个经典的网络配置工具,来源于 net-tools 软件包,虽然功能强大且被许多老用户熟知,但在 CentOS 7 及以后的版本中,它已不再是默认安装的工具,并逐渐被 ip 命令取代。
如果您的系统没有安装 ifconfig,可以使用以下命令安装:
sudo yum install net-tools
安装后,直接运行 ifconfig 即可查看所有已启用接口的信息:

ifconfig
其输出格式与 ip addr 有所不同,但核心信息如 IP 地址、MAC 地址、网络流量统计等都可以找到,对于习惯此命令的用户来说,它仍然是一个快速查看的有效选项。
使用 nmcli 命令:NetworkManager 工具
nmcli(NetworkManager Command-Line Interface)是 NetworkManager 的命令行界面,特别适用于使用 NetworkManager 服务来管理网络的现代 CentOS 桌面和服务器环境,它不仅可以查看信息,还能直接修改网络配置。
要查看所有网络设备的状态,可以使用:
nmcli device status
该命令会以一个非常整洁的表格形式输出,列出了设备名称、类型、状态和连接信息。
| DEVICE | TYPE | STATE | CONNECTION |
|---|---|---|---|
| eth0 | ethernet | connected | Wired connection 1 |
| lo | loopback | unmanaged |
这个表格让你对系统中的网络设备概况一目了然,若要查看某个特定设备(如 eth0)的详细信息,可以使用:
nmcli device show eth0
这将输出包括 IP 地址、DNS 服务器、网关、硬件地址(MAC)等在内的详尽配置信息。
检查系统文件:底层方法
Linux 内核将网络硬件信息暴露在 /sys 虚拟文件系统中,你可以直接查看这些文件来获取最原始的信息。

要列出所有网络接口的名称:
ls /sys/class/net/
输出可能为 eth0 lo,要查看 eth0 网卡的 MAC 地址,可以直接读取其 address 文件:
cat /sys/class/net/eth0/address
这种方法虽然不如命令行工具直观,但在编写自动化脚本或需要底层信息时非常有用。
相关问答FAQs
解答: 从 CentOS 7 开始,系统默认使用 iproute2 软件包中的 ip 命令来替代 net-tools 软件包中的 ifconfig 等命令,这是因为 ip 命令功能更强大,能更好地支持现代网络功能(如策略路由、网络命名空间等),如果您仍然习惯使用 ifconfig,可以通过 sudo yum install net-tools 命令手动安装该软件包,但推荐学习和使用 ip 命令,以适应未来的发展趋势。
解答: 可以使用 ethtool 工具的 -p 选项来定位物理网卡,使用 ip a 或 nmcli 确定您的网卡名称(eth0),执行以下命令:sudo ethtool -p eth0
执行后,对应的物理网卡上的活动指示灯(LED)会持续闪烁一段时间(通常是 10-15 秒),这样您就可以在机柜中准确地找到这块网卡,这对于在有多块网卡的服务器上进行物理排查非常有帮助。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复