Netstat

Aus Foxwiki

netstat zeigt unter Linux vorhandene Netzwerkverbindungen, Routingtabellen, Interface Statistiken, Masquerade Verbindungen und Multicast Memberships. Neben netstat zeigt auch iptstate vorhandene Netzwerkverbindungen (mit Anzeige in Echtzeit).

Das Programm netstat ist in jeder Ubuntu-Installation bereits enthalten und im Paket net-tools integriert.


Syntax

Die allgemeine Syntax lautet

netstat [OPTIONEN] 

Optionen

keine Der Standard-Modus. Informiert über offene Netzwerk-
--route -r Gibt die Routing-Tabelle des Kernels aus, ähnlich wie der route-Befehl.
--interface -i Gibt Statistiken über die übertragenen Pakete an den einzelnen Netzwerkschnittstellen aus.
--statistics -s Noch ausführlichere Statistiken.
--masquerade -M Liste aller aktuellen "maskierten" Verbindungen
--groups -g Informationen über Multicast-Gruppen.
--help -h Hilfe anzeigen

Ausgabe von netstat

$ sudo netstat -taupen
Password: 

wird folgendes ausgegeben:

Aktive Internetverbindungen (Server und stehende Verbindungen)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       Benutzer   Inode      PID/Program name   
tcp        0      0 127.0.0.1:2208          0.0.0.0:*               LISTEN     0          17755      5328/hpiod          
tcp        0      0 127.0.0.1:111           0.0.0.0:*               LISTEN     0          14881      4339/portmap        
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN     0          17723      5304/cupsd          
tcp        0      0 0.0.0.0:4185            0.0.0.0:*               LISTEN     113        18098      5607/rpc.statd      
tcp        0      0 127.0.0.1:2207          0.0.0.0:*               LISTEN     107        17768      5333/python         
tcp        0      0 192.168.4.6:4462        192.168.5.5:993         VERBUNDEN  1000       22697      6425/sylpheed-claws 
tcp        0      0 192.168.4.6:3165        84.19.178.217:5222      VERBUNDEN  1000       20523      5895/gajim          
tcp        0      0 192.168.4.6:3780        192.168.5.5:5222        VERBUNDEN  1000       20526      5895/gajim          
tcp6       0      0 :::22                   :::*                    LISTEN     0          17999      5531/sshd           
udp        0      0 0.0.0.0:1024            0.0.0.0:*                          113        18093      5607/rpc.statd      
udp        0      0 0.0.0.0:695             0.0.0.0:*                          0          18084      5607/rpc.statd      
udp        0      0 127.0.0.1:111           0.0.0.0:*                          0          14880      4339/portmap        
udp        0      0 0.0.0.0:631             0.0.0.0:*                          0          17726      5304/cupsd          
udp        0      0 192.168.4.6:123         0.0.0.0:*                          0          18130      5627/ntpd           
udp        0      0 127.0.0.1:123           0.0.0.0:*                          0          18129      5627/ntpd           
udp        0      0 0.0.0.0:123             0.0.0.0:*                          0          18124      5627/ntpd           
udp6       0      0 fe80::211:d8ff:fe6f:123 :::*                               0          18128      5627/ntpd           
udp6       0      0 fe80::20e:35ff:feba:123 :::*                               0          18127      5627/ntpd
udp6       0      0 ::1:123                 :::*                               0          18126      5627/ntpd
udp6       0      0 :::123                  :::*                               0          18125 

Die wichtigsten Spalten in dieser Tabelle sind folgende:

  • Proto Das Protokoll: unix, tcp oder udp. IP-Version-6-Verbindungen werden durch eine angehängte "6" gekennzeichnet.
  • Local Address Die IP-Adresse oder der DNS-Name der Schnittstelle, über die diese Verbindung läuft, sowie durch einen Doppelpunkt abgetrennt die Portnummer. Die IP-Adresse ist entweder eine der gültigen Adressen, unter der der Rechner im Netz zu erreichen ist, oder eine der folgenden:
  • Foreign Address Adresse und Port der Gegenstelle der Verbindung. Die jeweilige Universal-Adresse (0.0.0.0 bzw. ::) bedeutet, dass hier ein Dienst auf Verbindungen von außen wartet.
  • State Status der Verbindung. UDP ist ein statusloses Protokoll, deswegen ist diese Spalte bei UDP-Sockets leer.
  • Benutzer Die Benutzer-ID, der das Socket gehört.
  • PID/Program name Prozess-ID und Programmname des Prozesses, dem das Socket gehört.

Beispiel

Eine häufige Verwendung für netstat ist herauszufinden, auf welchen Ports Serverdienste laufen, die für andere Rechner erreichbar sind. Leser, die nur an dieser Verwendung interessiert sind, benutzen einfach folgenden Befehl:

sudo netstat -tulpen | grep -v 127.0.0.1 



Zugriff: (0664/-rw-rw-r--)  Uid: ( 1000/user)   Gid: ( 1000/user) 

Es werden die Zugriffsrechte in oktaler und in [:Rechte#Rechte-in-symbolischer-Darstellung: menschenlesbarer Form angezeigt. ID und Name des Besitzers sind angegeben, ebenso wie ID und Name der Gruppe.

Bedeutung der Zeitstempel

Zugriff    : 2012-10-10 13:20:00.000000000 +0200
Modifiziert: 2012-10-10 09:13:29.000000000 +0200
Geändert   : 2012-10-10 13:20:00.484609642 +0200

Die einzelnen Zeitstempel haben folgende Bedeutung:

  • Zugriff - gibt den Zeitstempel an, wann die Datei zum letzten Mal gelesen wurde.
  • Modifiziert - gibt den Zeitstempel der letzten Änderung des Dateiinhalts an.
  • Geändert - gibt den Zeitstempel der letzten Änderung der Metadaten (z.B. Dateirechte) an.

Mit touch lassen sich diese Zeitstempel verändern.

kurze Erklärung von Inode

Die Inode sind der Dreh- und Angelpunkt sämtlicher Dateizugriffe.
Ein Großteil der Arbeit des Betriebssystems ist die Umsetzung von Dateinamen in die dazugehörige Inodes.
Inodes werden innerhalb der Filesysteme in Inode-Listen geführt.
Inodes sind definierte Datenstrukturen, die eine Datei eindeutig beschreiben und verwalten können.
Die restlichen Blöcke im Filesystem, die nicht von den Inodes belegt werden, sind die Blöcke für die Daten.

Aufgaben

Was bewirkt folgender Befehlstat -c %F sample.txt  ?

Antwort: Er zeigt den Dateityp von datei.txt.
Wie lautet der befehl für eine Datei die Zugriffsrechte in menschenlesbarem Format und den Zeitstempel des letzten Zugriffs anzeigen zulassen?
Antwort:stat --format %A%x sample.txt
Wie ruft man die Informationen zum Dateisystem der Datei auf?
Antwort:stat -f sample.txt

Links

Creation Time von Dateien und Ordnern anzeigen {de}

GNU Core Utilities {en}

Manpage {en}