Linux如何查看网卡信息?

Linux系统中,查看网卡信息是网络配置和故障排查的基础操作,无论是日常运维还是系统管理,掌握多种查看网卡的方法都能帮助我们快速定位问题,本文将详细介绍通过命令行工具、图形界面、配置文件等多种方式查看Linux网卡信息,并解释关键输出含义,最后附上常见问题解答。

如何查看linux的网卡

命令行工具查看网卡信息

命令行是Linux环境下最常用的操作方式,通过不同命令可以获取网卡的详细状态、配置信息及硬件参数,以下是几种核心命令的使用方法及输出解读。

使用ip命令(推荐,现代Linux系统默认)

ip命令是iproute2工具包的一部分,功能强大且全面,用于查看和管理网络接口、路由、策略路由等,查看网卡信息常用以下子命令:

  • 查看所有网卡接口及其状态
    执行ip addrip a,会显示系统中所有网络接口的详细信息,包括接口名称(如eth0lo)、MAC地址、IP地址(IPv4/IPv6)、子网掩码、接口状态(UP/DOWN)等。

    ip addr

    输出示例:

    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UP 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:1c:23:45:67:89 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::21c:23ff:fe45:6789/64 scope link 
           valid_lft forever preferred_lft forever

    关键字段解读:

    • 1: lo:接口编号和名称(lo为回环接口,eth0为以太网网卡)。
    • <BROADCAST,MULTICAST,UP,LOWER_UP>:接口状态,UP表示已启用,BROADCAST支持广播,MULTICAST支持多播,LOWER_UP表示物理链路正常。
    • link/ether:网卡的MAC地址。
    • inet:IPv4地址及子网掩码(/24表示255.255.255.0)。
    • inet6:IPv6地址及前缀长度。
  • 查看网卡流量统计
    使用ip -s link可查看网卡的接收(RX)和发送(TX)字节数、包数、错误数等统计信息,用于排查网络流量异常或丢包问题。

    ip -s link show eth0

使用ifconfig命令(传统工具,部分系统需安装)

ifconfignet-tools工具包中的命令,在早期Linux系统中广泛使用,但逐渐被ip命令取代,若系统中未安装,可通过sudo apt install net-tools(Ubuntu/Debian)或sudo yum install net-tools(CentOS/RHEL)安装。

  • 查看所有网卡接口
    ifconfig

    输出示例与ip addr类似,但格式略有不同,

    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:1c:23:45:67:89  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

    关键字段:flags为接口标志位,inet为IPv4地址,ether为MAC地址,RX/TX packets为收发包数。

使用lspcilsusb查看网卡硬件信息

若需了解网卡的硬件型号(如厂商、设备型号),可通过lspci(PCI设备)或lsusb(USB网卡)命令查看。

  • 查看PCI网卡(如集成网卡或PCIe扩展网卡)

    如何查看linux的网卡

    lspci | grep -i ethernet

    输出示例:

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

    可通过lspci -v -s 03:00.0查看更详细的硬件信息和驱动加载情况。

  • 查看USB网卡

    lsusb | grep -i ethernet

    输出示例:

    Bus 001 Device 005: ID 0bda:8153 Realtek Semiconductor Corp. RTL8153 Gigabit Ethernet Adapter

使用ethtool查看网卡详细参数

ethtool用于查看和修改网卡链路状态、速率、双工模式、自动协商等参数,需先安装(sudo apt install ethtoolsudo yum install ethtool)。

  • 查看网卡速率和双工模式
    ethtool eth0

    输出示例:

    Settings for eth0:
        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
    Advertised pause frame use: No
    Advertised auto-negotiation: Yes
    Link partner:   Not negotiated
    Speed: 1000Mb/s   Duplex: Full   Port: Twisted Pair

    关键信息:Speed为当前链路速率(如1000Mb/s),Duplex为双工模式(Full为全双工),Link partner为对端协商状态。

使用nmcli查看NetworkManager管理的网卡

在Ubuntu、CentOS等现代发行版中,NetworkManager是默认的网络管理工具,nmcli是其命令行接口,可查看和管理网络连接。

  • 查看所有网络连接
    nmcli connection show
  • 查看活动连接的详细信息
    nmcli connection show "连接名称"  # nmcli connection show "eth0"

    输出包含连接类型(ethernet)、IP配置方法(manual/dhcp)、DNS服务器等。

查看网络接口统计文件

Linux内核会维护网络接口的统计信息,可通过读取/proc/net/dev文件获取:

cat /proc/net/dev

输出格式简洁,显示每个接口的接收和发送字节数、包数、错误数等,适合快速查看流量统计。

如何查看linux的网卡

命令行工具对比总结

为方便快速选择合适命令,以下常用查看网卡命令的对比表格:

命令 所属工具包 适用场景 主要功能
ip addr iproute2 查看接口IP、MAC、状态等 现代Linux系统首选,信息全面
ifconfig net-tools 传统系统查看接口基本信息 兼容旧系统,但功能较单一
lspci/lsusb pciutils/usbutils 查看网卡硬件型号和厂商 定位物理网卡硬件信息
ethtool ethtool 查看链路速率、双工模式等参数 深入排查网卡链路问题
nmcli NetworkManager 查看NetworkManager管理的连接 适用于图形化网络管理环境,查看连接配置
cat /proc/net/dev 内核虚拟文件 查看接口流量统计 轻量级查看收发数据量

图形界面查看网卡信息

对于习惯图形界面的用户,Linux桌面环境提供了多种工具查看网卡信息:

  • Ubuntu(GNOME桌面):点击右上角网络图标 → “有线连接”或“Wi-Fi” → “设置”,可查看当前IP地址、MAC地址,点击“齿轮”图标可编辑网络配置。
  • CentOS/RHEL(GNOME桌面):进入“设置” → “网络”,选择活动连接,点击“齿轮”图标查看IP配置、DNS等信息,或点击“详细信息”查看MAC地址、MTU等。
  • 传统工具(如nm-connection-editor:在终端执行nm-connection-editor,弹出图形化网络配置工具,可查看和管理所有网络连接的详细信息。

通过配置文件查看网卡信息

Linux网卡的静态配置通常存储在配置文件中,通过查看文件可了解网卡的固定IP、子网掩码、网关、DNS等设置:

  • RHEL/CentOS系统:配置文件位于/etc/sysconfig/network-scripts/,命名规则为ifcfg-接口名(如ifcfg-eth0):

    cat /etc/sysconfig/network-scripts/ifcfg-eth0

    关键参数:BOOTPROTOstatic/dhcp表示静态/DHCP配置)、IPADDR(IPv4地址)、NETMASK(子网掩码)、GATEWAY(网关)、DNS1/DNS2(DNS服务器)。

  • Ubuntu/Debian系统

    • 旧版(Netplan之前):配置文件为/etc/network/interfaces,通过iface eth0 inet static等配置静态IP。
    • 新版(Netplan):配置文件位于/etc/netplan/(如01-network-manager-all.yaml),使用YAML格式定义网络配置:
      cat /etc/netplan/01-network-manager-all.yaml

高级排查:结合日志和诊断工具

若网卡出现异常(如无法获取IP、频繁掉线),可结合日志和诊断工具进一步排查:

  • 查看内核日志dmesg | grep -i eth,可查看网卡驱动加载、硬件初始化过程中的错误信息。
  • 查看NetworkManager日志journalctl -u NetworkManager,定位NetworkManager管理网络时的错误(如DHCP请求失败)。
  • 测试链路连通性:使用ping(测试网络连通性)、mtr(结合traceroute和ping,分析网络延迟丢包)、tcpdump(抓包分析网络数据)等工具辅助排查。

相关问答FAQs

Q1:为什么执行ifconfig命令时提示“command not found”?
A:ifconfig属于net-tools工具包,现代Linux系统(如Ubuntu 18.04+、CentOS 7+)默认不再安装该工具包,可通过以下方式解决:

  • Ubuntu/Debian系统:sudo apt install net-tools
  • CentOS/RHEL系统:sudo yum install net-tools
    安装后即可使用ifconfig命令,但推荐优先使用ip命令,因其功能更全面且为未来趋势。

Q2:如何查看网卡的实时流量,并监控带宽使用情况?
A:可通过以下工具实现:

  • iftop:实时显示各网卡的实时流量、连接数、带宽占用情况,需安装(sudo apt install iftopsudo yum install iftop)。
    使用示例:sudo iftop -i eth0(指定监控eth0网卡)。
  • nload:以图形化方式显示网卡的实时入站(RX)和出站(TX)带宽,安装命令:sudo apt install nload
    使用示例:sudo nload eth0
  • ip -s link:通过ip命令查看网卡的流量统计,适合轻量级监控,但无法实时刷新,需结合watch命令实现定时刷新:watch -n 1 "ip -s link show eth0"

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

(0)
酷番叔酷番叔
上一篇 2025年9月20日 20:37
下一篇 2025年9月20日 20:53

相关推荐

  • Linux内核如何管理内存的分配、回收与页表映射机制?

    Linux内核内存管理是操作系统高效稳定运行的核心,其设计目标是实现物理内存的高效利用、进程间的内存隔离、多级内存分配策略的优化以及内存回收机制的动态平衡,通过分层架构和精细化的数据结构设计,Linux内核在复杂的硬件环境和多样化的应用需求下,实现了对内存资源的统一调度与动态管理,虚拟内存管理:进程隔离与地址空……

    2025年10月7日
    10400
  • 怎样让手机电池寿命延长一倍?

    Bash脚本是Linux/Unix系统的命令行解释器,用于自动化系统管理、任务处理和程序执行,它通过解释命令实现高效操作,是系统管理员和开发者提升工作效率的必备工具,灵活且功能强大。

    2025年7月21日
    11800
  • Linux系统如何查询主板详细信息?

    在Linux系统中,查询主板信息是系统维护、硬件升级或故障排查时的常见需求,Linux提供了多种命令行工具和系统文件来获取主板详细信息,以下将详细介绍几种主流方法及其使用场景,使用dmidecode命令获取主板详细信息dmidecode是Linux中最常用的硬件信息查询工具,它通过读取系统管理中断(SMBIOS……

    2025年9月18日
    11100
  • linux下如何重启网络连接网络打印机

    Linux 下,可先执行 sudo service networking restart 重启网络,再通过 C

    2025年8月15日
    12700
  • Linux如何创建目录?新手教程

    在Linux系统中,创建目录(活页夹)使用mkdir命令,如mkdir dir_name,注意事项包括检查用户权限、确保路径正确、避免特殊字符,以保障操作安全高效。

    2025年7月2日
    15400

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信