Skip to main content

Диагностика сетевых проблем

Диагностика сетевых проблем в ОС Linux включает исследование и анализ различных аспектов сети для определения и устранения проблем.

Возможные причины проблем:
  • Неправильная конфигурация сетевых настроек.
  • Проблемы с подключением к сети или устройством сетевого интерфейса.
  • Конфликты IP-адресов или другие проблемы сетевого стека.
  • Недоступность сетевых ресурсов, таких как серверы или маршрутизаторы.
Базовые утилиты для диагностики сетевых проблем:
  • ping: Позволяет проверить доступность узла в сети и оценить время отклика.
  • traceroute или tracepath: Определяют маршрут пакетов к заданному узлу и показывают промежуточные хопы.
  • ifconfig или ip: Позволяют просмотреть и настроить сетевые интерфейсы, IP-адреса и другие параметры.
  • netstat или ss: Предоставляют информацию о сетевых соединениях, портах и маршрутах.
  • tcpdump: Позволяет захватывать и анализировать сетевой трафик для обнаружения проблем.
  • nslookup или dig: Предоставляют информацию о DNS-запросах и разрешении имён.
  • iptables или ufw: Позволяют управлять правилами брандмауэра и фильтровать сетевой трафик.
  • mtr: mtr (My Traceroute) - это комбинированный инструмент, который объединяет функции ping и traceroute. Он предоставляет непрерывный мониторинг сети и позволяет определить проблемные участки на маршруте к заданному узлу.
Влияние сетевых проблем:
  • Потеря или задержка сетевых пакетов, что может привести к снижению производительности приложений и служб.
  • Недоступность сетевых ресурсов, таких как серверы, базы данных или веб-сайты, что может привести к простою приложений работающих через сеть.
  • Неправильное маршрутизирование или нарушение безопасности, что может повлиять на интеграцию и связность сети.
MTR

mtr выводит информацию о промежуточных хопах, аналогично traceroute, но отличается тем, что продолжает слать пакеты на каждый хоп в режиме реального времени. Это позволяет получать актуальные данные о времени отклика и потерях пакетов.

Преимущества использования mtr:

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

Информация о потере пакетов (Loss%) позволяет определить наличие проблем на определенных хопах, а столбцы Avg, Best, Worst и StDev предоставляют информацию о времени отклика и его статистике.

Пример использования mtr:

mtr google.com

Эта команда запустит mtr для мониторинга маршрута к google.com и будет выводить статистику времени отклика и потерь пакетов для каждого хопа в режиме реального времени.

Пример вывода команды:

HOST: имя_хоста        Loss%    Snt   Last   Avg  Best  Wrst StDev
  1.|-- прыжок1           0.0%     5    0.5   1.2   0.5   2.3   0.8
  2.|-- прыжок2           0.0%     5    1.5   2.0   1.5   2.8   0.4
  3.|-- прыжок3           0.0%     5    2.8   3.1   2.8   3.7   0.3
  4.|-- прыжок4           0.0%     5    5.1   5.2   4.9   5.6   0.2
  5.|-- прыжок5           0.0%     5    4.3   4.5   4.3   4.9   0.2
  6.|-- google.com       0.0%     5    6.1   5.8   5.4   6.6   0.4

Данный пример показывает что проблем сетевого характера нет. Значение Loss% равно 0.0%, что означает отсутствие потери пакетов на всех хопах. Столбец Avg показывает среднее время отклика (в миллисекундах) на каждом хопе. Время отклика на каждом хопе является стабильным и достаточно низкими.

Пример, когда на маршруте наблюдаются проблемы:

HOST: имя_хоста        Loss%    Snt   Last   Avg  Best  Wrst StDev
  1.|-- прыжок1           0.0%     5    0.5   1.2   0.5   2.3   0.8
  2.|-- прыжок2           5.0%     5    1.5   2.0   1.5   2.8   0.4
  3.|-- прыжок3          10.0%     5    2.8   3.1   2.8   3.7   0.3
  4.|-- прыжок4          50.0%     5    5.1   5.2   4.9   5.6   0.2
  5.|-- прыжок5          80.0%     5    4.3   4.5   4.3   4.9   0.2
  6.|-- google.com      100.0%     5    6.1   5.8   5.4   6.6   0.4

В этом примере наблюдается потеря пакетов на нескольких хопах. Значение Loss% показывает процент потери пакетов на каждом хопе. Как видно, потери пакетов возникают на хопах 2, 3 и 4, а также на хопе 5 уже наблюдается потеря 80% пакетов. На последнем хопе (целевом сервере) потеря пакетов достигает 100%. Это указывает на проблемы в сети на пути к целевому серверу.

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

HOST: имя_хоста        Loss%    Snt   Last   Avg  Best  Wrst StDev
  1.|-- прыжок1           0.0%     5    0.5   1.2   0.5   2.3   0.8
  2.|-- прыжок2           0.0%     5    5.1   5.2   4.9   5.6   0.2
  3.|-- имя_устройства   100.0%     5    0.0   0.0   0.0   0.0   0.0
  4.|-- google.com       100.0%     5    6.1   5.8   5.4   6.6   0.4

В данном примере видно, что на хопе 5 (имя_устройства) наблюдается потеря всех пакетов (100% потерь). Это указывает на проблему, возникающую на устройстве пользователя, скорее всего на его компьютере или домашнем роутере. Проблема может быть связана с конфигурацией сетевых настроек, проблемами с подключением или неисправностью устройства.

Пример, когда у целевого сервера есть проблемы:

HOST: имя_хоста        Loss%    Snt   Last   Avg  Best  Wrst StDev
  1.|-- прыжок1           0.0%     5    0.5   1.2   0.5   2.3   0.8
  2.|-- прыжок2           0.0%     5    1.5   2.0   1.5   2.8   0.4
  3.|-- прыжок3           0.0%     5    2.8   3.1   2.8   3.7   0.3
  4.|-- прыжок4           0.0%     5    5.1   5.2   4.9   5.6   0.2
  5.|-- прыжок5           0.0%     5    4.3   4.5   4.3   4.9   0.2
  6.|-- google.com       50.0%     5    6.1   5.8   5.4   6.6   0.4

В данном примере на хопе 6 (google.com) наблюдается 50% потери пакетов. Это может указывать на проблемы, возникающие непосредственно на целевом сервере. Возможные причины могут включать перегрузку сервера, неполадки в сети у хостинг-провайдера или проблемы с самим сервером.