Mit Netstat untersucht man sich Netzwerkverbindungen und Routing-Tabellen anzeigen lassen kann. Interessant ist, bei einem Engpass die gleichzeitigen Verbindungen zu sehen, die von einem Dienst verwendet werden. Ein einfacher Aufruf von netstat auf der Konsole ergibt eine unglaublich riesige Ausgabe. Hier hilft grep, um der Sache Herr zu werden und das zu sehen, was wirklich wichtig ist.
Möchte man alle bestehenden Verbindungen für TCP Port 443 sehen, so muss man mit grep arbeiten. Das folgende Beispiel ist interessant mal auszuprobieren:
netstat -an | grep VERBUNDEN | grep :443
Die Option -a zeigt "all", also alles an und -n dient dazu, dass die Namensauflösung nicht verwendet wird. Möchte man einfach die Routingtabelle sehen, so reicht ein einfaches netstat -r
Interessant ist auch die Auflistung der empfangsbereiten Serversockets, die man mit netstat -l
zu sehen bekommt. Zur besseren Lesbarkeit holt man sich noch ein paar Optionen dazu.
silvester@linux-desktop:~$ sudo netstat -tulpn
Aktive Internetverbindungen (Nur Server)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:5939 0.0.0.0:* LISTEN 2688/teamviewerd
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN 2080/dnsmasq
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 4074/cupsd
tcp6 0 0 :::80 :::* LISTEN 3454/httpd
tcp6 0 0 ::1:631 :::* LISTEN 4074/cupsd
udp 0 0 0.0.0.0:5353 0.0.0.0:* 2827/mdns-publisher
udp 0 0 0.0.0.0:5353 0.0.0.0:* 1152/avahi-daemon:
udp 0 0 0.0.0.0:57073 0.0.0.0:* 2080/dnsmasq
udp 0 0 0.0.0.0:45549 0.0.0.0:* 1152/avahi-daemon:
udp 0 0 127.0.1.1:53 0.0.0.0:* 2080/dnsmasq
udp 0 0 0.0.0.0:631 0.0.0.0:* 4075/cups-browsed
udp6 0 0 :::51968 :::* 1152/avahi-daemon:
udp6 0 0 :::5353 :::* 2827/mdns-publisher
udp6 0 0 :::5353 :::* 1152/avahi-daemon:
udp6 0 0 :::45033 :::* 2059/Preload.js --c
Hier ein Auszug für die Optionen aus netstat --help
-r, --route Routentabelle anzeigen
-i, --interfaces Schnittstellentabelle auflisten
-g, --groups Mitgliedschaft in Multicastgruppen anzeigen
-s, --statistics Netzwerksstatistiken anzeigen (wie SNMP)
-M, --masquerade Maskierte Verbindungen auflisten
-v, --verbose Ausführliche Ausgaben
-W, --wide don't truncate IP addresses
-n, --numeric Rechnernamen nicht auflösen
--numeric-hosts Host-Namen nicht auflösen
--numeric-ports Port-Namen nicht auflösen
--numeric-users Benutzer-Namen nicht auflösen
-N, --symbolic Hardwarenamen auflösen
-e, --extend Weitere/zusätzliche Informationen anzeigen
-p, --programs PID/Programmnamen für Sockets anzeigen
-c, --continuous Anzeige laufend aktualisieren
-l, --listening Empfangsbereite Serversockets auflisten
-a, --all, --listening Alle Sockets anzeigen (normal: nur verbundene)
-o, --timers Timer auflisten
-F, --fib Forwarding Infomation Base anzeigen (Standard)
-C, --cache Routencache statt FIB anzeigen
Auch hier sind die Man-Pages sehr interessant anzusehen und mit den Optionen rumzuspielen.