Тестирование скорости сервера
Speedtest CLI - это официальная утилита от Ookla для тестирования скорости соединения через командную строку вашего сервера.
Данная инструкция поможет установить и использовать Speedtest CLI на различных операционных системах.
Установка
# Удаление неофициальных версий Speedtest CLI
sudo rm /etc/apt/sources.list.d/speedtest.list
sudo apt-get update
sudo apt-get remove speedtest
sudo apt-get remove speedtest-cli
# Установка sudo, если он ещё не установлен
apt install sudo -y
# Установка Speedtest CLI
sudo apt-get install curl
curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh | sudo bash
sudo apt-get install speedtest
# Удаление неофициальных версий Speedtest CLI
sudo rm /etc/yum.repos.d/bintray-ookla-rhel.repo
sudo yum remove speedtest
rpm -qa | grep speedtest | xargs -I {} sudo yum -y remove {}
# Установка Speedtest CLI
curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.rpm.sh | sudo bash
sudo yum install speedtest
# Обновление системы и установка зависимостей
sudo pkg update && sudo pkg install -g libidn2 ca_root_nss
# Установка Speedtest CLI для FreeBSD 12
sudo pkg add "https://install.speedtest.net/app/cli/ookla-speedtest-1.2.0-freebsd12-x86_64.pkg"
# Установка Speedtest CLI для FreeBSD 13
sudo pkg add "https://install.speedtest.net/app/cli/ookla-speedtest-1.2.0-freebsd13-x86_64.pkg"
Использование
Для запуска теста скорости выполните команду:
speedtest
При первом запуске утилиты требуется принять лицензионное соглашение и политику конфиденциальности:
Для принятия условий введите YES
и нажмите [Enter]
После принятия условий утилита автоматически начнёт тестирование скорости сети:
По завершению тестирования утилита сгенерирует ссылку на результаты теста, которую можно использовать для отправки в службу поддержки или обмена результатов с друзьями.
Для выбора конкретного сервера используйте:
speedtest --server-id=1234
где 1234
- ID сервера Speedtest
Для просмотра списка доступных серверов используйте команду:
speedtest --servers
Дополнительные параметры
Основные параметры
-h, --help
- вывод справки-v
- уровень подробности логов (можно указать несколько раз, например-vvv
)-V, --version
- вывод версии утилиты-L, --servers
- вывод списка ближайших серверов--selection-details
- вывод деталей выбора сервера-s id, --server-id=id
- указание конкретного сервера по ID-o hostname, --host=hostname
- указание сервера по имени хоста-f format_type, --format=format_type
- формат вывода (по умолчаниюhuman-readable
)--progress=yes|no
- включение/отключение индикатора прогресса-I interface, --interface=interface
- привязка к определённому сетевому интерфейсу-i ip_address, --ip=ip_address
- привязка к определённому IP-адресу--ca-certificate=path
- путь к сертификату CA
Форматы вывода
human-readable
- человекочитаемый формат (установлен по умолчанию)csv
- значения, разделенные запятымиtsv
- значения, разделенные табуляциейjson
- JavaScript Object Notation (компактный)jsonl
- JavaScript Object Notation (построчный)json-pretty
- JavaScript Object Notation (форматированный)
Единицы измерения скорости
Десятичные единицы
bps
- бит в секундуkbps
- килобит в секундуMbps
- мегабит в секундуGbps
- гигабит в секундуB/s
- байт в секундуkB/s
- килобайт в секундуMB/s
- мегабайт в секундуGB/s
- гигабайт в секунду
Двоичные единицы
kibps
- кибибит в секундуMibps
- мебибит в секундуGibps
- гибибит в секундуkiB/s
- кибибайт в секундуMiB/s
- мебибайт в секундуGiB/s
- гибибайт в секунду
Сокращения для единиц измерения
-a
- сокращение для-u auto-decimal-bits
-A
- сокращение для-u auto-decimal-bytes
-b
- сокращение для-u auto-binary-bits
-B
- сокращение для-u auto-binary-bytes
Пример использования
# Базовый тест скорости к ближайшему серверу, авто-подбор
speedtest
# Тест скорости с выбором сервера и выводом в JSON
speedtest --server-id=1234 --format=json
# Тест скорости с отключенным индикатором прогресса
speedtest --progress=no
# Тест скорости с выводом в мегабайтах в секунду
speedtest --unit=MB/s
# Тест скорости с привязкой к конкретному сетевому интерфейсу
speedtest --interface=eth0