iftop — это простая, но полезная утилита командной строки для систем Linux, которая показывает трафик между хостами в реальном времени. Принцип работы этой утилиты похож на механизм работы утилиты top, но все же фокусируется больше на мониторинге сетевой активности.

Как установить и настроить iftop в Linux

Процесс установки iftop зависит от дистрибутива Linux. Соотвественно, используйте следующие команды для установки на конкретный дистрибутив:

  • Debian/Ubuntu: Введите команду sudo apt update, а затем sudo apt install iftop.
  • CentOS/RHEL/Fedora: Для старых версий может потребоваться установка репозитория EPEL (sudo yum -y install epel-release), после вы можете установить iftop с помощью команды sudo dnf install iftop (для более новых версий) или sudo yum install iftop.
  • Arch Linux: Введите sudo pacman -S iftop.

После установки потребуются права root, так как для доступа к пакетам требуется доступ к сетевому интерфейсу.

Основные команды и принципы работы iftop

Для запуска iftop нужно ввести в терминале команду: sudo iftop. По умолчанию iftop отобразит статистику по первому активному сетевому интерфейсу.

 

Запуск с параметрами

Для того, чтобы уточнить параметры сетевого интерфейса используйте опцию -i, например:

sudo iftop -i eth0

Для отображения номеров портов и IP-адресов используйте опции -P и -n: 

sudo iftop -i eth0 -P -n.

 

Команды внутри iftop

iftop поддерживает интерактивные команды, которые можно активировать с помощью следующих опций:

  • q — выход из программы.
  • h — справка/список команд.
  • n — отображение имен хостов (DNS-запросов)
  • p — отображение портов.
  • t — переключения форматов изображения.
  • S — сортировка данных по исходному адресу.
  • D — сортировка по адресу назначения.
  • 1, 2, 3 — сортировка по скорости трафика (по возрастанию).

Практическое применение iftop для анализа трафика

iftop — это полезный инструмент для понимания распределения нагрузки и не только. Он такж используется для:

  • Поиска источника большого трафика. Если сеть работает медленно или нестабильно, iftop помогает определить как активности, потребляющие много ресурсов, так и несанкционированные активности по типу DDoS-атаки.
  • Мониторинга портов или протоколов. Используя синтаксис pcap-filter вместе с iftop можно отслеживать трафик по портам. Например, HTTP-трафик (порт 80) можно отслеживать с помощью sudo iftop -i eth0 -f “port 80”.
  • Проверки путей трафика. Утилита также позволяет проверить идет ли трафик через ожидаемые интерфейсы и к ожидаемым ли адресам.
  • Проверки режима сетевой работы. Регулярное использование iftop также позволяет узнать нормальный режим работы сети и заметить аномалии.

 

 

Читайте также: 6 лучших дистрибутивов Linux для VPS 

Интерпретация показателей в интерфейсе iftop

Информация о трафике может выражатся в нескольких областях, в том числе в основной таблице трафика и нижней панели статистики.

В центре экрана обычно есть список активных сетевых соединений. Каждое соединение представлено двумя строками:

  1. Хост-источник => Хост-назначения: Показывает исходящий трафик (TX).
  2. Хост-назначения <= Хост-источник: Показывает входящий трафик (RX).

Рядом с адресами есть три колонки, которые показывают среднюю пропускную способность за последние 2, 10, и 40 секунд.

В нижней панели экрана iftop отображает статистику по следующим показателям:

  • TX (Transmit): Суммарная скорость исходящего трафика.
  • RX (Receive): Суммарная скорость входящего трафика.
  • TOTAL: Общая скорость (TX + RX).
  • peak: Максимальная (пиковая) скорость, зафиксированная с момента запуска iftop.
  • cumm: Общий объем переданных данных (накопительный итог) с момента запуска.

Автоматизация анализа сетевого трафика с iftop

iftop также можно использовать для получения статистики в неинтерактивном режиме ради автоматического сбора данных.

Вы можете использовать опцию -t (текстовый режим) и -s (количество секунд для сбора данных). Например, чтобы получить статистику за 60 секунд и сохранить её в файл:

sudo iftop -t -s 60 > iftop_report_$(date +%Y%m%d_%H%M%S).txt

Также можно ограничить количество строк вывода с помощью опции -L, например:

sudo iftop -t -s 10 -L 5.

Такой текстовый отчет может быть интегрирован в системы мониторинга для автоматического оповещения при превышении пороговых значений трафика.

Итоги и рекомендации по использованию iftop

iftop — это высокоэффективный и простой инструмент для точной диагностики проблем с сетевой производительностью в Linux.

Рекомендации:

  1. Используйте фильтры: Всегда применяйте фильтры (f) для ограничения трафика, который вы анализируете. Это уменьшает нагрузку на процессор и делает вывод более релевантным.
  2. Используйте n и P: В большинстве случаев рекомендуется использовать опции n (без DNS-имен) и P (отображать порты) для получения максимально быстрой и точной информации без задержек, связанных с разрешением имен.
  3. Обращайте внимание на 2-секундный столбец: Столбец скорости за 2 секунды наиболее точно отражает текущую активность, в то время как 40-секундный — сглаженный тренд.
  4. Комбинируйте с другими утилитами: iftop показывает, кто и куда отправляет трафик. Для определения какой процесс стоит за этим трафиком, используйте утилиты, такие как lsof -i или netstat -p.