ESC

Start typing to search across invoices, services, domains, tickets, and more...

Search... Ctrl+K
Сеть и IP

Тест скорости сети сервера и трассировка маршрута: mtr, traceroute, iperf3 и speedtest-cli

6 шагов 9 мин чтения 12 просмотров 0
Содержание

Когда сервер «тормозит», теряет пакеты или отвечает с большой задержкой, одних ощущений недостаточно для поиска причины. В статье описаны основные инструменты для теста скорости сети сервера и трассировки маршрута: mtr и traceroute для анализа пути и потерь, iperf3 и speedtest-cli для замера полосы, а также как подготовить результаты для техподдержки. Подходит для Linux (Debian/Ubuntu, CentOS/Rocky/AlmaLinux) и Windows.

Шаг 1: Установка инструментов для теста скорости и трассировки

Debian / Ubuntu:

apt update
apt install -y mtr-tiny traceroute iperf3 speedtest-cli

CentOS / Rocky / AlmaLinux (speedtest-cli через pip):

dnf install -y mtr traceroute iperf3 python3-pip
pip3 install speedtest-cli

В CentOS 7 используйте yum вместо dnf.

Шаг 2: Трассировка и поиск потерь пакетов с помощью mtr

mtr объединяет ping и traceroute: непрерывно опрашивает каждый узел и считает потери и задержку. Это самый полезный инструмент для диагностики маршрута.

mtr -rwzbc 100 8.8.8.8

Ключи: -r режим отчёта, -w широкий вывод, -z показать ASN, -b IP и имена хостов, -c 100 — 100 пакетов. Если цель блокирует ICMP, используйте TCP:

mtr -rwc 100 -T -P 443 www.example.com
Ориентируйтесь на последний узел. Потери на промежуточном узле, которые не продолжаются дальше, обычно означают лишь ограничение ICMP на этом маршрутизаторе, а не реальные потери.

Шаг 3: Просмотр маршрута через traceroute / tracert

traceroute -n 8.8.8.8
traceroute -n -T -p 80 www.example.com

На локальном ПК с Windows используйте встроенные команды (-d отключает разрешение имён). pathping дополнительно считает потери на каждом узле, как mtr:

tracert -d 203.0.113.10
pathping -n 203.0.113.10

Шаг 4: Замер полосы между двумя узлами через iperf3

iperf3 точно измеряет пропускную способность между двумя точками, не завися от публичных узлов. Запустите серверную часть на сервере:

iperf3 -s

Подключитесь с другой машины как клиент (-P 4 — четыре параллельных потока, -R — обратное направление):

iperf3 -c 203.0.113.10 -P 4 -t 30
iperf3 -c 203.0.113.10 -P 4 -t 30 -R

По умолчанию iperf3 использует TCP-порт 5201: откройте его в файрволе, а после теста остановите сервер через Ctrl+C.

Шаг 5: Проверка исходящей полосы через speedtest-cli

speedtest-cli --secure
speedtest-cli --list | head -n 20
speedtest-cli --secure --server 12345

--list покажет ближайшие узлы, а --server позволит выбрать узел по ID. Результаты сильно зависят от загрузки узла, поэтому проверьте несколько.

Шаг 6: Отправка результатов в техподдержку

Чтобы быстро найти проблему, предоставьте данные в обоих направлениях: mtr (или WinMTR / pathping) с вашего компьютера до сервера и mtr с сервера до вашего внешнего IP. Сохраните вывод в текстовый файл:

mtr -rwzbc 100 ВАШ_ВНЕШНИЙ_IP > mtr-from-server.txt

В тикете укажите IP сервера, ваш внешний IP и провайдера, период возникновения проблемы и текстовые результаты тестов (по возможности текст, а не скриншоты).

Частые вопросы

Нормально ли 100% потерь на одном промежуточном узле в mtr?

Если на конечном узле потерь нет, промежуточные потери обычно означают, что маршрутизатор не отвечает на запросы. Проблема есть, только если потери начинаются на узле и сохраняются до цели.

speedtest показывает скорость ниже оплаченной.

Публичные узлы могут быть перегружены или ограничены. Используйте iperf3 между двумя заведомо исправными машинами и тестируйте в разное время.

Замедление только в часы пик. Как диагностировать?

Запустите mtr в период замедления, зафиксируйте время и отправьте вместе с результатом из обычного периода — так проще найти перегруженный участок.

Если проблема не решена, создайте тикет в круглосуточную техподдержку IMIDC и приложите результаты тестов.

Помог ли вам данный ответ?

Похожие руководства