ifconfigカウンターをリセットする方法は?


16

実行するとifconfig eth0、次の行が表示されます。

eth0      Link encap:Ethernet  HWaddr 08:00:27:42:81:a7  
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe42:81a7/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:66 errors:0 dropped:0 overruns:0 frame:0
          TX packets:212 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:8001 (8.0 KB)  TX bytes:34004 (34.0 KB)

これらのカウンター、特にRX / TXパケットをリセットするにはどうすればよいですか?


1
これを行いたくない場合もありますが、コンピューターを再起動することもできます。:)
Vreality

6
はい、コンピューターを再起動することでカウンターをリセットできますが、良い選択ですか?すべてのプログラムを閉じてコンピューターを再起動し、いくつかのカウンターをリセットするのは快適ですか?あなたはエンジニアリングの再起動をお勧めします、それは解決策ではありません。
SuB

回答:


10

これらのカウンターはカーネルによって保持されるため、答えはネットワークカードドライバーの構築方法によって異なります。2つの可能な選択肢:

  1. カーネルモジュール
  2. カーネル内部

2番目の場合、オペレーティングシステムを再起動せずにカウンタをリセットすることはできません。最初の場合は、カーネルからモジュールをアンロードしてから再度ロードすることで実行できます。NICカードがe1000モジュールを使用している場合、次のコマンドを使用します。

$ ifconfig eth0 down
$ modprobe -r e1000
$ modprobe e1000
$ ifconfig eth0 up

ethtoolNICモジュールを見つけるために使用します。

$ ethtool -i eth0

ドライバーの前にモジュール名が表示されます:

driver: e1000
version: 7.3.21-k8-NAPI
firmware-version: 
...

次のようapt-getにインストールに使用しethtoolます。

$ apt-get install ethtool

modprobe -rカーネルからドライバーをアンロードします(マシンにアクセスする方法がなくなる可能性があります)。したがって、リモートでこれを行う場合は、代わりに再起動することをお勧めします。
Score_Under

@Score_Under:リモートアクセスのより良いソリューションは、これらのコマンドをbashスクリプトファイルに書き込み、それをで実行することです。例nohupnohup bash restart_counters_script.sh
-SuB

ループバックインターフェイスでこれを行う方法を知っていますか?また、カーネルモジュールを削除せずにドライバーのバインドを解除/バインドすることは可能ですか?
パブロビアンキ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.