服务器测试网速教程
本教程基于 iperf 进行测试带宽。
iperf 官网: https://iperf.fr/iperf-download.php
一、服务器端安装和配置
1.1 连接服务器
使用 SSH 连接到您的服务器(请根据实际服务器地址和端口修改):
ssh root@js1.blockelite.cn -p 11436
注意: 请根据自己服务器的实际地址和端口进行登录。
1.2 安装 iperf
Ubuntu/Debian 系统
apt install iperf -y
CentOS/RHEL 系统
yum install iperf -y
# 或者使用 dnf(CentOS 8+)
dnf install iperf -y
macOS 系统
brew install iperf
1.3 启动 iperf 服务端
在服务器上启动 iperf 服务,监听指定端口:
iperf -s -p 8805
参数说明:
-s:以服务器模式运行-p:指定监听端口(8805 为示例端口,请根据实际端口修改)
提示: 如果需要在后台运行服务,可以使用
nohup或screen:nohup iperf -s -p 8805 > /dev/null 2>&1 &
二、客户端测试
2.1 安装 iperf 客户端
在本地客户端机器上安装 iperf(安装方法同服务器端)。
2.2 执行带宽测试
在客户端执行以下命令进行测试:
iperf -c js1.blockelite.cn -p 11499 -t 100
参数说明:
-c:指定服务器地址(客户端模式)-p:指定服务器端口-t:指定测试时间(单位:秒)
其他常用参数:
-i:指定报告间隔(如-i 1表示每秒报告一次)-w:指定 TCP 窗口大小-P:指定并行连接数(用于多线程测试)-u:使用 UDP 协议(默认使用 TCP)
2.3 测试结果示例
Client connecting to js1.blockelite.cn, TCP port 11499
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 1] local 192.168.122.7 port 48132 connected with 223.109.239.11 port 11499
[ ID] Interval Transfer Bandwidth
[ 1] 0.0000-10.1836 sec 36.8 MBytes 30.3 Mbits/sec
结果解读:
- Transfer:传输的数据量(36.8 MBytes)
- Bandwidth:测得的带宽(30.3 Mbits/sec)
注意: 由于网络环境会受到链路、地域差异以及网络服务商等因素的影响,实际测试结果可能存在一定损耗。30.3 Mbits/sec 的测试结果表示实际带宽约为 30 Mbps。
三、常见问题
3.1 连接失败
- 检查服务器防火墙是否开放了指定端口
- 确认服务器端 iperf 服务是否正在运行
- 验证服务器地址和端口是否正确
3.2 测试结果异常
- 尝试增加测试时间(
-t参数)以获得更准确的结果 - 使用
-i 1参数查看实时测试进度 - 检查网络是否稳定,避免在网络高峰期测试
3.3 双向测试
如需测试双向带宽,可以:
- 在服务器端执行:
iperf -s -p 8805 - 在客户端执行:
iperf -c 服务器地址 -p 8805 -t 60 -d(-d参数表示双向测试)
四、参考命令
服务器端常用命令
# 基本服务端启动
iperf -s -p 8805
# 后台运行
nohup iperf -s -p 8805 > iperf.log 2>&1 &
# 使用 UDP 协议
iperf -s -u -p 8805
客户端常用命令
# 基本测试(60秒)
iperf -c 服务器地址 -p 8805 -t 60
# 每秒报告一次
iperf -c 服务器地址 -p 8805 -t 60 -i 1
# 多线程测试(4个并行连接)
iperf -c 服务器地址 -p 8805 -t 60 -P 4
# UDP 测试
iperf -c 服务器地址 -p 8805 -u -t 60 -b 100M