在Linux服务器上查看网卡,最直接的方法是使用ip link或nmcli device status命令,两者都能在几秒内列出所有物理和虚拟网卡及其状态。 如果你需要更详细的硬件信息,配合lspci和ethtool就能把型号、速率、驱动一网打尽,下面按使用频率和场景,把常用命令和判断技巧拆开讲。
linux服务器查看网卡命令有哪些
不同发行版预装工具不一样,但ip命令在主流系统(CentOS、Ubuntu、Debian)中默认可用,以下命令覆盖从“只看名字”到“看速率和丢包”的完整需求。
用ip命令查看网卡名称和状态
ip link show
输出中每个网卡对应一行,比如eth0、ens33、enp3s0。state UP表示网卡已启用并连接,state DOWN表示未启用或网线没插。mtu 1500是当前最大传输单元,虚拟接口常用veth或br0开头。
如果想看IP地址而不是纯链路状态,改用:
ip addr show
这个命令会列出每个网卡绑定的IPv4和IPv6地址,排查“哪个网卡对应哪个IP”时最直观,不用再翻ifconfig -a。
用nmcli命令查看网卡连接信息
如果你的服务器装了NetworkManager(桌面版或部分云镜像默认开启),可以用:
nmcli device status
输出表格里的DEVICE列显示网卡名,TYPE列标出ethernet(物理网卡)或bond(绑定网卡),CONNECTION列显示当前生效的连接配置名。STATE为connected表示正常,unmanaged表示该网卡不受NetworkManager管理。
相比ip,nmcli的好处是直接告诉你“这个卡用的哪个配置”,适合在配过多网卡绑定或VLAN的服务器上快速理清逻辑关系。
查看网卡速率和型号
物理网卡的速率用ethtool查看:
ethtool eth0
重点看Speed字段,比如1000Mb/s代表千兆,10000Mb/s代表万兆。Link detected: yes表示物理链路正常,注意部分云服务器(如AWS的ENA网卡)可能不支持ethtool查看速率,此时改看系统日志或云控制台。
网卡型号用lspci查看:
lspci | grep -i ethernet
输出会包含厂商和芯片型号,比如Intel Corporation I350 Gigabit Network Connection,此命令在虚拟机(如KVM)里可能会显示Red Hat, Inc. Virtio network device,这属于虚拟网卡的正常表现。
怎么区分物理网卡和虚拟网卡
服务器上经常出现一堆奇怪的接口名,比如docker0、veth1234、br-lan,区分它们能帮你避免改错配置。
通过/sys/class/net目录判断
ls -l /sys/class/net/
这个目录下每个子目录就是一个网络接口,看看有没有device符号链接,路径指向PCI设备或USB设备的就是物理网卡。
readlink /sys/class/net/enp3s0/device
如果输出类似../../pci0000:00/0000:00:1c.5/0000:03:00.0,说明enp3s0绑定在PCI总线上,属于物理网卡。docker0或veth没有这种链接,因为它们由内核或软件创建。
使用ethtool查看网卡类型
ethtool -i eth0
输出里的bus-info字段能直接体现物理位置,例如bus-info: 0000:03:00.0代表PCI地址;如果显示bus-info: veth或直接省略,基本就是虚拟接口。driver字段也能辅助判断:igb、ixgbe、e1000e是常见物理网卡驱动,而veth、bridge、tun则是虚拟网络驱动。
linux服务器多网卡绑定怎么查看
生产环境常用多网卡绑定(bonding)提升带宽或做冗余,查看绑定状态需要额外手段,因为普通ip link只会显示一个bond主接口。
查看绑定模式和从属接口
cat /proc/net/bonding/bond0
这个文件能看到绑定模式(Mode: 802.3ad代表动态链路聚合,Mode: active-backup代表主备模式)、主从接口列表、当前活跃接口等关键信息,如果服务器上有多个bond,文件名会依次为bond0、bond1。
查看具体从属网卡的链路状态
cat /sys/class/net/bond0/bonding/slaves
输出逗号分隔的从属接口名,比如eth0,eth1,再配合ethtool eth0看每个从属卡的Speed和Link detected,就能判断是否是某个物理口掉线导致绑定降级。
快速判断绑定接口是否工作正常
ip -d link show bond0
-d参数会显示详细属性,输出中能看到bond关键字及当前模式,如果state UP且bonding属性存在,说明绑定配置已加载,对于配置了802.3ad模式的交换机端口,还需要登录交换机确认LACP协商状态,服务器端无法直接看到对端信息。
查看网卡流量的实用命令
不只是看状态,日常运维还要监控流量和丢包。
ip -s和ifstat都能当轻量工具使用。
ip -s link show eth0
输出包含RX和TX两个方向的总字节数、数据包数以及错误/丢包计数,对比两次采样值可以算出实时速率,但更推荐直接用nload或iftop(需安装)直观查看。
nload eth0
进入界面后上下键切换网卡,左侧进入流量,右侧出方向流量,临时排查带宽跑满时,这个命令比sar更直观。
查询网卡驱动和固件版本
遇到丢包或协商速率异常时,需要确认驱动是否过旧,以下命令组合能给出完整信息:
ethtool -i eth0
输出里的driver、version、firmware-version三个字段很重要,比如driver: i40e代表Intel X710系列网卡驱动,version: 2.4.10是驱动版本,对比发行版仓库中的驱动包版本,能知道是否需要更新,注意部分驱动名字与网卡品牌不一致,例如mlx5_core是Mellanox/NVIDIA网卡驱动,而bnx2x是博通网卡驱动。
不同Linux发行版的命令差异
CentOS 6及更早版本默认没有ip命令且ethtool需自行安装,这时可以用老命令:
ifconfig -a cat /proc/net/dev
CentOS 7+/Ubuntu 18.04+的现代系统已经将iproute2作为基础组件,ifconfig可能未预装,行业内的通用做法是先执行ip link,如果提示找不到命令,再根据系统包管理器安装:
yum install iproute2 # CentOS/RHEL apt install iproute2 # Debian/Ubuntu
如果服务器只有内网IP且未配置外网源,可以直接用cat /proc/net/dev查看名称和流量,但这个文件不含IP和速率信息。
查看网卡归属的NUMA节点
对性能敏感的业务(如数据库、高并发网关),网卡所在NUMA节点会影响中断处理效率,查看方式:
cat /sys/class/net/eth0/device/numa_node
输出0或1表示CPU物理直连的节点,-1代表未知或非物理网卡,配合lscpu确认CPU拓扑,可以把中断绑定到同节点核心,降低跨NUMA访问延迟。
查看网卡历史流量趋势
临时排查用nload,但想回溯过去半小时的流量,需要依赖系统监控工具。sar是 sysstat 包中的经典工具:
sar -n DEV 1 5
每秒采样一次,共采样5次,输出rxkB/s
和txkB/s两列,能直观看到每个网卡的实时吞吐,多数生产环境会通过crontab调用sar -o定时落盘,直接运行/var/log/sa下的历史文件即可回溯。
网卡查看中的常见错误
执行ethtool时提示Operation not supported,通常是虚拟网卡或驱动不支持该操作,此时不要反复尝试,改看/sys/class/net/eth0/device/vendor和device文件来确认硬件ID,修改网卡名(如把ens33改为eth0)会造成配置文件路径失联,不建议手动操作,改用udev规则。
linux服务器查看网卡相关命令整理
| 需求 | 推荐命令 | 关键输出字段 |
|---|---|---|
| 快速列出所有网卡 | ip link show |
state UP/DOWN |
| 查看IP地址绑定关系 | ip addr show |
inet 192.168.x.x |
| 查看网卡速率 | ethtool eth0 |
Speed: 1000Mb/s |
| 查看网卡型号和驱动 | lspci -k |
Kernel driver in use |
| 查看bond绑定状态 | cat /proc/net/bonding/bond0 |
Mode: 802.3ad |
| 查看流量和丢包 | ip -s link show eth0 |
RX errors TX dropped |
| 区分物理/虚拟网卡 | ls -l /sys/class/net/ |
device 符号链接 |
linux服务器查看网卡常见问题解答
为什么ip link看不到某个网卡的IP地址?
ip link只显示链路层状态,不显示IP,使用ip addr show查看网络层信息,如果该接口没有配置IP,ip addr会显示inet6或空白,不代表网卡不可用。
服务器上有四个网口但只识别出两个,怎么排查?
先确认BIOS/固件中网卡是否启用,再用lspci | grep -i ethernet查看系统是否发现所有物理网卡,若硬件可见但系统没有生成对应接口名,检查dmesg | grep eth是否有固件加载错误,以及驱动模块是否被列入blacklist。
多网卡绑定后其中一个物理口link down,会影响业务吗?
取决于绑定模式:active-backup模式下业务自动切换到备用口,一般无感知;3ad模式下如果交换机配置不一致,可能限速或丢包,通过cat /proc/net/bonding/bond0里的Active slave字段确认实际承载流量的网卡,并检查交换机端口聚合配置是否匹配。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/717488.html





