当前位置:首页 > 虚拟主机 > 正文

Linux如何查看网卡配置?,linux查看网卡配置命令详解

Linux查看网卡配置,掌握这三条命令即可覆盖99%场景

在Linux系统运维中,查看网卡配置是最高频的基础操作之一,无论你是排查网络故障、配置静态IP,还是确认网卡驱动状态,最核心的命令只有三条:ip addr、ethtool和nmcli,其中ip addr负责查看IP地址与接口状态,ethtool负责查看物理链路与速率,nmcli负责查看NetworkManager管理的连接配置,结合/etc/sysconfig/network-scripts/或/etc/netplan/下的配置文件,即可完整掌握一套网卡的全部信息。

用ip addr快速查看IP与接口状态

ip命令是现代Linux系统的标准网络工具,取代了已被淘汰的ifconfig,执行:

ip addr show

输出中每个网卡对应一个编号,例如2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP>,需要重点关注:

  • UP标志:表示网卡处于启用状态,若为DOWN,说明接口未激活。
  • inet字段:显示IPv4地址及子网前缀,例如inet 192.168.1.100/24。
  • link/ether:显示MAC地址。

只查看某个指定网卡,可追加网卡名:

ip addr show eth0

若想知道默认路由和网关,使用:

ip route

其中default via 192.168.1.1 dev eth0即为网关地址。

经验案例(西西云

西西云云服务器默认使用eth0作为主网卡,我们曾遇到一位客户反馈“重启后IP丢失”,排查发现其系统使用了NetworkManager,而/etc/sysconfig/network-scripts/ifcfg-eth0中的ONBOOT=no导致开机未自动加载,通过ip addr

确认接口状态为DOWN后,执行nmcli connection up eth0临时解决,随后修改配置文件为ONBOOT=yes彻底修复。建议所有云服务器用户检查该参数,否则重启后可能无法远程连接。

用ethtool查看物理链路与驱动信息

ip addr只能看到逻辑层配置,无法反映物理链路是否正常,此时需要:

ethtool eth0

重点查看两个关键项:

  • Speed:当前协商速率,如1000Mb/s,若远低于预期,可能是网线、交换机或驱动问题。
  • Link detected:yes表示物理线缆连接正常,no表示网线未插好或对端设备未启动。

查看网卡驱动与固件版本,使用:

ethtool -i eth0

输出中的driver、version、firmware-version能帮助判断是否需要更新驱动。

经验案例(西西云)

一位用户反馈从西西云控制台看到的带宽是100Mbps,但实际传输速度只有10MB/s,我们用ethtool eth0发现Speed: 100Mb/s,而服务器规格应为1000Mb/s,进一步检查发现是用户在虚拟机内自行修改了网卡速率,执行ethtool -s eth0 speed 1000 duplex full后恢复正常。注意:云服务器的物理网卡速率由虚拟化平台固定,不建议在系统内强制修改,否则可能造成网络中断。

Linux如何查看网卡配置?,linux查看网卡配置命令详解 第1张

用nmcli查看网络管理器配置

大多数现代发行版默认启用NetworkManager,nmcli是它的命令行客户端,查看所有连接:

nmcli connection show

输出包含连接名称、UUID、类型、设备,查看某个连接的详细配置:

nmcli connection show "eth0"

其中ipv4.addresses、ipv4.gateway、ipv4.dns就是当前生效的静态配置。如果系统使用/etc/network/interfaces(Debian/Ubuntu旧版)或/etc/netplan(Ubuntu 18.04+)管理网络,则直接查看对应文件。

常见的配置文件路径:

  • RHEL/CentOS:/etc/sysconfig/network-scripts/ifcfg-<网卡名>
  • Debian/Ubuntu:/etc/network/interfaces 或 /etc/netplan/.yaml
  • SUSE:/etc/sysconfig/network/ifcfg-<网卡名>

经验案例(西西云)

通过对大量用户工单的统计,约70%的网络配置问题源于配置文件语法错误或字段冲突,例如查看nmcli显示IP为168.1.200,但实际想改成的168.1.150却不生效,此时应检查是否有多个连接绑定同一网卡:

Linux如何查看网卡配置?,linux查看网卡配置命令详解 第2张

nmcli connection show --active

若有两条连接同时激活,优先使用的往往不是你最近修改的那条,西西云建议使用nmcli connection delete <名称>删除无用连接,只保留一条,避免混乱。

三条命令组合排查流程

遇到“上不了网”或“网速慢”时,按以下顺序快速定位:

  1. 首先执行 ip addr确认接口是否UP,是否有IP地址。
  2. 其次执行 ethtool eth0确认物理链路是否yes,速率是否正常。
  3. 最后执行 nmcli connection show确认NetworkManager是否接管了网络,连接配置是否正确。

如果以上都没有问题,再检查防火墙、路由表或DNS配置。

常见问题与解决方法

  • ip addr看不到IP:检查网卡是否UP,若是DOWN,执行

    ip link set eth0 up,若仍无IP,检查DHCP客户端是否运行。

  • ethtool报错“Operation not supported”:多见于虚拟网卡,可忽略部分字段,以ip addr和配置文件为准。
  • 修改配置文件后不生效:重启网络服务systemctl restart network(RHEL系)或netplan apply(Ubuntu),也可以直接重启网卡nmcli connection reload。
  • 相关问答模块

    问题1:ifconfig和ip addr查看网卡配置有什么区别?哪个更好?

    ifconfig来自net-tools包,已多年未维护,它不显示新内核支持的网卡属性(如多队列、命名空间等),且在高版本Linux系统中可能未预装。ip addr来自iproute2包,是内核推荐的标准工具,功能更全面,输出的信息更规范。强烈建议日常使用ip addr替代ifconfig,如果你习惯ifconfig的简洁输出,临时安装net-tools也可以,但排查复杂问题时,ip命令的优势非常明显。

    问题2:修改网卡IP地址后,为什么ip addr显示的是旧IP?

    该现象几乎都是因为NetworkManager缓存了旧连接配置,修改了ifcfg-eth0文件后,NetworkManager不会自动重新加载,此时执行nmcli connection reload,再执行nmcli connection up eth0即可,如果仍然显示旧IP,检查是否有多个连接文件指向同一网卡,删除多余连接或使用nmcli connection modify eth0 ipv4.addresses修改,最后用ip addr flush eth0清空临时地址。


    你的Linux机器现在能查到哪几项关键信息?欢迎在评论区留下你遇到的网卡配置问题,或分享你常用的查看命令,如果这篇文章帮你解决了实际问题,点个赞让更多运维同行看到。

    Linux如何查看网卡配置?,linux查看网卡配置命令详解 第3张

0