- Записки IT специалиста
- Speedtest CLI — тестирование скорости соединения в командной строке
- Как проверить скорость вашего интернета в двух направлениях из командной строки с помощью инструмента Speedtest-CLI
- Что такое Speedtest-кли
- Установите speedtest-cli в Linux
- На этой странице
- Установите speedtest-cli с помощью Python PIP
- Установите speedtest-cli с помощью скрипта Python
- Установите speedtest-cli с помощью диспетчера пакетов
- Тестирование скорости интернет-соединения Linux с помощью speedtest-cli
- Заключение
Записки IT специалиста
Speedtest CLI — тестирование скорости соединения в командной строке
Сервис проверки скорости интернет-соединения Speedtest by Ookla в представлении не нуждается. Это известный и авторитетный инструмент, располагающий большим количеством серверов по всему миру. Можно без преувеличения сказать, что каждый системный администратор его хоть раз, да использовал. Говоря о Speedtest обычно, мы имеем ввиду одноименный сайт, который позволяет выполнить тестирование, но существует и вариант теста для командной строки, который позволяет использовать его на серверах и в сценариях мониторинга.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Браузерные приложения всем хороши — не требуют установки, просты в использовании, наглядны, но только вот что делать, если вы работаете на сервере без графической оболочки или хотите использовать предлагаемые приложением функции в скриптах или сценариях? В этих случаях не обойтись без вариантов приложения для интерфейса командной строки — CLI (Command Line Interface).
Speedtest предоставляет такую возможность, приложение для командной строки можно получить на официальном сайте, доступны версии для Windows, Linux, macOS и FreeBSD. Далее мы будем рассматривать версию для Linux-дистрибутивов основанных на Debian, но это касается только установки, использование утилиты во всех поддерживаемых системах одинаково.
В Linux нам доступно два варианта использования утилиты: установить ее через пакетный менеджер или скачать архив с бинарным файлом. Первый вариант является более предпочтительным, так как правилами хорошего тона в Linux является установка ПО из репозиториев, хотя опытные администраторы могут просто использовать бинарный файл. Этим и хорош Linux — каждый может настраивать систему именно так, как нравится, а не так, как задумал кто-то там.
Инструкции по установке приведены на официальной странице, но мы все равно повторим их здесь. Установку следует производить с правами суперпользователя или используя sudo. Здесь таятся некоторые различия. С правами root нам достаточно выполнить:
curl -s https://install.speedtest.net/app/cli/install.deb.sh | bash
А через sudo:
curl -s https://install.speedtest.net/app/cli/install.deb.sh | sudo bash
Почему именно так? Потому что первая команда производит скачивание скрипта и в повышении прав не нуждается. А при использовании конвейера в Linux повышение прав не наследуется, т.е. все последующие команды будут выполнены с правами пользователя, без учета sudo. Поэтому sudo надо использовать именно перед командой, требующей повышения прав, а не в начале строки.
После выполнения указанных команд в систему будет подключен новый репозиторий и будет произведено обновление списка пакетов, после чего нужно будет просто установить утилиту командой:
Пользоваться ей очень просто, если мы запустим ее без аргументов, то будет выполнен тест с автоматическим выбором ближайшего сервера и выводом результатов в терминал:
Для того, чтобы получить список ближайших серверов наберите команду:
Обратите внимание на колонку ID, потому что в утилите командной строки требуется использовать именно идентификатор сервера.
Выяснив необходимый идентификатор можно выполнить тест с данным узлом используя для указания сервера опцию -s или —server-id, например, для Ростелекома:
Но возможности Speedtest этим не ограничиваются, утилита способна выводить информацию в различных форматах: несколько вариантов JSON, CSV и TSV (CSV с разделителем Tab). Для этого используйте ключ -f или —format:
speedtest -s 3260 -f json-pretty
И если JSON вполне удобочитаемый формат, то CSV/TSV просто выводит строку чисел без расшифровки, чтобы правильно их интерпретировать можно использовать опцию добавляющую заголовки колонок —output-header:
Имейте ввиду одну особенность: вывод команд с указанием формата выводит скорость в байтах, чтобы получить привычные Mб/с полученное значение следует разделить на 125 000.
Как можно заметить, информация в нужном формате продолжает выводиться в терминал, чтобы направить ее в файл используйте:
speedtest -s 3260 -f tsv > ~/speedtest.tsv
Данная команда перенаправит вывод в файл speedtest.tsv в домашней директории пользователя и перезапишет его.
Если вы хотите дополнять файл, собирая в него информацию, то немного измените команду:
speedtest -s 3260 -f tsv >> ~/speedtest.tsv
Полученную информацию можно использовать самым разнообразным образом, скажем подключив к системе мониторинга Zabbix, где для этого имеются готовые плагины, либо, не имея иных инструментов, выполнив анализ в табличном редакторе:
Надеемся, что данный материал окажется вам полезен, а копилка администратора пополнится еще одним полезным инструментом.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
Или подпишись на наш Телеграм-канал:
Как проверить скорость вашего интернета в двух направлениях из командной строки с помощью инструмента Speedtest-CLI
Нам всегда нужно проверять скорость интернет-соединения дома и в офисе. Что нам с этим делать? Перейдите на такие веб-сайты, как Speedtest.net, и начните тестирование. Он загружает JavaScript в веб-браузере, затем выбирает лучший сервер на основе проверки связи и выводит результат. Он также использует Flash Player для получения графических результатов.
[ Вам также может понравиться: Быстро — проверьте скорость загрузки в Интернете из терминала Linux]
Как насчет безголового сервера, где нет веб-браузера, и главное, что большинство серверов безголовые. Еще одним узким местом такого тестирования скорости на основе веб-браузера является то, что вы не можете запланировать тестирование скорости через регулярные промежутки времени.
А вот и приложение \Speedtest-cli, которое устраняет такие узкие места и позволяет тестировать скорость интернет-соединения из командной строки.
Что такое Speedtest-кли
Приложение представляет собой скрипт, разработанный на языке программирования Python. Он измеряет скорость интернет-трафика в обоих направлениях. Он использует инфраструктуру speedtest.net для измерения скорости. Speedtest-cli может составить список серверов на основе физического расстояния, протестировать определенные серверы и предоставить вам URL-адрес, чтобы поделиться результатом вашего теста скорости интернета.
Чтобы установить последнюю версию инструмента speedtest-cli в системах Linux, в системе должен быть установлен Python 2.4-3.4 или более поздней версии.
[ Вам также может понравиться: Как установить последнюю версию Python 3.6 в Linux ]
Установите speedtest-cli в Linux
Инструмент speedtest-cli можно установить тремя способами. Первый метод включает в себя использование пакета python-pip , второй метод — загрузить скрипт Python, сделать его исполняемым и запустить, а третий метод — использовать менеджер пакетов. Здесь я расскажу обо всех способах…
На этой странице
- Установите speedtest-cli с помощью Python PIP
- Установите speedtest-cli с помощью скрипта Python
- Установите speedtest-cli с помощью диспетчера пакетов
Установите speedtest-cli с помощью Python PIP
Сначала вам нужно установить пакет python-pip, а затем вы можете установить инструмент speedtest-cli с помощью команды pip, как показано ниже.
Установите PIP в Debian/Ubuntu/Mint
$ sudo apt install python-pip [Python 2] $ sudo apt install python3-venv python3-pip [Python 3]
Установите PIP в CentOS/RHEL
$ sudo yum install epel-release $ sudo install python-pip
Установите PIP в Fedora
$ sudo yum upgrade python-setuptools $ sudo yum install python-pip python-wheel [Python 2] $ sudo dnf install python3 python3-wheel [Python 3]
Установите PIP в openSUSE
$ sudo zypper install python-pip python-setuptools python-wheel [Python 2] $ sudo zypper install python3-pip python3-setuptools python3-wheel [Python 3]
Установите PIP в Arch Linux
$ sudo pacman -S python2-pip [Python 2] $ sudo pacman -S python-pip [Python 3]
После установки pip вы можете установить инструмент speedtest-cli.
$ sudo pip install speedtest-cli OR $ sudo pip3 install speedtest-cli
Для обновления speedtest-cli на более позднем этапе используйте.
$ sudo pip install speedtest-cli --upgrade
Установите speedtest-cli с помощью скрипта Python
Сначала загрузите скрипт python с Github с помощью команды curl и сделайте файл скрипта исполняемым.
$ wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py $ chmod +x speedtest-cli OR $ curl -Lo speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py $ chmod +x speedtest-cli
Затем переместите исполняемый файл в папку /usr/bin , чтобы вам не нужно было каждый раз вводить полный путь.
$ sudo mv speedtest-cli /usr/bin/
Установите speedtest-cli с помощью диспетчера пакетов
Вы также можете установить speedtest-cli с помощью диспетчера пакетов по умолчанию, как показано ниже.
------ On Ubuntu/Debian/Mint ------ $ curl -s https://install.speedtest.net/app/cli/install.deb.sh | sudo bash $ sudo apt-get install speedtest
------ On RHEL/CentOS/Fedora ------ $ curl -s https://install.speedtest.net/app/cli/install.rpm.sh | sudo bash $ sudo yum install speedtest
Тестирование скорости интернет-соединения Linux с помощью speedtest-cli
1. Чтобы проверить скорость загрузки и выгрузки вашего интернет-соединения, запустите команду speedtest-cli без каких-либо аргументов, как показано ниже.
2. Для проверки скорости введите байты вместо битов.
3. Поделитесь своей скоростью передачи данных с друзьями или семьей. Вам предоставляется ссылка, по которой можно скачать изображение.
На следующем рисунке показан пример результата теста скорости, сгенерированного с помощью приведенной выше команды.
4. Не нужна дополнительная информация, кроме Ping, Download и Upload?
5. Список серверов speedtest.net в зависимости от физического расстояния. Указано расстояние в км.
6. На последнем этапе был сгенерирован огромный список серверов, отсортированных по расстоянию. Как получить желаемый результат? Скажем, я хочу видеть только сервер speedtest.net, расположенный в Мумбаи (Индия).
$ speedtest-cli --list | grep -i Mumbai
7. Проверьте скорость подключения к определенному серверу. Используйте идентификатор сервера, сгенерированный в примере 5 и примере 6 выше.
$ speedtest-cli --server 23647 ## Here server ID 23647 is used in the example.
8. Чтобы проверить номер версии и помощь инструмента speedtest-cli .
$ speedtest-cli --version $ speedtest-cli --help
Примечание. Задержка, о которой сообщает инструмент, не является его целью, и на нее не следует полагаться. Вывод значений относительной задержки зависит от сервера, выбранного для тестирования. Объем процессора и памяти в определенной степени повлияет на результат.
Заключение
Этот инструмент необходим системным администраторам и разработчикам. Простой скрипт, который работает без проблем. Я должен сказать, что приложение замечательное, легкое и делает то, что обещает. Мне не нравился Speedtest.net из-за использования флэш-памяти, но speedtest-cli дал мне повод полюбить их.
speedtest_cli – это стороннее приложение, которое не следует использовать для автоматической регистрации скорости передачи данных. Speedtest.net используется миллионами пользователей, и хорошей идеей будет установка собственного мини-сервера Speedtest.
На этом пока все, а пока следите за обновлениями и подключайтесь к Tecmint. Не забудьте оставить свой ценный отзыв в комментариях ниже. Ставьте лайки, делитесь нами и помогайте нам распространяться.