Linux下如何获取网卡详细信息?

Linux系统中,获取网卡信息是网络管理和故障排查的基础操作,通过多种命令和工具可以全面了解网卡的硬件信息、配置状态、流量数据等,以下是常用的方法及详细说明。

linux下如何获取网卡信息

使用ip命令(现代Linux系统首选)

ip命令是iproute2工具包的核心命令,替代了传统的ifconfig,功能更强大且信息更全面,通过ip命令可以查看网卡的IP地址、MAC地址、状态、MTU值、流量统计等。

基本用法:

  1. 查看所有网卡概览

    ip addr show

    输出包括网卡名称(如eth0ens33)、状态(UP/DOWN)、MAC地址(link/ether)、IPv4/IPv6地址(inet/inet6)、广播地址(brd)等。

    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
  2. 查看特定网卡详细信息

    ip addr show eth0
  3. 查看网卡流量统计

    ip -s link show eth0

    输出包含接收(RX)和发送(TX)的字节数、包数、错误数、丢包数等详细流量数据。

使用ifconfig命令(传统工具,需安装net-tools

ifconfig是早期Linux系统中常用的网络配置工具,部分系统默认未安装,需通过sudo apt install net-tools(Ubuntu/Debian)或sudo yum install net-tools(CentOS/RHEL)安装。

基本用法:

  1. 查看所有网卡信息
    ifconfig -a
  2. 查看特定网卡信息
    ifconfig eth0
    ```  与`ip addr show`类似,包括网卡状态、IP地址、MAC地址、流量统计(`RX packets`、`TX packets`等)。  

使用lspcilsusb命令(查看网卡硬件信息)

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

linux下如何获取网卡信息

基本用法:

  1. 查看PCI网卡硬件信息

    lspci | grep -i ethernet

    输出示例:

    04:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection
  2. 查看USB网卡硬件信息

    lsusb | grep -i ethernet

    输出示例:

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

使用ethtool命令(查看网卡高级参数)

ethtool可获取网卡的速率、双工模式、自协商状态、驱动版本等高级信息,需安装ethtool工具包。

基本用法:

sudo ethtool eth0

输出关键信息包括:

  • Speed: 网卡速率(如1000Mb/s);
  • Duplex: 双工模式(half/full);
  • Auto-negotiation: 是否开启自协商(on/off);
  • Driver: 网卡驱动名称(如e1000e);
  • FW-version: 固件版本。

通过系统文件查看网卡信息

Linux内核将网卡信息存储在/proc/net/dev/sys/class/net/目录下,可直接读取文件内容获取数据。

  1. 查看实时流量统计

    linux下如何获取网卡信息

    cat /proc/net/dev

    第一行为表头,后续每行对应一个网卡的接收(RX)和发送(TX)字节数、包数等。

  2. 查看网卡详细信息

    ls /sys/class/net/

    列出所有网卡名称,进入对应网卡目录(如/sys/class/net/eth0/)可查看地址(address)、MTU(mtu)、操作状态(operstate)等文件内容。

常用网卡信息查询命令总结

命令 主要用途 示例命令 输出信息说明
ip addr show 查看IP、MAC、状态等基本信息 ip a 网卡名称、IP地址、MAC地址、状态
ifconfig 传统网络配置工具(需安装) ifconfig eth0 ip类似,包含流量统计
lspci/lsusb 查看网卡硬件型号 lspci | grep -i ethernet 厂商、设备ID、硬件名称
ethtool 查看速率、双工、驱动等高级参数 sudo ethtool eth0 网卡速率、双工模式、驱动版本
cat /proc/net/dev 查看实时流量统计 cat /proc/net/dev 接收/发送字节数、包数、错误数

相关问答FAQs

Q1: 如何查看网卡的实时流量,并监控带宽使用情况?
A: 可使用ip -s link查看基础流量统计,或结合nloadiftop等工具实时监控带宽,例如安装nload后,执行nload -i eth0-i指定网卡),可实时显示接收和发送的流量图表,若需历史流量统计,可使用vnstat工具(需安装),通过vnstat -i eth0查看按小时、天、月的流量汇总。

Q2: 如何获取网卡当前使用的驱动名称及版本信息?
A: 方法1:使用ethtool命令,执行sudo ethtool -i eth0,输出中的Driver字段即为驱动名称,Version字段为驱动版本,方法2:通过系统文件查看,执行cat /sys/class/net/eth0/device/driver/module/version(需root权限),直接显示驱动版本,方法3:使用lsmod命令查看已加载的网络模块,执行lsmod | grep -i e1000e(以Intel e1000e驱动为例),确认驱动是否加载。

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

(0)
酷番叔酷番叔
上一篇 2025年9月26日 12:19
下一篇 2025年9月26日 13:08

相关推荐

  • linux系统上如何ping

    Linux系统上,打开终端,输入“ping [目标地址]”,按回车即可进行

    2025年8月13日
    13600
  • Linux下如何为软件或文件进行数字签名操作?

    在Linux系统中,签名是保障软件、文件或通信可信性和完整性的核心机制,通过数字签名技术,接收方可验证来源的真实性及内容是否被篡改,常见的签名场景包括软件包签名、文件签名、邮件签名等,其中GPG(GNU Privacy Guard)是最广泛使用的工具之一,而针对不同Linux发行版的软件包(如Debian/Ub……

    2025年9月30日
    15100
  • linux如何显示用户名

    在Linux系统中,用户名是标识系统用户身份的核心信息,无论是日常操作、脚本编写还是系统管理,经常需要获取当前或指定用户的用户名,Linux提供了多种命令和方法来显示用户名,涵盖基础命令、环境变量、系统文件等多个层面,下面将详细介绍这些方法及其使用场景,基础命令直接显示用户名whoami命令whoami是最直接……

    2025年9月19日
    15600
  • 如何设置终端等宽字体?

    在Linux系统中,终端字体的调整能显著提升使用体验(如缓解视觉疲劳、增强代码可读性),以下是针对不同终端模拟器的详细方法,操作前请确保已安装所需字体(如Fira Code、Source Code Pro可通过包管理器安装),通用方法:通过终端首选项修改GNOME Terminal(Ubuntu/Fedora等……

    2025年6月14日
    18500
  • Linux系统如何设置为ANSI编码?

    在Linux系统中,ANSI转义序列常用于控制终端输出,如设置文本颜色、光标位置、清屏等,提升交互体验,要启用或优化ANSI支持,需从终端模拟器配置、Shell环境设置及工具适配三方面入手,以下是具体操作步骤和注意事项,检查终端ANSI支持情况首先确认当前终端是否支持ANSI转义序列,打开终端,运行以下命令:e……

    2025年9月23日
    16500

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信