Iftop nasłuchuje na wskazanym interfejsie i wyświetla w czasie rzeczywistym zużywane pasmo w czasie połączenia danych par hostów.

Instalacja (zakładając że jesteśmy zalogowani w konsoli jako root) jest jak większość rzeczy w naszym ulubionym środowisku prosta i sprowadza się do jednego polecenia:

Systemy Debian/Ubuntu:
[root@server ~]# apt-get install iftop

Systemy z rodziny RedHat:
[root@server ~]# yum install iftop

Jesteśmy więc gotowi do analizy co na łączach piszczy, ale mała uwaga: iftop wymaga odpowiednich praw do monitorowania ruchu sieciowego, więc uruchamiamy go jako administrator.

[root@server ~]# iftop
iftop

Na głównym ekranie widzimy aktywne połączenia a więc pary adresów komputerów pomiędzy którymi jest połączenie.

Dalsze 3 kolumny liczb to średnie obciążenie łącza liczone odpowiednio przez ostatnie 2, 10 i 40 sekund. Ruch możemy obserwować zarówno w obu kierunkach (przychodzący i wychodzący jak przedstawiono na powyższym screen’ie), jak i tylko przychodzący bądź wychodzący – przełączamy klawiszem “t“.

W podsumowaniu widzimy linie “TX” i “RX“, czyli wysyłane i odbierane dane, gdzie “cum” to ich całkowita “waga” od początku uruchomienia iftop, a “peak” to wartości szczytowe w tym czasie. Natomiast kolumna “rates” to ilości danych w okresach 2, 10 i 40 sekund.

Mimo że iftop przedstawia informacje na jednym ekranie, to mamy spory wpływ na sposób ich przedstawiania. Wszystkie funkcje dostępne są przy pomocy klawisza “?“. I tak na przykład możemy włączyć możliwość wyświetlania wykresów zajętości pasma na skali logarytmicznej bądź liniowej: klawisz “L” – rodzaj skali, “B” – pasmo z ostatnich 2, 10, bądź 40 sekund, “b” – wyłączenie/załączenie skali. Poniższy wykres przedstawia obciążenie przy skali logarytmicznej z ostatnich 40 sekund.

iftop - skala logarytmiczna

Możemy oczywiście włączyć rozwiązywanie nazw N, jak i wyświetlanie portów źródłowych oraz docelowych p.

Na koniec bardzo przydatna rzecz – iftop umożliwia definiowanie filtrów w podobny sposób jak tcpdump. Jest to o tyle przydatne, że możemy monitorować ruch tylko pomiędzy interesującymi nas komputerami. Może się to przydać, gdy jesteśmy w sieci lokalnej, składającej się z kilkudziesięciu komputerów – pakiety rozgłoszeniowe potrafią skutecznie zalać nas informacjami, które niekoniecznie nam są w danej chwili przydatne, tutaj 192.168.11.255.

iftop_broad

W tym przypadku możemy odfiltrować nieinteresujący nas ruch jednym wyrażeniem “not ip host 192.168.11.255 and not ip host 255.255.255.255” lub zakładając że działamy w sieci Ethernet “not ether host ff:ff:ff:ff:ff:ff“. Dostęp do filtra uzyskujemy klawiszem “f“. Po zatwierdzeniu filtra, odczekajmy 40 sekund, nim przyniesie efekty, bo pamiętajmy, tyle przetrzymuje informacje o połączeniach iftop.

iftop_filter

Zachęcamy do zapoznania się z iftop, poeksperymentowania z ustawieniami i przejrzeniem man iftop, gdzie znajdziemy sporo przydatnych informacji.

  • Marcin

    Polecam również iptraf

  • Roomcays

    Dzięki! Nie znałem wcześniej tego narzędzia!