Программа iftop
Программа iftop предоставляющая информацию об активных сетевых соединениях, скорость сетевой закачки/отдачи, является аналогом широко известного top по части использования сети: слушает трафик на указанном интерфейсе и отображает таблицу текущего использования по парам хостов.
iftop не входят в стандартный комплект дистрибутива Ubuntu, но легко устанавливаются из стандартных репозиториев.
# sudo apt-get install iftop
Есть довольно обширный man:
# man iftop
Вывести весь трафик интерфейсе eth0:
# iftop -i enp0s25
или если мы хотим увидеть прохождение трафика в байтах (по умолчанию iftop выводит статистику в битах).
# iftop -i eth0 -B
Утилита iftop поддерживает, так называемый, pcap-filter синтаксис, используемый в пакетном фильтре и с помощью флага -f:
Трафик между локальным интерфейсом и хостом 8.8.8.8
# iftop -i eth0 -f “dst 8.8.8.8”
Трафик идущий по ssh (можно использовать номер порта или же название протокола)
# iftop -i eth0 -f “dst port 22″
Трафик по http
# iftop -i eth0 -f “dst port http”
Трафик DNS
# iftop -i eth0 -f “dst port domain”
Трафик ICMP
# iftop -i eth0 -f “icmp”
Можно задавать сложные фильтры, в соответствии с синтаксисом pcap-filter:
Отображать трафик по ssh с хоста ХХХХХХХ:
# iftop -i eth0 -f “port ssh and host ХХХХХХХ″
Отображать весь трафик, кроме широковещательных запросов:
# iftop -i eth0 -f “not ether host ff:ff:ff:ff:ff:ff”
С синтаксисом pcap-filter можно ознакомиться прямо из командной строки, по команде:
# man pcap-filter
Как и в top используются команды:
-n - не производить определение разрешение адресов в DNS-имена
-N - не конвертировать номера портов в названия служб(из /etc/services)
-p - запускать в неразборчивом режиме(показывать трафик между другими узлами в этом же сегменте). Надо понимать, что траффик будет показываться, если он попадёт на сетевой интерфейс, к примеру, в результате включения на коммутаторе функции зеркалирования портов
-b - не показывать полоску-график трафика
-B - показывать ширину канала в байтах
-i interface - список именованных интерфейсов для работы
-f filter code - использовать код фильтра для определения считаемых пакетов (по-умолчанию нет, считаются только IP-пакеты)
-F net/mask - показывать траффик для сети IPv4
-G net6/mask6 - показывать траффик для сети IPv6
-l - показывать и считать трафик через обратную петлю IPv6(по-умолчанию отключено)
-P - показывать порты соединений
-m limit - адать потолок шкалы ширины канала
-c config file - указывает специальный конфиг