如何在 Linux 上重置网络接口的 RX/TX 计数器如何在 Linux 上重置网络接口的 RX/TX 计数器如何在 Linux 上重置网络接口的 RX/TX 计数器如何在 Linux 上重置网络接口的 RX/TX 计数器
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Linux 上重置网络接口的 RX/TX 计数器

问题:我正在测试网络接口卡 (NIC),当前 ifconfig 命令报告了某些接口上 RX/TX 和错误/丢弃计数器的大量数字。有没有办法在不重新启动服务器的情况下重置网络接口上的 ifconfig 数据包计数器?

在 Linux 上,每个网络接口都带有多个数据包计数器,例如 RX(接收的数据包数量)、TX(发送的数据包数量)、errors(有错误的数据包数量)、dropped(丢弃的数据包数量)和 overruns(由于队列溢出而丢失的数据包数量)。您可以通过运行 ifconfig 命令或检查 /proc/net/dev 来检查这些数据包计数器。这些计数器随着时间的推移不断增加,直到它们结束。如果由于某种原因您想随时重置这些计数器,您可以执行以下操作。

首先,您必须了解,在使用 NIC 时无法重置数据包计数器。由于这些数据包计数器由 NIC 驱动程序维护,因此您可以通过禁用并重新加载 NIC 驱动程序来重置计数器。

在此示例中,让我们重置名为 p1p2 的网络接口的数据包计数器。

首先,您需要确定哪个 NIC 驱动程序与 p1p2 接口关联。

以下命令将帮助您找到答案。它将显示现有以太网接口的详细信息,包括分配的接口名称和关联的 NIC 驱动程序。


$ sudo lshw -class network

在此示例中,接口 p1p2 由名为 ixgbe 的驱动程序管理。

检查驱动程序当前是否已加载到内核中。


$ lsmod | grep ixgbe

ixgbe                  236327  0
dca                     15232  1 ixgbe
ptp                     18627  1 ixgbe
mdio                    13807  1 ixgbe

现在继续使用 modprobe 命令禁用驱动程序。请注意,如果您通过驱动程序管理的界面远程连接到本机,您将失去连接。所以要小心!

以下命令将从内核中删除驱动程序。


$ sudo modprobe -r ixgbe

通过发出以下命令验证驱动程序是否已成功删除。如果安全卸载驱动程序,该命令不应显示任何输出。


$ lsmod | grep ixgbe

继续并使用 modprobe 命令重新启用驱动程序。


$ sudo modprobe ixgbe

此时,接口p1p2的RX/TX和所有其他计数器应该成功重置。

注意:在此示例中,我们假设 NIC 驱动程序作为可加载内核模块存在。但是,某些 NIC 驱动程序内置于内核中,在这种情况下,您无法按照本教程中的说明禁用该模块。要检查网卡驱动程序是否是内核内置的,请使用 modprobe 命令。


$ modprobe -D lzo_compress

builtin lzo_compress
©2015-2025 艾丽卡 support@alaica.com