Teil I Netzwerkdienste - Themen
2. Verwalten von Webcache-Servern
Teil II Zugriff auf Netzwerkdateisysteme - Themen
4. Verwalten von Netzwerkdateisystemen (Übersicht)
5. Verwaltung des Netzwerkdateisystems (Aufgaben)
6. Zugreifen auf Netzwerkdateisysteme (Referenz)
Teil III SLP (Service Location Protocol) - Themen
8. Planen und Aktivieren von SLP (Aufgaben)
9. Verwalten von SLP (Aufgaben)
10. Integrieren von veralteten Services
Teil V Serielle Vernetzung - Themen
15. Solaris PPP 4.0 (Überblick)
16. PLanen einer PPP-Verbindung (Aufgaben)
17. Einrichten einer PPP-Einwahlverbindung (Aufgaben)
18. Einrichten einer PPP-Standleitungsverbindung (Aufgaben)
19. Einrichten der PPP-Authentifizierung (Aufgaben)
20. Einrichten eines PPPoE-Tunnels (Aufgaben)
21. Beheben von allgemeinen PPP-Problemen (Aufgaben)
22. Solaris PPP 4.0 (Referenz)
23. Migrieren von Asynchronous Solaris PPP zu Solaris PPP 4.0 (Aufgaben)
25. Verwalten von UUCP (Aufgaben)
Teil VI Arbeiten mit Remote-Systemen - Themen
27. Arbeiten mit Remote-Systemen (Übersicht)
28. Verwalten des FTP-Servers (Aufgaben)
29. Zugriff auf Remote-Systeme (Aufgaben)
Teil VII Überwachen von Netzwerkdiensten - Themen
In Tabelle 30-1 werden die Befehle aufgeführt, die zur Verfügung stehen, um die Netzwerkleistung zu überwachen.
Tabelle 30-1 Befehle zur Überwachung des Netzwerks
|
Prüfen Sie die Antwort von Hosts im Netzwerk, indem Sie den Befehl ping verwenden.
$ ping hostname
Wenn Sie ein physisches Problem vermuten, können Sie ping verwenden, um die Antwortzeiten von mehreren Hosts im Netzwerk zu prüfen. Wenn die Antwort von einem Host nicht wie erwartet ausfällt, können Sie diesen Host untersuchen. Physische Probleme können folgende Ursachen haben:
Weitere Informationen zu diesem Befehl finden Sie unter ping(1M).
Beispiel 30-1 Prüfen der Antwort von Hosts im Netzwerk
Die einfachste Version von ping sendet ein einzelnes Paket an einen Host im Netzwerk. Wenn ping die richtige Antwort erhält, gibt der Befehl die Meldung host is alive aus.
$ ping elvis elvis is alive
Mit der Option -s sendet ping ein Datagramm pro Sekunde an einen Host. Anschließend gibt der Befehl die jeweiligen Antworten aus, sowie die Zeiten, die für den gesamten Vorgang benötigt wurden. Ein Beispiel:
$ ping -s pluto 64 bytes from pluto (123.456.78.90): icmp_seq=0. time=3.82 ms 64 bytes from pluto (123.456.78.90): icmp_seq=5. time=0.947 ms 64 bytes from pluto (123.456.78.90): icmp_seq=6. time=0.855 ms ^C ----pluto PING Statistics---- 3 packets transmitted, 3 packets received, 0% packet loss round-trip (ms) min/avg/max/sttdev = 0.855/1.87/3.82/1.7
Prüfen Sie die Zuverlässigkeit Ihrer Paketgrößen mit dem Befehl spray.
$ spray [ -c count -d interval -l packet-size] hostname
Anzahl der Pakete, die gesendet werden sollen.
Anzahl von Mikrosekunden zum Unterbrechen zwischen dem Senden von Paketen. Wenn Sie keine Verzögerung verwenden, können die Puffer überlastet werden.
Die Paketgröße.
Das System, an das Pakete gesendet werden.
Weitere Informationen zu diesem Befehl finden Sie unter spray(1M).
Beispiel 30-2 Senden von Paketen an Hosts im Netzwerk
Im folgenden Beispiel werden 100 Pakete an einen Host (-c 100) gesendet. Die Paketgröße beträgt 2048 Byte (-l 2048). Die Pakete werden mit einer Verzögerung von 20 Mikrosekunden zwischen jedem Burst gesendet (-d 20).
$ spray -c 100 -d 20 -l 2048 pluto sending 100 packets of length 2048 to pluto ... no packets dropped by pluto 279 packets/sec, 573043 bytes/sec
Um Pakete aus dem Netzwerk zu erfassen und die einzelnen Clientaufrufe der jeweiligen Server zu verfolgen, verwenden Sie snoop. Dieser Befehl stellt genaue Zeitstempel bereit, mit deren Hilfe manche Netzwerkprobleme rasch isoliert werden können. Weitere Informationen finden Sie unter snoop(1M).
# snoop
Abgeworfene Pakete können auf zu wenig Pufferspeicher oder eine überlastete CPU zurückgeführt werden.
Um Informationen über Netzwerkstatus wie beispielsweise Statistiken zum Status von Netzwerkschnittstellen, Routing-Tabellen und verschiedene Protokolle anzuzeigen, verwenden Sie den Befehl netstat.
$ netstat [-i] [-r] [-s]
Zeigt den Status der TCP/IP-Schnittstellen an.
Zeigt die IP-Routing-Tabelle an.
Zeigt Statistiken für die UDP-, TCP-, ICMP- und IGMP-Protokolle an.
Weitere Informationen finden Sie unter netstat(1M).
Das folgende Beispiel zeigt eine Ausgabe des Befehls netstat -i, der den Status der Schnittstellen anzeigt, die für TCP/IP-Verkehr verwendet werden.
$ netstat -i Name Mtu Net/Dest Address Ipkts Ierrs Opkts Oerrs Collis Queue lo0 8232 software localhost 1280 0 1280 0 0 0 eri0 1500 loopback venus 1628480 0 347070 16 39354 0
Diese Ausgabe zeigt die Anzahl der Pakete an, die ein Rechner übertragen und über jede Schnittstelle empfangen hat. Ein Rechner mit aktivem Netzwerkverkehr sollte einen kontinuierlichen Anstieg von sowohl Ipkts als auch Opkts aufweisen.
Berechnen Sie die Kollisionsquote des Netzwerks, indem Sie die Anzahl der Kollisionen (Collis) durch die Anzahl der Pakete (Opkts) dividieren. Im vorangegangenen Beispiel beträgt die Kollisionsquote 11 Prozent. Eine netzwerkübergreifende Kollisionsquote, die über 5 bis 10 Prozent liegt, kann auf ein Problem hindeuten.
Berechnen Sie die Fehlerquote der Eingangspakete, indem Sie die Anzahl der Eingangsfehler durch die Gesamtanzahl der Eingangspakete (Ierrs/Ipkts) dividieren. Die Fehlerquote der Ausgangspakete ergibt sich aus der Anzahl der Ausgangsfehler, die durch die Gesamtanzahl der Ausgangspakete (Oerrs/Opkts) dividiert wird. Wenn die Eingangsfehlerquote hoch ist, d. h. über 0,25 Prozent, wirft der Host möglicherweise Pakete ab.
Das folgende Beispiel zeigt die Ausgabe des Befehls netstat -s, der die pro Protokoll geführten Statistiken für die UDP-, TCP-, ICMP- und IGMP-Protokolle anzeigt.
UDP udpInDatagrams =196543 udpInErrors = 0 udpOutDatagrams =187820 TCP tcpRtoAlgorithm = 4 tcpRtoMin = 200 tcpRtoMax = 60000 tcpMaxConn = -1 tcpActiveOpens = 26952 tcpPassiveOpens = 420 tcpAttemptFails = 1133 tcpEstabResets = 9 tcpCurrEstab = 31 tcpOutSegs =3957636 tcpOutDataSegs =2731494 tcpOutDataBytes =1865269594 tcpRetransSegs = 36186 tcpRetransBytes =3762520 tcpOutAck =1225849 tcpOutAckDelayed =165044 tcpOutUrg = 7 tcpOutWinUpdate = 315 tcpOutWinProbe = 0 tcpOutControl = 56588 tcpOutRsts = 803 tcpOutFastRetrans = 741 tcpInSegs =4587678 tcpInAckSegs =2087448 tcpInAckBytes =1865292802 tcpInDupAck =109461 tcpInAckUnsent = 0 tcpInInorderSegs =3877639 tcpInInorderBytes =-598404107 tcpInUnorderSegs = 14756 tcpInUnorderBytes =17985602 tcpInDupSegs = 34 tcpInDupBytes = 32759 tcpInPartDupSegs = 212 tcpInPartDupBytes =134800 tcpInPastWinSegs = 0 tcpInPastWinBytes = 0 tcpInWinProbe = 456 tcpInWinUpdate = 0 tcpInClosed = 99 tcpRttNoUpdate = 6862 tcpRttUpdate =435097 tcpTimRetrans = 15065 tcpTimRetransDrop = 67 tcpTimKeepalive = 763 tcpTimKeepaliveProbe= 1 tcpTimKeepaliveDrop = 0 IP ipForwarding = 2 ipDefaultTTL = 255 ipInReceives =11757234 ipInHdrErrors = 0 ipInAddrErrors = 0 ipInCksumErrs = 0 ipForwDatagrams = 0 ipForwProhibits = 0 ipInUnknownProtos = 0 ipInDiscards = 0 ipInDelivers =4784901 ipOutRequests =4195180 ipOutDiscards = 0 ipOutNoRoutes = 0 ipReasmTimeout = 60 ipReasmReqds = 8723 ipReasmOKs = 7565 ipReasmFails = 1158 ipReasmDuplicates = 7 ipReasmPartDups = 0 ipFragOKs = 19938 ipFragFails = 0 ipFragCreates =116953 ipRoutingDiscards = 0 tcpInErrs = 0 udpNoPorts =6426577 udpInCksumErrs = 0 udpInOverflows = 473 rawipInOverflows = 0 ICMP icmpInMsgs =490338 icmpInErrors = 0 icmpInCksumErrs = 0 icmpInUnknowns = 0 icmpInDestUnreachs = 618 icmpInTimeExcds = 314 icmpInParmProbs = 0 icmpInSrcQuenchs = 0 icmpInRedirects = 313 icmpInBadRedirects = 5 icmpInEchos = 477 icmpInEchoReps = 20 icmpInTimestamps = 0 icmpInTimestampReps = 0 icmpInAddrMasks = 0 icmpInAddrMaskReps = 0 icmpInFragNeeded = 0 icmpOutMsgs = 827 icmpOutDrops = 103 icmpOutErrors = 0 icmpOutDestUnreachs = 94 icmpOutTimeExcds = 256 icmpOutParmProbs = 0 icmpOutSrcQuenchs = 0 icmpOutRedirects = 0 icmpOutEchos = 0 icmpOutEchoReps = 477 icmpOutTimestamps = 0 icmpOutTimestampReps= 0 icmpOutAddrMasks = 0 icmpOutAddrMaskReps = 0 icmpOutFragNeeded = 0 icmpInOverflows = 0 IGMP: 0 messages received 0 messages received with too few bytes 0 messages received with bad checksum 0 membership queries received 0 membership queries received with invalid field(s) 0 membership reports received 0 membership reports received with invalid field(s) 0 membership reports received for groups to which we belong 0 membership reports sent
Im folgenden Beispiel wird eine Ausgabe des Befehls netstat - r gezeigt, der die IP-Routing-Tabelle anzeigt.
Routing Table: Destination Gateway Flags Ref Use Interface ------------------ -------------------- ----- ----- ------ --------- localhost localhost UH 0 2817 lo0 earth-bb pluto U 3 14293 eri0 224.0.0.0 pluto U 3 0 eri0 default mars-gate UG 0 14142
Die Felder im netstat - r-Bericht werden in folgender Tabelle beschrieben.
Tabelle 30-2 Ausgabe des Befehls netstat - r
|
Der NFS-Distributed File Service verwendet einen Remote-Prozeduraufruf (Remote Procedure Call, RPC), der lokale Befehle in Aufrufe für den Remote-Host umsetzt. Die Remote-Prozeduraufrufe werden synchron durchgeführt. Die Clientanwendung wird gesperrt oder ausgesetzt, bis der Server den Aufruf durchgeführt und die Ergebnisse zurückgegeben hat. Einer der wichtigsten Faktoren, die Einfluss auf die NFS-Leistung haben, ist die Neuübertragungsrate.
Wenn der Dateiserver nicht auf den Aufruf eines Clients antworten kann, sendet der Client den Aufruf erneut. Stellt sich nach einer bestimmten Anzahl von Sendeversuchen kein Erfolg ein, bricht der Client den Vorgang ab. Jede Neuübertragung erhöht den Systemaufwand und den Netzwerkverkehr. Übermäßig viele Neuübertragungen können die Netzwerkleistung beeinträchtigen. Wenn die Neuübertragungsrate zu hoch ist, sollten Sie prüfen, ob einer der folgenden Zustände gegeben ist:
Zu langsame Verarbeitung von Aufrufen durch überlastete Server
Eine Ethernet-Schnittstelle wirft Pakete ab
In folgender Tabelle werden die nfsstat-Optionen beschrieben, die zum Anzeigen von Client- und Serverstatistiken dienen.
Tabelle 30-3 Befehle zum Anzeigen von Client- und Serverstatistiken
|
Verwenden Sie nfsstat -c, um Clientstatistiken anzuzeigen, und nfsstat -s, um Serverstatistiken anzuzeigen. Verwenden Sie netstat -m, um Netzwerkstatistiken für jedes Dateisystem anzuzeigen. Weitere Informationen finden Sie unter nfsstat(1M).
Im folgenden Beispiel werden RPC- und NFS-Daten für den Client pluto gezeigt.
$ nfsstat -c Client rpc: Connection oriented: calls badcalls badxids timeouts newcreds badverfs timers 1595799 1511 59 297 0 0 0 cantconn nomem interrupts 1198 0 7 Connectionless: calls badcalls retrans badxids timeouts newcreds badverfs 80785 3135 25029 193 9543 0 0 timers nomem cantsend 17399 0 0 Client nfs: calls badcalls clgets cltoomany 1640097 3112 1640097 0 Version 2: (46366 calls) null getattr setattr root lookup readlink read 0 0% 6589 14% 2202 4% 0 0% 11506 24% 0 0% 7654 16% wrcache write create remove rename link symlink 0 0% 13297 28% 1081 2% 0 0% 0 0% 0 0% 0 0% mkdir rmdir readdir statfs 24 0% 0 0% 906 1% 3107 6% Version 3: (1585571 calls) null getattr setattr lookup access readlink read 0 0% 508406 32% 10209 0% 263441 16% 400845 25% 3065 0% 117959 7% write create mkdir symlink mknod remove rmdir 69201 4% 7615 0% 42 0% 16 0% 0 0% 7875 0% 51 0% rename link readdir readdir+ fsstat fsinfo pathconf 929 0% 597 0% 3986 0% 185145 11% 942 0% 300 0% 583 0% commit 4364 0% Client nfs_acl: Version 2: (3105 calls) null getacl setacl getattr access 0 0% 0 0% 0 0% 3105 100% 0 0% Version 3: (5055 calls) null getacl setacl 0 0% 5055 100% 0 0%
Die Ausgabe des Befehls nfsstat -c wird in folgender Tabelle beschrieben.
Tabelle 30-4 Ausgabe des Befehls nfsstat -c
|
Im folgenden Beispiel wird die Ausgabe des Befehls nfsstat -m angezeigt:
pluto$ nfsstat -m /usr/man from pluto:/export/svr4/man Flags: vers=2,proto=udp,auth=unix,hard,intr,dynamic, rsize=8192, wsize=8192,retrans=5 Lookups: srtt=13 (32ms), dev=10 (50ms), cur=6 (120ms) All: srtt=13 (32ms), dev=10 (50ms), cur=6 (120ms)
Die Ausgabe des Befehls nfsstat -m, die in Millisekunden angezeigt wird, wird in folgender Tabelle beschrieben.
Tabelle 30-5 Ausgabe des Befehls nfsstat -m
|
Wenn Sie vermuten, dass die Hardwarekomponenten Ihres Netzwerks Probleme verursachen, führen Sie eine gründliche Untersuchung der Verkabelungen und Verbindungen durch.