Linux如何查看系统中所有网卡的信息?

在Linux系统中,网卡(网络接口卡)是设备与外部网络通信的核心组件,无论是排查网络问题、配置网络服务,还是监控系统状态,准确查看所有网卡信息都是基础操作,Linux提供了多种命令和工具来查看网卡信息,涵盖从基础接口名称、IP地址到硬件属性、驱动状态等不同维度,本文将详细介绍这些方法,并通过实例解析输出结果,帮助用户全面掌握Linux网卡查看技巧。

linux如何查看所有的网卡

基础查看命令:快速获取网卡列表与基本信息

ip命令:现代Linux系统的首选工具

ip命令是iproute2包的一部分,功能强大且全面,逐渐取代了传统的ifconfig命令,通过ip命令可以查看网卡的接口名称、状态、MAC地址、IP地址等信息。

  • 查看所有网卡接口
    执行以下命令:

    ip addr show

    或简写为:

    ip a
  • 输出解析
    命令输出会列出所有网卡接口,每个接口包含以下关键信息:

    • 接口名:如eth0ens33lo(回环接口)等,命名规则与系统内核版本和硬件检测相关(传统命名如eth0wlan0,基于硬件的命名如ens33)。
    • 状态标志UP(接口已启用)、DOWN(接口未启用)、BROADCAST(支持广播)、MULTICAST(支持多播)等。
    • MAC地址link/ether后跟的6组16进制数,如00:0c:29:1a:2b:3c,是网卡的物理地址。
    • IP地址inet后跟IPv4地址及子网掩码(如168.1.100/24),inet6后跟IPv6地址。
    • 统计信息RX(接收)和TX(发送)的数据包数、字节数、错误数等。

    示例输出

    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 fq_codel state UP group default qlen 1000
        link/ether 00:0c:29:1a:2b:3c 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::20c:29ff:fe1a:2b3c/64 scope link
           valid_lft forever preferred_lft forever
    3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
        link/ether 02:42:8a:7e:3d:5f brd ff:ff:ff:ff:ff:ff
        inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
           valid_lft forever preferred_lft forever

    eth0是物理网卡,docker0是Docker虚拟网卡,lo是回环接口。

ifconfig命令:传统工具(需安装)

ifconfignet-tools包中的工具,在早期Linux系统中广泛使用,但新发行版(如Ubuntu 20.04+、CentOS 8+)默认未安装,需通过sudo apt install net-tools(Ubuntu)或sudo yum install net-tools(CentOS)安装。

  • 查看所有网卡

    ifconfig -a

    参数-a会显示所有网卡(包括未激活的),不加参数仅显示已激活的网卡。

  • 输出解析
    输出结构与ip命令类似,包含接口名、状态(RUNNING表示已激活)、HWaddr(MAC地址)、inet addr(IPv4地址)、Bcast(广播地址)、Mask(子网掩码)等。

    示例输出

    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:0c:29:1a:2b:3c  txqueuelen 1000  (Ethernet)
          RX packets 12345  bytes 1234567 (1.1 MiB)
          RX errors 0  dropped 0  overruns 0  frame 0
          TX packets 6789  bytes 987654 (964.5 KiB)
          TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

硬件信息查看:识别网卡物理属性与驱动状态

lspci命令:查看PCI网卡硬件信息

lspcipciutils包)用于列出PCI设备,可通过过滤网卡硬件信息(如网卡芯片、厂商ID等)。

  • 安装与使用
    若未安装,执行sudo apt install pciutils(Ubuntu)或sudo yum install pciutils(CentOS)。

    linux如何查看所有的网卡

  • 查看PCI网卡

    lspci -nn | grep -i ethernet

    参数-nn显示数字ID(便于查询),grep -i ethernet过滤以太网卡。

  • 输出解析
    输出包含网卡在PCI总线上的位置、厂商ID、设备ID及名称,

    04:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)

    可通过lspci -k查看驱动信息:

    lspci -k -s 04:00.0

    输出:

    04:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
        Subsystem: Dell I210 Gigabit Network Connection
        Kernel driver in use: igb
        Kernel modules: igb

lsusb命令:查看USB网卡硬件信息

对于USB接口的网卡(如无线网卡、USB转以太网适配器),使用lsusbusbutils包)查看硬件信息。

  • 安装与使用
    未安装时执行sudo apt install usbutilssudo yum install usbutils

  • 查看USB网卡

    lsusb | grep -i network

    输出示例:

    Bus 001 Device 005: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter

ethtool命令:查看网卡详细状态与配置

ethtoolethtool包)可获取网卡的速率、双工模式、驱动版本、流控等详细信息,需root权限运行。

  • 查看网卡驱动与版本

    sudo ethtool -i eth0

    输出:

    driver: igb
    version: 5.4.0-91-generic
    firmware-version: 0.17-1
    expansion-rom-version: 
    bus-info: 04:00.0
    supports-statistics: yes
    supports-test: yes
    supports-eeprom-access: yes
    supports-register-dump: yes
    supports-priv-flags: yes
  • 查看网卡速率与双工模式

    linux如何查看所有的网卡

    sudo ethtool eth0

    输出:

    Settings for eth0:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Full
        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Full

网络管理工具:结合系统服务查看网卡信息

nmcli命令:NetworkManager的CLI工具

在安装了NetworkManager的系统(如Ubuntu桌面版、CentOS 7+)中,nmcli可查看网卡连接状态、IP配置、DNS等信息。

  • 查看所有网卡状态

    nmcli device status

    输出:

    DEVICE  TYPE      STATE      CONNECTION
    eth0    ethernet  connected  eth0
    docker0 bridge    unmanaged  --
    lo      loopback  unmanaged  --
  • 查看网卡详细信息

    nmcli device show eth0

    输出包含MAC地址、IP地址、网关、DNS等完整配置。

netstatss命令:查看网络连接与接口统计

netstatnet-tools包)和ssiproute2包)可用于查看网卡的连接状态和数据统计。

  • 查看所有接口统计信息
    netstat -i

    或使用ss(推荐,性能更好):

    ss -i

    输出包含接口名、MTU、接收/发送数据包数、错误数等。

常用网卡查看命令对比

命令 主要用途 常用参数 输出关键信息 适用场景
ip addr 查看网卡IP、MAC、状态 showbriefdetails 接口名、状态、MAC、IPv4/IPv6地址 日常查看、故障排查
ifconfig 传统网卡查看(需安装) -a(显示所有)、up/down 接口名、IPv4、MAC、统计信息 兼容旧系统
lspci 查看PCI网卡硬件信息 -nn(显示数字ID)、-k(驱动) 厂商、设备名、驱动、PCI地址 硬件识别、驱动排查
lsusb 查看USB网卡硬件信息 -v(详细信息) 厂商、设备ID、USB接口 USB网卡硬件识别
ethtool 查看网卡速率、双工、驱动 -i(驱动)、-s(设置) 驱动版本、速率、流控、固件版本 网卡性能优化、硬件状态检查
nmcli NetworkManager管理下的网卡 device statusconnection show 连接状态、IP配置、DNS 图形化网络管理系统的命令行操作

相关问答FAQs

问题1:为什么使用ip addr命令查看不到某些网卡?

解答:可能的原因有以下几种:

  1. 网卡未启用:物理网卡可能因驱动未加载或硬件故障处于DOWN状态,可通过ip link set <网卡名> up手动启用(需确认驱动正常)。
  2. 驱动未加载:使用lsmod | grep <驱动名>检查驱动是否加载,若未加载需执行sudo modprobe <驱动名>(如modprobe e1000e)。
  3. 硬件故障:通过dmesg | grep -i ethernet查看内核日志,若提示“device not found”或“timeout”,可能是硬件接触不良或损坏。
  4. 虚拟网卡未创建:虚拟网卡(如Docker的veth、KVM的tap)需在对应服务启动后才会创建,可检查服务状态(如systemctl status docker)。

问题2:如何区分物理网卡和虚拟网卡?

解答:可通过以下方法区分:

  1. 命名规则:物理网卡传统命名以eth开头(如eth0),新系统可能基于硬件信息命名(如ens33);虚拟网卡命名通常带有特定前缀,如docker0(Docker网桥)、veth(Docker容器间虚拟接口)、virbr0(Libvirt虚拟网络)、tap(KVM虚拟机网卡)。
  2. 硬件信息:物理网卡可通过lspcilsusb查到对应硬件条目,虚拟网卡无PCI/USB设备信息。
  3. 驱动类型:物理网卡驱动为硬件驱动(如e1000eigb),虚拟网卡驱动通常为tapvethbridge等虚拟化驱动。
  4. 接口状态:虚拟网卡可能显示为NO-CARRIER(无物理连接),如docker0在无容器运行时通常为DOWN状态。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/31454.html

(0)
酷番叔酷番叔
上一篇 2025年9月27日 23:04
下一篇 2025年9月27日 23:18

相关推荐

  • 如何让你的网站流量暴涨?

    在Linux系统中,将PDF文件转换为EPS(Encapsulated PostScript)格式是科研出版、学术论文提交或高质量印刷中的常见需求,以下是三种经过验证的可靠方法,均基于开源工具,确保转换质量并保留矢量信息:Ghostscript是处理PostScript和PDF的专业工具,支持直接转换且保留矢量……

    2025年7月20日
    4400
  • cdlinux如何访问硬盘?分区识别与数据读取方法是什么?

    CDLinux是一款轻量级的Linux发行版,通常用于系统维护、数据恢复、磁盘操作等场景,因其体积小、启动快且自带常用工具,成为许多用户处理硬盘问题的首选,在CDLinux环境下访问硬盘是基础操作,但涉及硬盘识别、分区挂载、文件系统兼容性等多个环节,需结合具体步骤和工具进行操作,以下从启动准备、硬盘识别、分区挂……

    2025年8月25日
    3700
  • 如何将本地文件移入虚拟机Linux系统?

    在虚拟化环境中,将本地文件传输到Linux虚拟机是日常开发、运维或学习中的常见需求,根据虚拟机软件类型(如VMware、VirtualBox)、文件大小及使用场景(图形界面/命令行),可选择不同的传输方法,本文将详细介绍几种主流操作方式,涵盖准备工作、具体步骤及注意事项,帮助用户高效完成文件传输,使用共享文件夹……

    2025年8月29日
    2900
  • Linux回收站如何彻底清空?

    在Linux系统中,回收站(Trash)机制为用户提供了误删文件的恢复途径,但随着使用时间增长,回收站中的文件会占用大量磁盘空间,定期清空是必要的维护操作,不同Linux桌面环境(如GNOME、KDE、XFCE等)的回收站实现方式略有差异,但核心逻辑相似:回收站本质是一个隐藏目录,被删除的文件会先移动至此,清空……

    2025年9月17日
    2600
  • 电脑休眠挂起总变慢?

    通过系统设置(图形界面)适用于带桌面环境的用户(如GNOME、KDE):GNOME桌面打开 Settings → Power将 Blank Screen 设为 Never关闭 Automatic Suspend在 Privacy → Screen Lock 中禁用锁屏,KDE Plasma打开 System S……

    2025年7月27日
    3800

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信