web-dev-qa-db-ja.com

各接続の帯域幅の使用を確認する方法は?

Linux vpsサーバーがあり、現在のネットワーク接続とそれぞれのアップロード/ダウンロード速度を確認したい。この目的を達成する簡単なコマンドはありますか?

6
isoman

プロセスごとの帯域幅情報を取得するには、ネットワーク監視システムをインストールする必要がありますが、利用できるツールはたくさんあります。

セットアップが簡単な順序:

多くのセットアップを必要としない単純なパッケージは iftop です。これにより、プロセスごとの帯域幅が表示されます。 iftop screenshot 単純なリアルタイムソリューションが必要な場合は、これがおそらく必要なことです。

  • インターフェイスごとの帯域幅を取得するには、bwm-ngは、インターフェースごとのリアルタイムの使用状況を示す小さなパッケージです。
  • netstatは開いている接続を一覧表示し、ほとんどのシステムにすでに存在しているはずです
  • ntop はシステム監視に非常に便利なツールであり、ネットワーク監視をサポートするカーネルモジュールをインストールした場合、プロセスごとのTCP接続も監視できます。
  • Gactinagiosntop および ganglia は、ホスト/システムごとにネットワーク監視を実行できる、さらにいくつかの重量のあるシステムです。/service/protocol/etcは、エンタープライズネットワーク全体に対する1つのサーバーのセットアップによって異なります。 gangliaの実際の動作例については、 mediawikiサーバーの監視 を参照してください。
8
glallen

nethogsと呼ばれる単純なパッケージがあります。これは、個々のプロセスによって使用される帯域幅を示し、最も集中的なプロセスを最上位に置いてリストをソートします。

enter image description here

# Ubuntu or Debian
$ Sudo apt install nethogs

# Fedora or CentOS
$ Sudo yum install nethogs -y
2
Mustapha Hadid

ネイティブnetstatを使用した5秒間隔でのリアルタイム使用の継続的なポーリング

netstat --interfaces = eth0 -c 5

カーネルインターフェーステーブル

Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg

eth0 1500 0 601670041 0 0 0 290653338 0 0 0 BMRU

eth0 1500 0 601796657 0 0 0 290721761 0 0 0 BMRU

awkを使用すると、関心のある特定のフィールドを監視できます。以下の例では、2つのRX列とTX列が、エラーなしで送受信されたパケットの数を示しています(RX-OK/TX-OK)

netstat --interfaces = eth0 -c 5 | awk '{print $ 4 "\ t" $ 8}'

RX-OK TX-OK

605142559 292429624

605142595 292429661

2
Kexin Z

そのためにiptrafを使用しています。

よろしく、

http://catcher.hdcs.cz

0
Tomas Tudja