iperf3 测速教程:精简易懂版
iperf3 是一款网络性能测试工具,可以测量两台设备之间的 TCP 或 UDP 速度。开始前先分清两端:
- 服务端:等待连接,通常是 VPS、NAS 或另一台电脑。
- 客户端:主动连接服务端并发起测速,通常是本地电脑。
必须先启动服务端,再运行客户端命令。
iperf3 测到的是两台设备之间的线路性能,不等同于运营商宽带测速结果。
安装 iperf3
Linux
Debian、Ubuntu:
apt update && apt install -y iperf3CentOS、Rocky Linux、AlmaLinux:
dnf install -y iperf3Alpine Linux:
apk add iperf3Windows
iperf3 官方项目目前不正式支持 Windows,但可以使用社区编译版本:
- 从 iperf.fr 下载页面下载 Windows 压缩包。
- 解压到单独的文件夹。
- 在该文件夹中打开 PowerShell,检查是否可以运行:
.\iperf3.exe --version下文中的 Linux 命令以 iperf3 开头;在 Windows PowerShell 中将其替换为 .\iperf3.exe 即可。
第一步:启动服务端
在作为服务端的设备上运行。
Linux:
iperf3 -sWindows:
.\iperf3.exe -s看到 Server listening on 5201 后保持窗口开启。iperf3 默认使用 5201 端口,请在防火墙和云服务器安全组中放行 TCP 5201;测试 UDP 时还要放行 UDP 5201。
第二步:在客户端测速
假设服务端 IP 是 203.0.113.10,在另一台客户端设备上运行以下命令。
测试上传
数据方向:客户端 → 服务端。
iperf3 -c 203.0.113.10Windows PowerShell:
.\iperf3.exe -c 203.0.113.10测试下载
添加 -R 反向传输,数据方向:服务端 → 客户端。
iperf3 -c 203.0.113.10 -R延长测试时间
默认测试 10 秒,下面改为 30 秒:
iperf3 -c 203.0.113.10 -t 30多线程测速
使用 4 个并行连接:
iperf3 -c 203.0.113.10 -P 4单线程速度不理想,但多线程速度正常,通常说明延迟、丢包或 TCP 单连接性能限制了速度。
测试 UDP
下面以 100 Mbit/s 为目标速率:
iperf3 -c 203.0.113.10 -u -b 100MUDP 测试重点关注 jitter(抖动)和 Lost/Total Datagrams(丢包率)。建议逐步提高 -b 的数值,观察线路从何时开始丢包。
使用自定义端口
例如改用 5002 端口。
服务端运行:
iperf3 -s -p 5002客户端运行:
iperf3 -c 203.0.113.10 -p 5002两端端口必须一致,防火墙也要放行新端口。
怎么看结果?
TCP 测试主要看最后的 Bitrate:
sender:发送端统计结果。receiver:接收端统计结果。Retr:TCP 重传次数,数值较高通常说明存在丢包或拥塞。
UDP 测试则主要看速度、抖动和丢包率。
日常排查建议依次测试单线程上传、单线程下载和四线程速度。测试完成后,在服务端按 Ctrl+C 停止 iperf3;公网服务器不建议长期开放测速端口。
常用命令速查
# 服务端启动iperf3 -s
# 客户端测试上传iperf3 -c 服务器IP
# 客户端测试下载iperf3 -c 服务器IP -R
# 客户端测试 30 秒、4 个并行连接iperf3 -c 服务器IP -t 30 -P 4
# 客户端测试 UDP 100 Mbit/siperf3 -c 服务器IP -u -b 100M更多参数可查看 iperf3 官方文档。
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!

