3. iPerf3 基础用法:安装与配置、TCP 带宽测试命令、UDP 带宽测试命令、常用参数详解

好,咱们进入正题。iPerf3 这东西,说白了就是网络界的「卷尺」。你想知道你家带宽到底够不够?网线是不是被狗啃了?服务器吞吐量有没有虚标?拿它一测便知。我这些年排查网络故障,十次里有八次第一件事就是掏出 iPerf3。

3.1 安装与配置:别让工具卡在第一步

安装其实没啥技术含量,但很多人会栽在版本问题上。我遇到过最坑的一次,是客户两边服务器装了不同大版本的 iPerf,结果死活连不上,折腾了两小时才发现是版本不兼容。

Linux 下安装:

# CentOS / RHEL
yum install iperf3 -y

# Ubuntu / Debian
apt-get install iperf3 -y

Windows 下安装:

去官网下载 exe 文件,扔到 C:\Windows\System32 目录下。嗯,就这么简单。我个人习惯在桌面再放一份,方便直接拖进命令行。

⚠️ 版本警告: 服务端和客户端必须使用相同大版本(比如都是 3.x)。iPerf2 和 iPerf3 不互通!我曾经在升级脚本时忘了改版本号,结果压测数据全废了,血的教训。

3.2 TCP 带宽测试命令:最常用的场景

TCP 测试是咱们最常用的。为啥?因为大部分业务跑的都是 TCP,测这个最贴近真实情况。

服务端启动:

iperf3 -s

就这么一行。默认监听 5201 端口。你想想看,如果端口被占用了怎么办?加个 -p 参数指定别的端口就行。

客户端测试:

iperf3 -c 192.168.1.100

默认测 10 秒,结果会显示带宽、丢包、重传等信息。我一般先跑个默认的看看大概,再调参数做精细测试。

💡 实战技巧: 如果怀疑是网卡或驱动问题,可以试试反向测试(加 -R 参数),让客户端变成接收端。我遇到过网卡发送正常但接收掉速的情况,就是靠这个发现的。

3.3 UDP 带宽测试命令:别被「无连接」骗了

UDP 测试很多人用得少,但其实特别重要——尤其是排查视频流、VoIP 这类实时业务的时候。

# 服务端(和 TCP 一样)
iperf3 -s

# 客户端(必须指定带宽,否则默认 1Mbps)
iperf3 -c 192.168.1.100 -u -b 100m

这里有个坑:UDP 测试如果不加 -b,默认只发 1Mbps,你测出来带宽永远是 1M,还以为网络炸了呢。我刚开始用的时候就犯过这错,盯着结果看了半天,心想「这不对啊」。

UDP 测试结果里有个关键指标叫 Jitter(抖动)。这个值如果超过 20ms,视频通话基本就卡成 PPT 了。

3.4 常用参数详解:这些才是精髓

参数这东西,背是背不完的。我把最常用的几个给你拆开讲,你记住它们,日常排查就够用了。

参数 全称 作用 我的经验
-c Client mode 指定客户端模式,后面跟服务器 IP 最常用,没有之一
-s Server mode 启动服务端 记得防火墙放行端口
-t Time 测试时长,单位秒 我习惯设 30 秒,太短看不出问题
-P Parallel 并行连接数 测大带宽时用,一般设 4 或 8
-b Bandwidth 目标带宽(UDP 必填) UDP 不加这个等于白测
-u UDP 使用 UDP 协议 测实时业务时必用

组合拳示例:

# 测 TCP,30 秒,4 个并行流
iperf3 -c 192.168.1.100 -t 30 -P 4

# 测 UDP,100Mbps,20 秒
iperf3 -c 192.168.1.100 -u -b 100m -t 20
🎯 避坑指南: 我曾经在测 10Gbps 网络时,单线程死活跑不满。后来加了 -P 8,带宽直接飙到 9.2Gbps。记住:大带宽一定要用多线程!

3.5 知识体系总览

下面这张图,是我自己梳理的 iPerf3 核心逻辑。你照着这个思路去记,比死背参数强十倍。

iPerf3 核心用法 安装与配置 Linux / Windows 版本一致性 TCP 带宽测试 服务端: iperf3 -s 客户端: iperf3 -c IP UDP 带宽测试 必须加 -b 参数 关注 Jitter 抖动 常用参数详解 -c -s -t -P -b -u 组合使用效果更佳 记住:先装对,再测对,最后看对

嗯,这张图把咱们今天讲的内容串起来了。你照着这个框架去练,不出三天就能上手。记住,工具是死的,思路是活的。下次遇到网络慢的问题,别急着甩锅给运营商,先拿 iPerf3 跑一跑,数据会告诉你真相。

可可精品资料库