Утилита iftop показывает информацию об активных сетевых соединениях, скорость сетевой закачки/отдачи. С её помощью можно мониторить трафик в режиме online, причем с разделением по протоколам, интерфейсам и хостам. iftop можно назвать аналогом широко известного top по части использования сети: слушает трафик на указанном интерфейсе и отображает таблицу текущего использования по парам хостов.
iftop не входят в стандартный комплект дистрибутива CentOS, но легко устанавливаются из дополнительных репозиториев.
Ставится на CentOS просто. Сначала добавляем дополнительный репозиторий Repoforge
CentOS 6.* x86:
CentOS 6.* x64:
После чего уже устанавливаем саму утилиту:
Для Ubuntu из стандартных репозиториев
Есть довольно обширный man:
Выполним в консоле для всех сетевых интерфейсов:
19,1Mb 38,1Mb 57,2Mb 76,3Mb 95,4Mb
mqqqqqqqqqqqqqqqvqqqqqqqqqqqqqqqvqqqqqqqqqqqqqqqvqqqqqqqqqqqqqqqvqqqqqqqqqqqqqqq
91.226.97.41 => 192.168.192.7 778Kb 680Kb 680Kb
<= 12,0Kb 10,5Kb 10,5Kb
10.243.1.180 => 10.243.1.7 16,2Kb 15,9Kb 15,9Kb
<= 698Kb 668Kb 668Kb
10.243.1.100 => 10.243.1.4 0b 2,96Kb 2,96Kb
<= 0b 1,24Kb 1,24Kb
10.243.1.144 => 10.243.1.7 164b 2,42Kb 2,42Kb
<= 160b 1,29Kb 1,29Kb
10.243.1.4 => 10.243.1.2 496b 493b 493b
<= 2,13Kb 2,13Kb 2,13Kb
10.243.1.7 => 10.241.230.5 0b 1,47Kb 1,47Kb
<= 480b 1,06Kb 1,06Kb
239.255.255.250 => 10.243.1.17 0b 0b 0b
<= 4,70Kb 2,46Kb 2,46Kb
192.168.192.7 => 31.13.91.2 0b 952b 952b
<= 0b 1,38Kb 1,38Kb
207.171.162.148 => 192.168.192.7 0b 360b 360b
<= 0b 1,45Kb 1,45Kb
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
TX: cum: 0B peak: 0b rates: 0b 0b 0b
RX: 1,71MB 1,52Mb 1,48Mb 1,37Mb 1,37Mb
TOTAL: 1,71MB 1,52Mb 1,48Mb 1,37Mb 1,37Mb
Если мы хотим увидеть прохождение трафика в байтах (по умолчанию iftop выводит статистику в битах).
Утилита iftop поддерживает, так называемый, pcap-filter синтаксис, используемый в пакетном фильтре и с помощью флага -f:
Трафик между локальным интерфейсом и хостом 8.8.8.8
Траф идущий с локального интерфейса на Яндекс
Трафик идущий по ssh (можно использовать номер порта или же название протокола)
Трафик по http
Трафик DNS
Трафик ICMP
Можно задавать сложные фильтры, в соответствии с синтаксисом pcap-filter:
Отображать трафик по ssh с хоста ХХХХХХХ:
Отображать весь трафик, кроме широковещательных запросов:
С синтаксисом 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 - указывает специальный конфиг