很多站长在买 VPS 时,看到商家标称 “1Gbps 带宽”、“CN2 GIA 线路”,跑 Speedtest 也是数据漂亮。 但为什么一到晚上,或者当你尝试从本地传文件到服务器时,速度就只有几十 KB?
Speedtest 测的是外网综合速度,而 Iperf3 测的才是点对点的真实“握手”速度。 今天心海君就手把手教大家,如何用 Iperf3 这个神器,揪出网络链路中的“内鬼”。

1. 什么是 Iperf3?
Iperf3 是一款轻量级的网络带宽测试工具。 与 Speedtest 不同,它需要两端配合(服务端 + 客户端)。它可以测试 TCP 和 UDP 的最大带宽性能,还能报告丢包率和抖动,是判断线路质量的金标准。
适用场景:
- 测试本地电脑到 VPS 的真实连接速度。
- 测试两台 VPS 之间(如中转机到落地机)的内网/公网传输速度。
- 排查 Wi-Fi 局域网内的传输瓶颈。
2. 安装方法 (Linux & Windows)
Linux (Ubuntu/Debian/CentOS)
现在的 Linux 发行版源里基本都有,一条命令搞定:
# Ubuntu/Debian
apt update && apt install iperf3 -y
# CentOS
yum install iperf3 -y
Windows
- 前往官网下载:Iperf3 for Windows
- 解压压缩包,你会得到一个
iperf3.exe和cygwin1.dll。 - 在当前文件夹按住
Shift+鼠标右键,选择 “在此处打开 Powershell 窗口” 或 “终端”。
3. 基础玩法:点对点测速
Iperf3 的逻辑是:一台机当服务端(接收),一台机当客户端(发送)。
第一步:开启服务端
假设你有一台 VPS(IP: 192.168.1.1),你想测试连接到它的速度。 在 VPS 上执行:
iperf3 -s
-s: Server,表示开启服务端模式。- 注意:默认监听 5201 端口,请务必在防火墙/安全组放行该端口!
第二步:开启客户端测速
在你的本地电脑(或另一台 VPS)上执行:
# Windows 用户记得命令前加 ./,如 ./iperf3
iperf3 -c 192.168.1.1
-c: Client,表示连接到某台服务器。
4. 进阶玩法:参数大神(必看)
默认的测速往往跑不满带宽,因为单线程 TCP 受限于窗口大小和延迟。想要测出极限速度,必须加上以下参数。
A. 多线程测速 (推荐)
通过多条线程同时传输,能榨干带宽性能。
iperf3 -c 192.168.1.1 -P 4
-P 4: 开启 4 个并发线程(建议 4-8 即可)。
B. 反向测速 (下载速度)
默认命令测的是 客户端 -> 服务端(即上传速度)。 如果你想测 服务端 -> 客户端(即 VPS 下载到本地的速度),需要加 -R。
iperf3 -c 192.168.1.1 -P 4 -R
-R: Reverse,反向模式。
C. UDP 测速 (测丢包/抖动)
想看看线路稳不稳?看视频卡不卡主要看这个。
iperf3 -c 192.168.1.1 -u -b 100M
-u: 使用 UDP 协议。-b: 限制目标带宽(必须指定,否则默认只有 1M)。
5. 常见报错与排查
Q: Connection refused 或 Connection timed out A: 99% 的原因是服务端的 防火墙 没关,或者云服务商的安全组没放行 5201 端口(TCP+UDP 都要放行)。
Q: 速度远低于商家标称值? A:
- 尝试加上
-P 4多线程再测。 - 检查是否是晚高峰时段(20:00 – 23:00)。
- 如果丢包率(Retr)很高,说明线路质量差,发生了拥塞。
💡 心海总结
工具是死的,线路是活的。 如果你通过 Iperf3 测出来丢包率常年超过 5%,或者晚高峰速度从 500M 掉到 5M,那说明这台 VPS 的线路已经严重超售或绕路。

心海漪澜


评论前必须登录!
注册