bandwhich
A terminal bandwidth utilisation tool that shows current network usage by process, connection, and remote address.
bandwhich is a terminal utility for displaying current network utilisation
broken down by process, connection, and remote address or hostname. It gives you
a live, at-a-glance view of what is consuming your bandwidth and where it's
going — something that tools like iftop or nethogs attempt, but with a
cleaner TUI and more detail.
Features
- Per-process breakdown — see exactly which processes are sending and receiving data
- Per-connection view — inspect individual connections with remote addresses
- DNS resolution — resolves remote IPs to hostnames for readability
- Live updating — refreshes in real time as traffic flows
- Cross-platform — works on Linux, macOS, and Windows
Installation
cargo install bandwhich
Or via your system package manager:
# Arch Linux
pacman -S bandwhich
# Debian / Ubuntu
apt install bandwhich
# Fedora
dnf install bandwhich
# macOS
brew install bandwhich
# Nix
nix-env -iA nixpkgs.bandwhichUsage
bandwhich requires elevated privileges to capture network traffic:
# Linux
sudo bandwhich
# macOS
sudo bandwhich
# Run against a specific interface
sudo bandwhich -i eth0Interface
The TUI is split into three panes:
- Processes — lists running processes with their current upload/download rates
- Connections — shows individual TCP/UDP connections and their bandwidth
- Remote addresses — aggregates traffic by remote host
Press Tab to cycle between panes and q to quit.
Why not just use iftop or nethogs?
bandwhich combines the per-process view of nethogs with the per-connection
detail of iftop, presents it all in a single well-organised TUI, and resolves
hostnames automatically — without requiring you to juggle multiple tools at
once.