上一篇
linux 如何查看网络带宽
- Linux
- 2025-08-08
- 8
Linux 中,可以使用 iftop、 nload 或 bmon 等工具查看网络带宽。
在Linux系统中,查看网络带宽是网络管理和性能监控的重要环节,以下是几种常用的方法及其详细步骤:
使用ifconfig命令
基本用法
- ifconfig命令用于显示和配置网络接口信息,包括网络带宽的使用情况。
- 示例命令:ifconfig
- 输出信息包括每个网络接口的IP地址、子网掩码、广播地址以及接收和发送的数据包数量等。
高级用法
- 结合grep和awk命令,可以提取特定接口的带宽使用情况。
- 示例命令:ifconfig eth0 | grep "RX bytes" | awk '{print $2}'(假设eth0为网络接口名称)
使用nload命令
基本用法
- nload是一个实时网络流量和带宽监控工具,支持多种网络接口。
- 示例命令:nload
- 默认情况下,nload会显示所有网络接口的实时流量图。
高级用法
- 指定网络接口:nload -i eth0(假设eth0为网络接口名称)
- 设置刷新间隔:nload -i eth0 -t 1000(每秒钟刷新一次)
- 限制显示的流量类型:nload -i eth0 -u(仅显示上传流量)或nload -i eth0 -d(仅显示下载流量)
使用iftop命令
基本用法
- iftop是一个实时显示网络连接和带宽使用情况的工具,类似于Windows下的Task Manager。
- 示例命令:iftop
- 默认情况下,iftop会显示所有网络连接的实时带宽使用情况。
高级用法

- 指定网络接口:sudo iftop -i eth0(假设eth0为网络接口名称)
- 过滤特定主机或端口:sudo iftop -f "host 192.168.1.1"或sudo iftop -f "port 80"
- 设置刷新间隔:sudo iftop -i eth0 -t 1000(每秒钟刷新一次)
使用vnstat命令
基本用法
- vnstat是一个网络流量监控工具,可以记录和统计网络接口的流量数据。
- 示例命令:vnstat
- 默认情况下,vnstat会显示当前网络接口的流量统计信息。
高级用法
- 查看历史流量数据:vnstat -h(按小时统计)或vnstat -d(按天统计)
- 查看特定接口的流量数据:vnstat -i eth0(假设eth0为网络接口名称)
- 生成流量报告:vnstat --xml或vnstat --json
使用bmon命令
基本用法
- bmon是一个带宽监控和调试工具,可以实时显示网络接口的带宽使用情况。
- 示例命令:bmon
- 默认情况下,bmon会显示所有网络接口的实时带宽使用情况。
高级用法
- 指定网络接口:bmon -i eth0(假设eth0为网络接口名称)
- 设置刷新间隔:bmon -i eth0 -p 1(每秒钟刷新一次)
- 启用详细模式:bmon -i eth0 -w(显示更多详细信息)
使用sar命令
基本用法

- sar是一个系统性能监控工具,可以收集和报告系统的各种性能数据,包括网络带宽。
- 示例命令:sar -n DEV 1 1(每秒钟显示一次网络设备的带宽使用情况)
高级用法
- 查看历史数据:sar -n DEV -s 14:00:00 -e 15:00:00(查看14点到15点之间的网络带宽使用情况)
- 生成报告:sar -n DEV -o report.txt(将网络带宽使用情况保存到report.txt文件中)
使用nethogs命令
基本用法
- nethogs是一个按进程显示网络带宽使用情况的工具。
- 示例命令:nethogs
- 默认情况下,nethogs会显示所有进程的网络带宽使用情况。
高级用法
- 指定网络接口:nethogs -i eth0(假设eth0为网络接口名称)
- 设置刷新间隔:nethogs -i eth0 -t 1000(每秒钟刷新一次)
- 过滤特定进程:nethogs -p 1234(仅显示PID为1234的进程的网络带宽使用情况)
使用ip命令
基本用法
- ip命令用于显示和配置网络接口信息,包括网络带宽的使用情况。
- 示例命令:ip -s link show eth0(假设eth0为网络接口名称)
- 输出信息包括每个网络接口的IP地址、子网掩码、广播地址以及接收和发送的数据包数量等。
高级用法

- 结合grep和awk命令,可以提取特定接口的带宽使用情况。
- 示例命令:ip -s link show eth0 | grep "RX bytes" | awk '{print $2}'(假设eth0为网络接口名称)
使用dstat命令
基本用法
- dstat是一个通用的系统性能监控工具,可以实时显示CPU、内存、磁盘和网络等资源的使用情况。
- 示例命令:dstat -n
- 默认情况下,dstat会显示所有网络接口的实时带宽使用情况。
高级用法
- 指定网络接口:dstat -n -i eth0(假设eth0为网络接口名称)
- 设置刷新间隔:dstat -n -i eth0 -t 1000(每秒钟刷新一次)
- 启用详细模式:dstat -n -i eth0 -p(显示更多详细信息)
使用speedtest-cli命令
基本用法
- speedtest-cli是一个测试网络带宽的工具,可以测量下载和上传的最大速度。
- 示例命令:speedtest-cli
- 默认情况下,speedtest-cli会自动选择最近的服务器进行测试,并显示下载和上传的速度。
高级用法
- 指定服务器:speedtest-cli --server 12345(假设12345为服务器ID)
- 设置测试次数:speedtest-cli --count 3(测试3次并取平均值)
- 生成报告:speedtest-cli --json > report.json(将测试结果保存为JSON格式的报告)
十一、归纳与对比
| 工具/命令 | 功能描述 | 实时性 | 详细程度 | 适用场景 |
|---|---|---|---|---|
| ifconfig | 显示网络接口信息 | 低 | 一般 | 基础网络信息查看 |
| nload | 实时网络流量监控 | 高 | 高 | 实时监控网络带宽 |
| iftop | 实时网络连接监控 | 高 | 高 | 实时监控网络连接和带宽 |
| vnstat | 网络流量统计 | 中 | 高 | 查看历史流量数据 |
| bmon | 带宽监控和调试 | 高 | 高 | 实时监控和调试网络带宽 |
| sar | 系统性能监控 | 中 | 中 | 查看历史系统性能数据 |
| nethogs | 按进程显示网络带宽 | 高 | 高 | 监控特定进程的网络带宽使用情况 |
| ip | 显示网络接口信息 | 低 | 一般 | 基础网络信息查看 |
| dstat | 系统性能监控 | 高 | 中 | 实时监控系统性能,包括网络带宽 |
| speedtest-cli | 测试网络带宽 | 低 | 低 | 测试下载和上传速度 |
通过以上方法和工具,您可以有效地监控和管理Linux系统的网络带宽使用情况,确保网络的稳定性和性能。
FAQs
Q1: ifconfig命令能否直接显示网络带宽的实时使用情况?
A1: ifconfig命令主要用于显示网络接口的基本信息,如IP地址、子网掩码等,它并不直接显示网络带宽的实时使用情况,要查看实时带宽使用情况,可以使用nload或iftop等工具。
Q2: 如何查看特定进程的网络带宽使用情况?
A2: 可以使用nethogs命令来查看特定进程的网络带宽使用情况。