Top Linux CLI Tools for Real‑Time Network Bandwidth Monitoring
This article surveys a collection of Linux command‑line utilities that can monitor overall, per‑interface, per‑socket, and per‑process network bandwidth, explaining how each tool works, what data it reports, and how to install it on major distributions.
The article introduces several Linux command‑line tools for monitoring network usage, capable of displaying inbound and outbound traffic, measuring current transfer speeds, and, in some cases, showing bandwidth per process.
Overall bandwidth monitoring tools
nload, bmon, slurm, bwm-ng, cbm, speedometer, netload
vnstat, ifstat, dstat, collectl (batch‑style output)
iftop, iptraf, tcptrack, pktstat, netwatch, trafshow (per‑socket bandwidth)
nethogs (per‑process bandwidth)
1. nload
nload separates inbound and outbound traffic, draws simple charts, and offers adjustable scaling. It is useful for a quick overview of total bandwidth without detailed per‑process data.
Installation: available in default repositories of Fedora and Ubuntu; CentOS users need the EPEL repository.
2. iftop
iftop measures data transferred per socket connection using the pcap library, summarizing packet sizes to estimate bandwidth. It cannot show the process ID for each connection but supports filtering and host‑specific monitoring.
Installation: available in default repositories of Ubuntu/Debian/Fedora; CentOS users obtain it from EPEL.
3. iptraf
iptraf is an interactive, colorful LAN monitoring tool that displays each connection and the amount of data transferred between hosts.
Installation: install from the default repository of your distribution.
4. nethogs
nethogs acts as a "net top" utility, listing processes by bandwidth usage, showing PID, user, and command path, which helps quickly identify bandwidth‑hogs.
Installation: available in the default repositories of Ubuntu, Debian, and Fedora; CentOS users need EPEL.
5. bmon
bmon (Bandwidth Monitor) displays traffic load for all network interfaces, providing charts and packet‑level details.
Installation: install from default repositories on Ubuntu/Debian/Fedora; on CentOS install via Repoforge.
6. slurm
slurm shows device statistics with ASCII graphics, offering three visual modes activated by the c, s, and l keys. It provides only basic load information.
Installation: install from the default repository of your distribution.
7. tcptrack
tcptrack, similar to iftop, captures packets via pcap, reports bandwidth per connection, and supports standard pcap filters.
Installation: available in Ubuntu/Debian/Fedora repositories; CentOS users obtain it from RepoForge.
8. vnstat
vnstat runs as a background daemon, continuously recording transferred data and generating historical usage reports. Running without options shows total data since the daemon started; the -l option enables real‑time mode.
Installation: install from the default repository of your distribution.
9. bwm-ng
bwm-ng (Bandwidth Monitor Next Generation) provides a simple real‑time summary of traffic speeds for all interfaces, with an optional curses‑based bar graph.
Installation: install via EPEL on CentOS.
10. cbm (Color Bandwidth Meter)
cbm is a tiny tool that continuously displays traffic size per interface without additional options.
11. speedometer
speedometer draws attractive graphs of inbound and outbound traffic for a selected interface.
12. pktstat
pktstat shows active connections, their protocols, and transfer speeds, and can display HTTP request details when applicable.
13. netwatch
netwatch (part of the netdiag suite) lists local and remote connections with their data transfer rates.
14. trafshow
trafshow reports active connections, protocols, and speeds, supporting pcap‑style filters; it can be limited to TCP connections.
15. netload
netload provides a brief report of current traffic load and total bytes transferred since start; it is part of netdiag.
16. ifstat
ifstat outputs bandwidth in batch mode, suitable for logging or further analysis.
17. dstat
dstat, a Python‑based versatile tool, can report various system statistics, including network bandwidth, in CSV or other formats.
18. collectl
collectl reports system statistics in a format similar to dstat, covering CPU, memory, and network usage.
Conclusion: These command‑line utilities allow quick inspection of network bandwidth on Linux servers via SSH. For web‑based monitoring, tools like ntop, darkstat, or enterprise solutions such as Nagios can be used.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Liangxu Linux
Liangxu, a self‑taught IT professional now working as a Linux development engineer at a Fortune 500 multinational, shares extensive Linux knowledge—fundamentals, applications, tools, plus Git, databases, Raspberry Pi, etc. (Reply “Linux” to receive essential resources.)
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
