本文讲的是如何才能在不重新启动系统的情况下重置 ifconfig 计数器
首先,重新启动网络接口无济于事(即down后up),因为这些计数器由内核保存(更准确地说是由网卡驱动程序保存的)。
我们还可以通过
cat /proc/net/dev
查看 各个网口计数器的值。
我们把办法是卸载模块,之后再加载回来。来重置计数器。这将清除计数器。
- 假设我有一个使用 e100 模块的 NIC,这可以通过以下方式完成:
modprobe -r e100; modprobe e100; ifup eth0
这组命令的作用是:
modprobe -r e100: 卸载 e100 网卡驱动模块,其中 e100 是一个网卡驱动的模块名。
modprobe e100: 加载 e100 网卡驱动模块,重新加载网卡驱动。
ifup eth0: 激活名为 eth0 的网络接口,使其处于可用状态。
通过这些命令,你尝试重启网络接口 eth0,以解决可能出现的网络连接问题。
或类似的东西来恢复接口(根据您的特定 Linux 发行版,启动网络接口的脚本可能不同)。
注意:这将使网络接口关闭,如果您通过 ssh 连接执行此操作,请格外小心(例如创建一个小脚本,添加一些额外的措施以确保您不会将自己锁定在系统之外)。
参考资料: