Der Befehl netstat erzeugt eine Anzeige, in der Netzwerkstatus und Protokollstatistiken aufgeführt werden. Sie können den Status von TCP-, SCTP- und UDP-Endpunkten in einem Tabellenformat anzeigen. Darüber hinaus können Sie Routing-Tabelleninformationen sowie Schnittstelleninformationen anzeigen.
Der Befehl netstat zeigt, abhängig von der gewählten Befehlszeilenoption, verschiedene Arten von Netzwerkdaten an. Diese Anzeigen eignen sich besonders für die Systemverwaltung. Die allgemeine Syntax für den Befehl netstat lautet:
netstat [-m] [-n] [-s] [-i | -r] [-f Adressfamilie]
In diesem Abschnitt werden die am häufigsten verwendeten Optionen des Befehls netstat beschrieben. Eine ausführliche Beschreibung aller netstat-Optionen finden Sie in der Manpage netstat(1M).
Mit der Option netstat -s zeigen Sie Protokollstatistiken für die Protokolle UDP, TCP, SCTP, ICMP und IP an.
Zum Anzeigen der Ausgabe des netstat-Befehls können Sie Ihr Oracle Solaris-Benutzerkonto verwenden.
Das folgende Beispiel zeigt die Ausgabe des Befehls netstat - s an. Die Ausgabe wurde teilweise verkürzt. Die Ausgabe kann Bereiche enthalten, in denen ein Problem bei einem Protokoll auftritt. Beispielsweise können statistische Informationen von ICMPv4 und ICMPv6 darauf hindeuten, wo das ICMP-Protokoll Fehler gefunden hat.
RAWIP rawipInDatagrams = 4701 rawipInErrors = 0 rawipInCksumErrs = 0 rawipOutDatagrams = 4 rawipOutErrors = 0 UDP udpInDatagrams = 10091 udpInErrors = 0 udpOutDatagrams = 15772 udpOutErrors = 0 TCP tcpRtoAlgorithm = 4 tcpRtoMin = 400 tcpRtoMax = 60000 tcpMaxConn = -1 . . tcpListenDrop = 0 tcpListenDropQ0 = 0 tcpHalfOpenDrop = 0 tcpOutSackRetrans = 0 IPv4 ipForwarding = 2 ipDefaultTTL = 255 ipInReceives =300182 ipInHdrErrors = 0 ipInAddrErrors = 0 ipInCksumErrs = 0 . . ipsecInFailed = 0 ipInIPv6 = 0 ipOutIPv6 = 3 ipOutSwitchIPv6 = 0 IPv6 ipv6Forwarding = 2 ipv6DefaultHopLimit = 255 ipv6InReceives = 13986 ipv6InHdrErrors = 0 ipv6InTooBigErrors = 0 ipv6InNoRoutes = 0 . . rawipInOverflows = 0 ipv6InIPv4 = 0 ipv6OutIPv4 = 0 ipv6OutSwitchIPv4 = 0 ICMPv4 icmpInMsgs = 43593 icmpInErrors = 0 icmpInCksumErrs = 0 icmpInUnknowns = 0 . . icmpInOverflows = 0 ICMPv6 icmp6InMsgs = 13612 icmp6InErrors = 0 icmp6InDestUnreachs = 0 icmp6InAdminProhibs = 0 . . icmp6OutGroupQueries= 0 icmp6OutGroupResps = 2 icmp6OutGroupReds = 0 IGMP: 12287 messages received 0 messages received with too few bytes 0 messages received with bad checksum 12287 membership queries received SCTP sctpRtoAlgorithm = vanj sctpRtoMin = 1000 sctpRtoMax = 60000 sctpRtoInitial = 3000 sctpTimHearBeatProbe = 2 sctpTimHearBeatDrop = 0 sctpListenDrop = 0 sctpInClosed = 0 |
Mit dem Befehl netstat können Sie den Status der Transportprotokolle anzeigen. Ausführliche Informationen finden Sie in der Manpage netstat(1M).
Zeigen Sie den Status der Transportprotokolle TCP und SCTP auf einem System an.
$ netstat |
Zeigen Sie den Status eines bestimmten Transportprotokolls auf einem System an.
$ netstat -P transport-protocol |
Werte für die Variable Transportprotokoll sind z. B. tcp, sctp oder udp.
Das folgende Beispiel zeigt die Ausgabe des allgemeinen Befehls netstat. Beachten Sie, dass nur IPv4-Informationen angezeigt werden.
$ netstat TCP: IPv4 Local Address Remote Address Swind Send-Q Rwind Recv-Q State ----------------- -------------------- ----- ------ ----- ------ ------- lhost-1.login abc.def.local.Sun.COM.980 49640 0 49640 0 ESTABLISHED lhost-1.login ghi.jkl.local.Sun.COM.1020 49640 1 49640 0 ESTABLISHED remhost-1.1014 mno.pqr.remote.Sun.COM.nfsd 49640 0 49640 0 TIME_WAIT SCTP: Local Address Remote Address Swind Send-Q Rwind Recv-Q StrsI/O State ---------------- -------------- ----- ------ ------ ------ ------ ------- *.echo 0.0.0.0 0 0 102400 0 128/1 LISTEN *.discard 0.0.0.0 0 0 102400 0 128/1 LISTEN *.9001 0.0.0.0 0 0 102400 0 128/1 LISTEN |
Das folgende Beispiel zeigt die Ausgabe, wenn Sie die Option -P mit dem Befehl netstat angeben.
$ netstat -P tcp TCP: IPv4 Local Address Remote Address Swind Send-Q Rwind Recv-Q State ----------------- -------------------- ----- ------ ----- ------ ------- lhost-1.login abc.def.local.Sun.COM.980 49640 0 49640 0 ESTABLISHED lhost.login ghi.jkl.local.Sun.COM.1020 49640 1 49640 0 ESTABLISHED remhost.1014 mno.pqr.remote.Sun.COM.nfsd 49640 0 49640 0 TIME_WAIT TCP: IPv6 Local Address Remote Address Swind Send-Q Rwind Recv-Q State If ---------------- ---------------------- ------ ----- ------ ----------- ----- localhost.38983 localhost.32777 49152 0 49152 0 ESTABLISHED localhost.32777 localhost.38983 49152 0 49152 0 ESTABLISHED localhost.38986 localhost.38980 49152 0 49152 0 ESTABLISHED |
Mit der Option i des Befehls netstat zeigen Sie den Status der Netzwerkschnittstellen an, die im lokalen System konfiguriert wurden. So können Sie die Anzahl der Pakete ermitteln, die ein System in jedem Netzwerk empfängt und sendet.
Das nächste Beispiel zeigt den Status des IPv4- und IPv6-Paketflusses durch die Schnittstellen des Hosts.
Beispielsweise kann der Zähler für eingehende Pakete (Ipkts) eines Servers jedes Mal um eins erhöht werden, wenn ein Client zu booten versucht, während der Zähler für abgehende Pakete (Opkts) konstant bleibt. Dieses Ergebnis deutet darauf hin, dass der Server die Boot-Anforderungspakete der Client empfängt. Jedoch weiß der Server nicht, wie er auf diese Pakete antworten soll. Dieses Fehlverhalten könnte durch eine falsche Adresse in einer der Datenbanken hosts, ipnodes oder ethers verursacht werden.
Bleibt der Zähler für eingehende Pakete jedoch konstant, sieht der Computer überhaupt keine Pakete. Dieses Ergebnis deutet auf einen anderen Fehler hin, möglicherweise ein Hardwareproblem.
Name Mtu Net/Dest Address Ipkts Ierrs Opkts Oerrs Collis Queue lo0 8232 loopback localhost 142 0 142 0 0 0 hme0 1500 host58 host58 1106302 0 52419 0 0 0 Name Mtu Net/Dest Address Ipkts Ierrs Opkts Oerrs Collis lo0 8252 localhost localhost 142 0 142 0 0 hme0 1500 fe80::a00:20ff:feb9:4c54/10 fe80::a00:20ff:feb9:4c54 1106305 0 52422 0 0 |
Mit der Option -a des Befehls netstat können Sie den Status der Sockets auf dem lokalen Host anzeigen.
Geben Sie den folgenden Befehl ein, um den Status der Sockets und die Routing-Tabelleneinträge anzuzeigen:
Zum Ausführen dieser Option von netstat können Sie Ihr Benutzerkonto verwenden.
% netstat -a |
Die Ausgabe des Befehls netstat -a zeigt umfangreiche Statistiken an. Das folgende Beispiel zeigt Teile einer typischen Ausgabe des Befehls netstat -a.
UDP: IPv4 Local Address Remote Address State -------------------- -------------------- ------- *.bootpc Idle host85.bootpc Idle *.* Unbound *.* Unbound *.sunrpc Idle *.* Unbound *.32771 Idle *.sunrpc Idle *.* Unbound *.32775 Idle *.time Idle . . *.daytime Idle *.echo Idle *.discard Idle UDP: IPv6 Local Address Remote Address State If --------------------------------- --------------------------------- ---------- ----- *.* Unbound *.* Unbound *.sunrpc Idle *.* Unbound *.32771 Idle *.32778 Idle *.syslog Idle . . TCP: IPv4 Local Address Remote Address Swind Send-Q Rwind Recv-Q State -------------------- -------------------- ----- ------ ----- ------ ------- *.* *.* 0 0 49152 0 IDLE localhost.4999 *.* 0 0 49152 0 LISTEN *.sunrpc *.* 0 0 49152 0 LISTEN *.* *.* 0 0 49152 0 IDLE *.sunrpc *.* 0 0 49152 0 LISTEN . . *.printer *.* 0 0 49152 0 LISTEN *.time *.* 0 0 49152 0 LISTEN *.daytime *.* 0 0 49152 0 LISTEN *.echo *.* 0 0 49152 0 LISTEN *.discard *.* 0 0 49152 0 LISTEN *.chargen *.* 0 0 49152 0 LISTEN *.shell *.* 0 0 49152 0 LISTEN *.shell *.* 0 0 49152 0 LISTEN *.kshell *.* 0 0 49152 0 LISTEN *.login . . *.* 0 0 49152 0 LISTEN *TCP: IPv6 Local Address Remote Address Swind Send-Q Rwind Recv-Q State If ----------------------- ----------------------- ----- ------ ----- ------ ---- *.* *.* 0 0 49152 0 IDLE *.sunrpc *.* 0 0 49152 0 LISTEN *.* *.* 0 0 49152 0 IDLE *.32774 *.* 0 0 49152 |
Mit der Option -f des Befehls netstat können Sie Statistiken zu den Paketübertragungen einer bestimmten Adressfamilie anzeigen.
Zeigen Sie die Statistiken entweder von IPv4- oder von IPv6-Paketübertragungen an.
$ netstat -f inet | inet6 |
Zum Anzeigen von Informationen zu IPv4-Übertragungen geben Sie inet als Argument für netstat -f ein. Zum Anzeigen von Informationen zu IPv6-Übertragungen geben Sie inet6 als Argument für netstat -f ein.
Das folgende Beispiel zeigt die Ausgabe des Befehls netstat -f inet.
TCP: IPv4 Local Address Remote Address Swind Send-Q Rwind Recv-Q State -------------------- -------------------- ----- ------ ----- ------ ------- host58.734 host19.nfsd 49640 0 49640 0 ESTABLISHED host58.38063 host19.32782 49640 0 49640 0 CLOSE_WAIT host58.38146 host41.43601 49640 0 49640 0 ESTABLISHED host58.996 remote-host.login 49640 0 49206 0 ESTABLISHED |
Das folgende Beispiel zeigt die Ausgabe des Befehls netstat -f inet6.
TCP: IPv6 Local Address Remote Address Swind Send-Q Rwind Recv-Q State If ------------------ ------------------------- ----- ------ ----- ------ --------- ----- localhost.38065 localhost.32792 49152 0 49152 0 ESTABLISHED localhost.32792 localhost.38065 49152 0 49152 0 ESTABLISHED localhost.38089 localhost.38057 49152 0 49152 0 ESTABLISHED |
Mit der Option -r des Befehls netstat zeigen Sie die Routing-Tabelle des lokalen Hosts an. Diese Tabelle zeigt den Status aller dem Host bekannten Routen. Sie können diese Option des Befehls netstat von Ihrem Benutzerkonto aus ausführen.
Das folgende Beispiel zeigt die Ausgabe des Befehls netstat -r.
Routing Table: IPv4 Destination Gateway Flags Ref Use Interface -------------------- -------------------- ----- ----- ------ --------- host15 myhost U 1 31059 hme0 10.0.0.14 myhost U 1 0 hme0 default distantrouter UG 1 2 hme0 localhost localhost UH 42019361 lo0 Routing Table: IPv6 Destination/Mask Gateway Flags Ref Use If --------------------------- --------------------------- ----- --- ------ ----- 2002:0a00:3010:2::/64 2002:0a00:3010:2:1b2b:3c4c:5e6e:abcd U 1 0 hme0:1 fe80::/10 fe80::1a2b:3c4d:5e6f:12a2 U 1 23 hme0 ff00::/8 fe80::1a2b:3c4d:5e6f:12a2 U 1 0 hme0 default fe80::1a2b:3c4d:5e6f:12a2 UG 1 0 hme0 localhost localhost UH 9 21832 lo0 |
In der folgenden Tabelle wird die Bedeutung der verschiedenen Parameter der Bildschirmausgabe des Befehls netstat —r beschrieben.
Parameter |
Beschreibung |
---|---|
Destination Destination/Mask |
Gibt den Host an, der als Ziel-Endpunkt der Route fungiert. Beachten Sie, dass die IPv6-Routing-Tabelle das Präfix für einen 6to4-Tunnelendpunkt (2002:0a00:3010:2::/64) als Ziel-Endpunkt der Route anzeigt. |
Gateway |
Gibt das zum Weiterleiten von Paketen zu verwendende Gateway an. |
Flags |
Zeigt den aktuellen Status der Route an. Das Flag U gibt an, dass die Route hochgefahren ist. Das Flag G gibt an, dass die Route zu einem Gateway führt. |
Use |
Zeigt die Anzahl der gesendeten Pakete an. |
Interface |
Zeigt die Schnittstelle auf dem lokalen Host an, die als Ursprungs-Endpunkt der Übertragung dient. |