Утилита iperf3 - это инструмент для измерения реальной пропускной способности сети между двумя точками.
Аналогия:
rsync - это грузовик с даннымиiperf3 - это спидометр для вашей сетиiperf3Базовая схема:
# На сервере (удаленная машина): iperf3 -s # На клиенте (ваша машина): iperf3 -c IP_адрес_сервера
Результат покажет МАКСИМАЛЬНУЮ скорость между точками
Установите на сервер и клиент:
# На сервер и на вашей машине (клиент): sudo apt update sudo apt install iperf3
Что спрашивает установщик:
Start Iperf3 as a daemon automatically?При установке везде выбирайте "NO" для демона
Почему не нужно:
iperf3 нужен ТОЛЬКО для разовых измеренийЗапустите iperf3 на сервере:
# На сервере gexarus: iperf3 -s -p 5201
iperf3будет слушать порт 5201 и ждать подключений
Запустить клиент на своей машине, предварительно подкючив к сети VPN:
# На своей машине (через VPN): iperf3 -c 110.xx.xxx.10 -p 5201 -t 30 -P 4
Параметры:
-c 110.xx.xxx.10 IP-адрес сервера-p 5201 порт прослушивания-t 30 - секунд теста-P 4 - параллельных потокаПример результата:
[ ID] Interval Transfer Bitrate Retr [ 4] 0.00-30.00 sec 165 MBytes 46.2 Mbits/sec 0 [ 6] 0.00-30.00 sec 164 MBytes 45.9 Mbits/sec 0 [ 8] 0.00-30.00 sec 165 MBytes 46.2 Mbits/sec 0 [ 10] 0.00-30.00 sec 165 MBytes 46.2 Mbits/sec 0 [SUM] 0.00-30.00 sec 659 MBytes 184 Mbits/sec 0
Интерпретация:
iperf3Тест в обратную сторону:
# Сервер на вашей машине, клиент на сервере iperf3 -c IP_вашей_машины -t 30
Тест с разными параметрами:
# TCP тест (по умолчанию): iperf3 -c 110.xx.xxx.10 -t 20 # UDP тест (измерить потери пакетов): iperf3 -c 110.xx.xxx.10 -u -b 50M -t 20 # Измерение задержки: iperf3 -c 110.xx.xxx.10 -t 10 -O 2
Если iperf3 показывает хорошую скорость:
# Проблема в сетевой карте/файловой системе 200 Mbits/sec через iperf3 vs 2 Mbits/sec через rsync
Если обратный тест тоже медленный:
# Проблема в VPN/сети 2 Mbits/sec через iperf3 2 Mbits/sec через rsync
Оптимизировать VPN настройки
iperf3 не работаетИспользовать утилиту scp для теста:
# Создать тестовый файл на сервере: dd if=/dev/zero of=/tmp/100mb.bin bs=1M count=100 # Измерить скорость скачивания: time scp root@gexarus:/tmp/100mb.bin /dev/null
Что такое scp?
scp - это утилита командной строки в Unix-подобных системах (Linux, macOS и др.), которая позволяет безопасно копировать файлы и директории между локальной и удалённой машиной (или между двумя удалёнными машинами), используя шифрование SSH.
Пример базового использования:
scp файл.txt пользователь@удалённый_хост:/путь/назначения/