Поиск по сайту:
Сколько держав даже не подозревают о моем существовании! (Б. Паскаль).

Как отслеживать задержку сети в Linux с помощью Ping, Mtr и Smokeping

17.04.2025
Как отслеживать задержку сети в Linux с помощью Ping, Mtr и Smokeping

Задержка в сети — это время, которое требуется для передачи данных между вашим компьютером и удалённым сервером. Высокая задержка может приводить к медленному просмотру веб-страниц, задержкам в играх и сбоям в работе облачных сервисов. Если вы используете Linux, у вас уже есть полезные инструменты для измерения и мониторинга задержки в сети в реальном времени или в течение длительного периода.

В этой статье мы объясним, как:

  • Запустите простой тест задержки, используя команду ping
  • Отслеживание сетевых путей и обнаружение проблемных узлов с помощью mtr
  • Задержка графика с течением времени с использованием smokeping

 

Все инструменты бесплатны и доступны в большинстве дистрибутивов Linux.

 

Что такое задержка в сети?

Задержка обычно измеряется в миллисекундах (мс). Она представляет собой время, за которое небольшой пакет данных покидает ваш компьютер, достигает целевого сервера и возвращается обратно.

Общие значения задержки:

  • <30 мс: Отлично (локальная сеть или оптоволокно)
  • 30-70 мс: Хорошо (обычная широкополосная связь)
  • 70–150 мс: приемлемо (небольшая задержка)
  • >150 мс: высокая задержка (может повлиять на производительность)

 

Проверьте Задержку В Сети С Помощью команды ping

Самый простой способ проверить задержку — использовать команду ping . Команда ping отправляет пакеты ICMP Echo Request на целевой объект (например, веб-сайт или сервер) и измеряет время прохождения (RTT) — время, необходимое для получения ответа.

Команда ping — это мощный инструмент для измерения задержки в сети в Linux. Анализируя минимальную/среднюю/максимальную задержку, потерю пакетов и дрожание, вы можете диагностировать проблемы с подключением.

 

Базовый пример:

ping google.com

 

Это многократно отправляет пакеты на google.com.

Вы увидите результат, подобный:

PING google.com(maa03s36-in-x0e.1e100.net (2404:6800:4007:814::200e)) 56 data bytes
64 bytes from maa03s36-in-x0e.1e100.net (2404:6800:4007:814::200e): icmp_seq=1 ttl=59 time=16.1 ms
64 bytes from maa03s36-in-x0e.1e100.net (2404:6800:4007:814::200e): icmp_seq=2 ttl=59 time=17.3 ms

 

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

Здесь,

  • time=16.1 ms это задержка (в миллисекундах) для этого пакета.
  • Чем меньше, тем лучше. Значение ниже 100 мс характерно для большинства интернет-соединений.
Читать  7 способов сравнить текстовые файлы в Linux

 

Отправьте только 5 Пингов:

ping -c 5 google.com

 

Это отправляет 5 запросов на эхо-ответ в google.com и останавливается. На выходе отображается задержка для каждого ответа.

PING google.com(maa03s36-in-x0e.1e100.net (2404:6800:4007:814::200e)) 56 data bytes
64 bytes from maa03s36-in-x0e.1e100.net (2404:6800:4007:814::200e): icmp_seq=1 ttl=59 time=15.4 ms
64 bytes from maa03s36-in-x0e.1e100.net (2404:6800:4007:814::200e): icmp_seq=2 ttl=59 time=16.3 ms
64 bytes from maa03s36-in-x0e.1e100.net (2404:6800:4007:814::200e): icmp_seq=3 ttl=59 time=17.2 ms
64 bytes from maa03s36-in-x0e.1e100.net (2404:6800:4007:814::200e): icmp_seq=4 ttl=59 time=18.2 ms
64 bytes from maa03s36-in-x0e.1e100.net (2404:6800:4007:814::200e): icmp_seq=5 ttl=59 time=69.2 ms

--- google.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 15.362/27.250/69.246/21.019 ms

 

Здесь,

  • time=15.4 ms это задержка для каждого пакета.
  • В итоге вы получите min/avg/max/mdev (минимум, среднее значение, максимум и стандартное отклонение).

 

Сводная статистика команды ping

--- google.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 15.362/27.250/69.246/21.019 ms

 

Статистика пакетной передачи:

  • 5 packets transmitted: было отправлено 5 пакетов ICMP-эхо-запроса.
  • 5 received: Все 5 пакетов получили ответ (ICMP Echo Reply).
  • 0% packet loss: Ни один пакет не был потерян (идеальные условия работы сети).
  • time 4005ms: Общее время, затраченное на тест (~ 4 секунды).

 

Статистика времени в пути туда и обратно (RTT):

Это показывает задержку (delay) в миллисекундах (мс).:

  • min (15,362 мс): самое быстрое время отклика.
  • avg (27,250 мс): среднее время отклика (наиболее важно для общей задержки).
  • max (69,246 мс): самое медленное время отклика.
  • mdev (21,019 мс)среднее отклонение (измеряет джиттер — колебания задержки).

 

Согласно приведенной выше статистике, мы можем интерпретировать следующее:

  • Ваше подключение к Google работает.
  • Задержка в основном небольшая, но есть некоторое дрожание (колебания).
  • Нет потери пакетов — нет отброшенных пакетов.
  • Это приемлемо для просмотра веб-страниц и даже видеозвонков.
  • Если вы видите частые высокие значения mdev или packet loss, это признак нестабильности.
Читать  Использование команды Bash printf для печати форматированных выходных данных

 

Расширенные команды Ping для тестирования сети

A. Предельное количество пингов (-c)

ping -c 5 google.com  # Отправляет только 5 пакетов

 

B. Изменить размер пакета (-s)

ping -s 1000 google.com # Отправляет пакеты по 1000 байт

 

C. Более быстрые запросы (-i)

ping -i 0,2 google.com # Отправляет запрос каждые 0,2 секунды

 

D. Регистрация временных меток (-D)

ping -D google.com >> ping_log.txt # Журналы с отметками времени

 

E. Непрерывный пинг для мониторинга

ping google.com   # Выполняется до тех пор, пока не будет остановлен вручную (Ctrl + C)

Анализ задержки в сети с помощью mtr (Ping + Traceroute)

mtr показывает, как пакеты перемещаются по сети. Сочетает в себе функции ping и traceroute. Для тех, кто не знает, mtr расшифровывается как Mtraceroute.

Вы можете использовать mtr, когда;

  • Диагностика медленных подключений,
  • Поиск точки сбоя сети,
  • Замечаю периодические выпадения хмеля.

 

Установите mtr инструмент в вашу систему Linux с помощью команды:

sudo apt install mtr         # Debian/Ubuntu
sudo dnf install mtr         # Fedora

 

Теперь проанализируйте задержку в сети с помощью команды:

mtr google.com

 

При этом отображается оперативная таблица переходов, задержек и потери пакетов.

Анализируйте задержку в сети с помощью mtr

Анализируйте задержку в сети с помощью mtr

 

Вы также можете сгенерировать отчет:

mtr -c 100 -r google.com > report.txt

 

Другие полезные опции:

  • -T: используйте TCP вместо ICMP
  • -u: использовать UDP
  • -c: количество отправляемых пакетов

 

Контролируйте задержку в сети с течением времени с помощью smokeping

Для отслеживания задержек в прошлом используйте smokeping. Он работает в фоновом режиме и сохраняет графики, которые вы можете просматривать в браузере. Обратите внимание, что для просмотра графиков этому инструменту требуется веб-сервер, например Apache или Nginx.

Копчение полезно для,

  • Долгосрочный мониторинг,
  • Характерные признаки (например, вечернее замедление),
  • Мониторинг нескольких серверов.
Читать  Как использовать bridge-utils в Ubuntu

 

Для установки smokeping в системах на базе Debian используйте следующую команду:

sudo apt install smokeping apache2

 

После установки отредактируйте целевой файл:

sudo nano /etc/smokeping/config.d/Targets

 

Добавьте раздел, подобный:

+ Google
menu = Google DNS
title = Google Ping
host = 8.8.8.8

 

Перезапустите службу отслеживания дыма:

sudo systemctl restart smokeping

 

Затем откройте веб-браузер и перейдите по адресу http://localhost/smokeping.

Вы увидите графики задержки и потери пакетов.

Контролируйте задержку в сети с помощью smokeping

Контролируйте задержку в сети с помощью smokeping

 

Нажмите на каждую ссылку в левой панели, чтобы просмотреть соответствующий график.

 

Устранение неполадок С высокой задержкой и потерей пакетов

Если результаты вашего пинга показывают высокую задержку или потерю пакетов, попробуйте следующие способы устранения неполадок:

1. Проверьте ваше интернет-соединение

  • Перезапустите свой маршрутизатор / модем.
  • Протестируйте с помощью проводного подключения (Wi-Fi может привести к задержке).

 

2. Сравните различные цели

ping google.com
ping facebook.com

 

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

 

3. Используйте Traceroute для поиска сетевых переходов

traceroute google.com  # Показывает задержку каждого перехода

 

Высокая задержка на определенном этапе перехода? Это узкое место.

 

4. Проверьте, нет ли проблем с интернет-провайдером

Обратитесь к своему провайдеру, если несколько сайтов имеют высокую задержку.

 

Заключение

Измерить задержку сети в Linux несложно, если знать, какие инструменты использовать. Начните с ping для быстрых тестов. Используйте mtr для устранения неполадок на конкретных маршрутах. Разверните smokeping для получения визуальных отчётов с течением времени.

С помощью этих инструментов вы можете:

  • Обнаружение медленных или отказывающих сетевых соединений,
  • Докажите, что проблема связана с вашим провайдером,
  • Отслеживайте закономерности задержек с течением времени.

 

На этом пока всё. Какие инструменты вы используете для измерения и мониторинга задержки в сети? Пожалуйста, поделитесь в комментариях ниже.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
Поделиться в соц. сетях:



Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

**ссылки nofollow

Это может быть вам интересно


Рекомендуемое
Коды завершения, также известные как коды возврата или статусы завершения,…

Спасибо!

Теперь редакторы в курсе.