Netzwerk Traffic unter Linux anzeigen

Aus Laub-Home Wiki

Möchte man unter Linux wissen, was für Datenverbindungen offen sind, bzw. was für eine Bandbreite gerade über die Interface geht, dann gibt es hierfür einige Tools. Ich gehe hier mal auf ein paar davon ein. Ziel war es, zu wissen, ob und was für Traffic über meinen Raspberry Pi iPhone Hotspot im Failover Fall läuft. Mich interessierte nicht nur, ob und wieviel Bandbreite über das iPhone Hotspot Interface lief, sondern auch um was für Internet Verbindungen es sich handelt.

nload - Bandbreiten Monitor

nload zeigt einem die aktuelle Bandbreite an, die über das ausgewählte Interface geht (Up/Down) wie auch den gesamt übertragenen Traffic seit das Interface hochgefahren ist.

Installation unter Debian/Ubuntu via Paketmanager:

apt update && apt install nload -y

gestartet wird das tool dann mit -u h für human readable und dem gewünschten Interface Namen, bei mir eth1 (ip a gibt einem alle vorhandenen Interface an):

nload -u h eth1

die Ausgabe sieht dann in etwa so aus:

Device eth1 [172.20.10.4] (1/1):
===========================================================
Incoming:

                                         Curr: 0.00 Bit/s
                                         Avg: 64.00 Bit/s
                                         Min: 0.00 Bit/s
                                         Max: 792.00 Bit/s
                                         Ttl: 635.96 kByte
Outgoing:


                                         Curr: 0.00 Bit/s
                                         Avg: 64.00 Bit/s
                                         Min: 0.00 Bit/s
                                         Max: 792.00 Bit/s
                                         Ttl: 208.22 kByte

iftop - Traffic Auswertung

Installation unter Debian/Ubuntu via Paketmanager:

apt update && apt install iftop -y

gestartet wird das Tool dann mit -B für bytes und -i INTERFACENAME:

iftop -B -i eth1

die Ausgabe sieht dann in etwa so aus:

                   1.56KB             3.12KB             4.69KB             6.25KB        7.81KB
└──────────────────┴──────────────────┴──────────────────┴──────────────────┴───────────────────
172.20.10.4                        => server-13-225-38-94.cdg3.r.cloudf     0B      8B      7B
                                   <=                                       0B      8B      7B
172.20.10.4                        => 172.20.10.1                           0B      0B      2B
                                   <=                                       0B      0B      3B







────────────────────────────────────────────────────────────────────────────────────────────────
TX:             cum:    323B    peak:     77B                   rates:      0B      8B      8B
RX:                     378B              63B                               0B      8B     10B
TOTAL:                  701B             119B                               0B     17B     18B 

nethogs - Traffic nach Prozess

nethogs gibt einem die Möglichkeit zu sehen, welcher Prozess gerade Traffic auf einem Interface verursacht.

Installation unter Debian/Ubuntu via Paketmanager:

apt update && apt install nethogs -y

ausgeführt wird der Befehl mit -p (Promiscious Mode) und dem Interface Namen. Hier eth0:

nethogs -p eth0

Das zeigt einem dann den User und den Prozess an, der gerade Bandbreite Frist:

NetHogs version 0.8.5-2

    PID USER     PROGRAM             DEV        SENT      RECEIVED       
    613 root     sshd: root@pts/0    eth0        0.342       0.176 KB/sec
      ? root     unknown TCP                     0.000       0.000 KB/sec

  TOTAL                                          0.342       0.176 KB/sec

vnstat - Traffic Statistik

vnstat speichert den Traffic in einer Datenbank ab und man kann ihn so anzeigen lassen

Installation unter Debian/Ubuntu via Paketmanager:

apt update && apt install vnstat -y

startet man das Tool einfach ohne Parameter bekommt man eine Übersicht über den gesammelten Traffic aller Interface:

vnstat

mit -i INTERFACENAME, wird nur der Traffic des gewünschten Netzwerkinterface angezeigt:

vnstat -i eth0

Mehr Informationen findet ihr in diesem eigenen Artikel:

tcpdump - Zeigt den kompletten Datenverkehr an

tcpdump ist ein sehr Mächtiges Tool wenn es darum geht Netzwerktraffic auf Paketebene auszulesen. Zum Debuggen von allen möglichen Services, die sich über die Netzwerkebene Unterhalten ist dieses Tool das A und O!

Installation unter Debian/Ubuntu via Paketmanager:

apt update && apt install tcpdump -y

Nach dem es installiert ist, starten wir das Tool einfach mal:

tcpdump

dies spuckt sämtliche Pakete aus, die gerade durch alle Interface laufen, das Ganze ist natürlich nicht zu gebrauchen und viel zu unübersichtlich. Hier ein paar nützliche Befehle:

# zeigt alle verfügbaren Interface Namen an die verwendet werden können
tcpdump -D

# zeigt alle Pakete die durch eth1 gehen an
tcpdump -i eth1

# zeigt alle Pakete die durch eth1 gehen an und löst keine Namen auf
tcpdump -ni eth1

Wie ist meine IP

Möchte man wissen mit welcher öffentlichen IP man unterwegs ist:

curl ifconfig.me

Quellen