バンド 、以前は何と呼ばれていました は、プロセス、接続、リモートIPまたはホスト名ごとにネットワーク帯域幅の使用率を表示するコマンドラインのオープンソースユーティリティです。指定されたネットワークインターフェイスカードをスニッフィングし、IPパケットサイズを記録し、最後に /proc
と相互参照します。 Linuxシステム上のファイルシステムまたはlsof
MacOSでのコマンド。 さびで書かれています プログラミング言語であり、LinuxおよびMacOSをサポートしています。
LinuxにBandwhichをインストールする
Arch LinuxとそのバリアントにBandwhichをインストールするには、以下を実行します:
$ sudo pacman -S bandwhich
COPRで利用可能で、DNFパッケージマネージャーを介してインストールできるバンド:
$ sudo dnf copr enable atim/bandwhich
$ sudo dnf install bandwhich
Nixの使用 パッケージマネージャー:
$ nix-env -iA nixpkgs.bandwhich
他のLinuxディストリビューションでは、 Cargoを使用してインストールできます。 パッケージマネージャー。
Cargoパッケージマネージャーを使用するには、以下のリンクで説明されているようにRustプログラミング言語をインストールする必要があります。
- LinuxにRustプログラミング言語をインストールする
Rustをインストールした後、次のコマンドを使用してBandwhichをインストールします。
$ cargo install bandwhich
上記のコマンドは、bandwhichを ~/.cargo/bin/bandwhich
にインストールします 。したがって、以下に示すように、bandwhichを実行するには、毎回フルパスを入力する必要があります。
$ sudo ~/.cargo/bin/bandwhich
これを修正するには、bandwhichバイナリを$ PATHに移動します(例:/usr/local/bin/
)以下のようなシンボリックリンクを作成します。
$ sudo ln -s ~/.cargo/bin/bandwhich /usr/local/bin/
これで、コマンドを使用してbandwhichを実行できます:
$ sudo bandwhich
ネットワークパケットをスニッフィングするbandは、 root
が必要であることに注意してください。 特権。したがって、 sudo
で実行する必要があります プレフィックス。
トラブルシューティング
Cargoを使用してBandwhichをインストールすると、次のエラーが発生する可能性があります。
Updating crates.io index Installing bandwhich v0.6.0 Compiling libc v0.2.66 error: linker `cc` not found | = note: No such file or directory (os error 2) [...]
このエラーを修正するには、次の解決策を試してください。
- LinuxでRustエラー「リンカー「cc」が見つかりません」を修正する方法
Bandwhichツールを使用したネットワーク帯域幅使用率の表示
プロセス、接続、IP、またはホスト名ごとに現在の帯域幅使用率を表示するには、次のコマンドを実行します。
$ sudo bandwhich
Ubuntu 18.04 LTSデスクトップからの出力例:

停止するには、 Ctrl+c
を押します 。
デフォルトでは、Bandwhichはすべてのネットワークインターフェースからのネットワーク使用率を表示します。 Bandwhichを特定のネットワークカードでリッスンする場合、たとえば wlp9s0
、 -i
を使用します フラグ。
$ sudo bandwhich -i wlp9s0
ヘルプが必要な場合:
$ bandwhich --help bandwhich 0.6.0 USAGE: bandwhich [FLAGS] [OPTIONS] FLAGS: -h, --help Prints help information -n, --no-resolve Do not attempt to resolve IPs to their hostnames -r, --raw Machine friendlier output -V, --version Prints version information OPTIONS: -i, --interface <interface> The network interface to listen on, eg. eth0
これがお役に立てば幸いです。