Сегодня в статье разберем пример, как в серверных дистрибутивах Linux можно осуществить проверку скорости интернета из под консоли. Скорость подключения к интернету — это очень важный параметр работы сети.
Проверка скорости интернета Linux может быть выполнена с помощью специального сервиса — speedtest.net. Если у Вас Десктопная версия Linux,то Вы можете открыть сайт проекта в браузере и пройти тест с помощью web-приложения. Но сегодня не об этом. Как тоже самое осуществить, но уже через терминал в Linux. Вот данный пример мы с вами и рассмотрим сегодня.
Проверка скорости интернета через терминал в Linux.
Конечно, вы могли бы скачать файл с помощью wget и таким образом узнать скорость интернета. Но тогда на скорость загрузки будет влиять не только пропускная способность вашей сети, но и скорость отдачи сервера. Поэтому лучше использовать сервис speedtest, это, возможно, даже из командной строки.
speedtest-cli — это скрипт, написанный на Python, который позволяет измерить скорость интернета linux в двух направлениях. Вы можете проверять скорость сети на определенном расстоянии или для конкретных серверов, а также поделиться своим результатом через интернет.
Установка SPEEDTEST-CLI в Ubuntu Server
Утилита может быть установлена двумя способами. Или из репозитория, либо прямо с Github, мы рассмотрим оба способа. Начнем с простого.
Сначала обновите систему до самой последней версии:
sudo apt update
Затем установите саму программу speedtest-cli:
sudo apt install speedtest-cli
Второй способ немного посложнее, сначала скачайте файл программы с GitHub и дайте ему права на выполнение:
wget -O speedtest-cli https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
sudo chmod +x speedtest-cli
Вы можете скопировать скрипт в директорию /bin
или выполнять его прямо из той директории в которую его скачали.
Проверка скорости интернета
Чтобы проверить скорость интернет linux достаточно запустить скрипт без параметров:
speedtest-cli
Вы можете посмотреть результат проверки в байтах, а не в битах:
speedtest-cli --bytes
Для получения информации только о ping, скорости загрузки и отдачи:
speedtest-cli --simple
Посмотреть список доступных серверов можно с помощью параметра --list
, но вывод будет очень большой, для сокращения воспользуемся программой grep и отфильтруем по определенному городу:
speedtest-cli --list | grep Moscow
Теперь вы можете определить скорость соединения с нужным сервером, для этого достаточно указать его ID:
speedtest-cli --server 14190
Чтобы вывести версию утилиты выполните:
speedtest-cli --version
А для просмотра всех возможных опций программы:
speedtest-cli --help
Установка SPEEDTEST | man от разработчика
Существует еще одна версия speedtest. На официальной странице есть руководство по инсталляции. Приведу пример для инсталляции на Ubuntu\Debian систему. Для начала устанавливаем все зависимости:
sudo apt-get install gnupg1 apt-transport-https dirmngr
Далее добавляем в систему ключ
export INSTALL_KEY=379CE192D401AB61
export DEB_DISTRO=$(lsb_release -sc)
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $INSTALL_KEY
echo "deb https://ookla.bintray.com/debian ${DEB_DISTRO} main" | sudo tee /etc/apt/sources.list.d/speedtest.list
Обновляем репозитории
sudo apt update
Если до этого устанавливали speedtest-cli, то удаляем его:
sudo apt remove speedtest-cli
Ну и в завершении устанавливаем саму программу:
sudo apt install speedtest
Для проверки скорости интернет соединения набираем в консоле:
speedtest
Проверка скорости сети с помощью iPerf
iPerf — отличный способ проверить скорость вашей локальной сети (а не скорость Интернета, как это делает предыдущий инструмент). Пользователи Debian, Raspbian и Ubuntu могут установить его с помощью apt:
sudo apt install iperf
Проверка скорости в локальной сети
После установки вам понадобятся две машины в одной сети, чтобы использовать эту программу (на обоих должен быть установлен iPerf). Определите один в качестве сервера.
Получаем ip адрес сервера:
ip addr show | grep inet.*brd
Ваш локальный IP-адрес (при условии, что локальная сеть IPv4) начинается с 192.168.*.* или 10.*.*.*
Запишите IP-адрес, чтобы вы могли использовать его на другом компьютере (тот, который обозначен как клиент).
Запустите iperf на сервере:
iperf -s
Теперь он ждет входящих соединений от клиентов.
Как видете сервер будет прослушивать порт 5001. Если у вас закрыт данный порт его необходимо открыть командой.
iptables -A INPUT -p tcp -m multiport --dports 5001 -j ACCEPT
Назначьте другой компьютер клиентом и выполните эту команду, подставив IP-адрес вашего сервера, который вы узнали с помощью команды выше, например:
iperf -c 10.1.1.3
Тест занимает всего несколько секунд.
[endtxt]