Linux网卡包计数器清零(卸载/重加载驱动)

时间:2022-12-27 14:51:12

linux中ifconfig eth4 会看到该网卡的统计信息(TX、RX、drop等),有的时候需要把计数器清零,用卸载驱动,再安装驱动方法解决。
1 有的机器ifconfig eth4 down/up 操作可以清零
2 大多系统down/up计数器是没有清零的,因为这个计数器值在内存寄存器中,down/up只是对网卡的管理down操作,所以无法生效。
3 重新加载驱动来解决。方法如下

[root@user ~]# ifconfig eth4 ##可以看到drop计数是454
eth4      Link encap:Ethernet  HWaddr 68:05:CA:14:13:66  
          inet6 addr: fe80::6a05:caff:fe14:1366/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:9000  Metric:1
          RX packets:6981046526 errors:0 dropped:454 overruns:0 frame:0
          TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:5007049107674 (4.5 TiB)  TX bytes:1344 (1.3 KiB)
          Interrupt:42 Memory:c78a0000-c78c0000 

查看网卡驱动类型

[root@LanyEye ~]# ethtool -i eth4
driver: e1000e

卸载该驱动

[root@user ~]# modinfo e1000e #找到该驱动文件路径
filename:       /lib/modules/2.6.32-573.el6.x86_64/kernel/drivers/net/e1000e/e1000e.ko

[root@user ~]# rmmod e1000e #卸载
[root@user ~]# ethtool -i eth4 #查看已经卸载
Cannot get driver information: No such device
[root@user ~]# 
[root@user ~]# ifconfig eth4
eth4: error fetching interface information: Device not found

重加载该驱动

[root@user ~]# modprobe e1000e
[root@user ~]# 

如果直接加载报错,先insmod下。

[root@user ~]# insmod /lib/modules/2.6.32-573.el6.x86_64/kernel/drivers/net/e1000e/e1000e.ko
[root@user ~]# 
[root@user ~]# modprobe e1000e

OK,查看计数器的值

[root@user ~]# ifconfig eth4 #已经清零
eth4      Link encap:Ethernet  HWaddr 68:05:CA:14:13:66  
          inet6 addr: fe80::6a05:caff:fe14:1366/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2088 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:131336 (128.2 KiB)  TX bytes:468 (468.0 b)
          Interrupt:42 Memory:c78a0000-c78c0000