在Linux系统中,测试带宽是网络管理和故障排查中的常见需求,通过命令行工具可以高效地监控网络速度、吞吐量及延迟等关键指标,以下是常用的Linux带宽测试命令及其详细使用方法,涵盖不同场景下的测试需求。

基于文件传输的带宽测试
dd
+ pv
命令组合
通过本地生成大文件并传输,结合pv
(Pipe Viewer)实时监控速度,适用于测试本地磁盘到网络的带宽。
步骤:
- 安装
pv
(若未安装):sudo apt install pv
(Debian/Ubuntu)或sudo yum install pv
(CentOS/RHEL)。 - 生成1GB测试文件并传输:
dd if=/dev/zero bs=1M count=1024 | pv | nc -l -p 1234 # 服务端监听1234端口
客户端接收并测试速度:
nc [服务器IP] 1234 | pv > /dev/null # 客户端连接服务端
输出示例:
00GiB 0:00:15 [68.7MiB/s] [=============>] 100%
,显示实时传输速率。
iperf3
专业网络测试工具
iperf3
是广泛使用的网络性能测试工具,支持TCP/UDP带宽、延迟、丢包率等测试。
服务端模式:

iperf3 -s -p 5201 # 默认端口5201,可自定义
客户端测试:
iperf3 -c [服务器IP] -p 5201 -t 10 # 测试10秒TCP带宽 iperf3 -c [服务器IP] -u -b 1G -p 5201 # 测试UDP带宽,目标速率1Gbps
关键参数:
| 参数 | 说明 |
|------|------|
| -s
| 服务端模式 |
| -c
| 客户端模式,需指定服务器IP |
| -t
| 测试时长(秒) |
| -u
| 使用UDP协议 |
| -b
| UDP带宽限制(如100M
) |
| -R
| 双向测试(反向模式) |
输出解读:
Sender
(发送端)显示上传带宽,Receiver
(接收端)显示下载带宽。- UDP测试会显示丢包率(
Lost/Total Datagrams
)和抖动(Jitter
)。
基于网络连接的实时带宽监控
nload
实时流量监控
以图形化界面实时显示网络接口的入站(In
)和出站(`Out)带宽。
安装与使用:

sudo apt install nload # Debian/Ubuntu nload -i eth0 # 指定监控网卡(如eth0)
界面说明:
- 上方为入站流量,下方为出站流量,包含当前速率(
Curr
)和平均速率(Avg
)。
iftop
基于进程的带宽分析
按连接和进程实时显示网络带宽使用情况,适用于排查异常流量。
安装与使用:
sudo apt install iftop # Debian/Ubuntu sudo iftop -i eth0 # 指定网卡
交互操作:
- 按
s
按源地址排序,按d
按目标地址排序,按p
按端口排序。 - 显示实时连接的带宽占用(如
=>
表示上传,<=
表示下载)。
bmon
带宽监控与统计
提供文本界面的实时流量监控,支持多接口和详细统计。
安装与使用:
sudo apt install bmon # Debian/Ubuntu bmon -r eth0 -p show # 指定网卡并显示实时统计
功能特点:
- 可切换视图(如
rate
显示速率,util
显示利用率),按q
退出。
其他实用工具
speedtest-cli
公网测速
通过Speedtest.net服务器测试公网带宽,适合快速检查网络速度。
安装与使用:
curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh | sudo bash sudo apt install speedtest-cli speedtest-cli --server [服务器ID] # 指定服务器ID
输出示例:
Download: 245.32 Mbps, Upload: 45.12 Mbps, Ping: 12.3 ms
。
netperf
客户端/服务器模型测试
支持TCP/UDP/RTP等多种协议的性能测试,适合企业级网络评估。
服务端:netserver -4 -p 12865
客户端:netperf -4 -H [服务器IP] -t TCP_STREAM -p 12865
相关问答FAQs
Q1: 如何在Linux中测试特定端口的带宽?
A: 使用iperf3
可指定端口测试,服务端运行iperf3 -s -p 1234
,客户端执行iperf3 -c [服务器IP] -p 1234 -t 10
,即可测试该端口的TCP带宽,若需测试UDP带宽,添加-u
参数并设置目标带宽(如-b 100M
)。
Q2: iperf3
和speedtest-cli
有什么区别?如何选择?
A: iperf3
是专业网络测试工具,需部署服务端和客户端,适合测试点对点网络性能(如内网服务器间带宽),支持自定义协议和参数。speedtest-cli
则是基于公网Speedtest服务器的快速测速工具,无需额外部署,适合测试本地到互联网的带宽,若需精确控制测试环境或评估内网性能,选iperf3
;若需快速了解公网网速,选speedtest-cli
。