Er wirkt wie ein Relikt aus vergangenen Zeiten: der Computer ohne Verbindung zur Außenwelt. Sei es in der Firma oder zu Hause, viele Rechner hängen in einem Netzwerk, egal, ob es sich dabei um ein lokales Netz (LAN) oder das Internet handelt.
Während sich um die Grundanbindung meist noch die Linux-Distribution bei der Installation kümmert, bleibt die weitere Verantwortung am Administrator hängen – auch, wenn der dazu keinerlei Ausbildung genossen hat. Spätestens dann sollte man mehr Wissen darüber anhäufen, was der Rechner so im Netzwerk treibt.
Manchmal fühlt sich der Datentransport sehr langsam an, ein andermal antwortet ein Webserver nicht, oder man will aus Kontrollgründen wissen, welche Daten gerade durch die Leitung fließen. Die gängigen Linux-Distributionen bringen einige Tools mit, mit denen sich all das überprüfen lässt.
Netzwerk-Grundlagen
Dummerweise setzen die meisten davon voraus, dass man weiß, wie ein Computer-Netzwerk überhaupt funktioniert. Grundlage des Internets und vieler lokaler Netze ist TCP/IP, die Kombination aus dem "Transmission Control Protocol" und dem "Internet Protocol". Diese Protokolle legen fest, wie Rechner im Netz miteinander kommunizieren und Daten austauschen.
Da ein Webbrowser nicht wissen muss, ob die Daten kabellos oder über Glasfaser übertragen werden und es andersrum dem Glasfaserkabel egal ist, ob die transportierten Bits zu HTML-Dateien, MP3s oder Videos gehören, betrachten Netzwerker Computernetze in Schichten. Diese bauen aufeinander, funktionieren ansonsten aber unabhängig voneinander.
Da gibt es zum Beispiel die Anwendungsschicht, die – wie der Name sagt – definiert, wie die tatsächlichen Anwendungen, z. B. der Browser mit dem Webserver oder das Mailprogramm mit dem Mailserver, miteinander "sprechen". Dieses Wie ist von Anwendung zu Anwendung verschieden, so kommt im Web das "HyperText Transfer Protocol" HTTP zum Einsatz, zum Herunterladen von Dateien oft das "File Transfer Protocol", zum Arbeiten auf entfernten Rechner die "Secure Shell" SSH, zum E-Mail-Versand das "Simple Mail Transfer Protocol" SMTP, zum E-Mail-Abruf POP3, das "Post Office Protocol (Version 3)", und die Frage "Welcher Rechnername gehört zu welcher IP-Adresse?" beantwortet der "Domain Name Service" DNS.
Unterhalb der Anwendungsschicht liegt die Transportschicht, die sozusagen Verbindungen zwischen Rechnern etabliert und damit den Austausch der Anwendungsdaten ermöglicht. Hier sorgt TCP für einen zuverlässigen Datenstrom zwischen den beiden Endpunkten (zum Beispiel für die Anwendungsprotokolle HTTP, SSH, POP oder SMTP) und dafür, dass verloren gegangene Pakete neu übertragen werden. Alternativ gibt es das "User Datagram Protocol" UDP, bei dem auch mal Pakete verloren gehen können (zum Beispiel bei Real-Audio-Strömen).
Spannend wird es auf der darunter liegenden Netzwerkschicht, denn die dort arbeitenden Protokolle vermitteln die Daten-Pakete (egal welchen Inhalts) im Netz und finden die besten Wege zum Gegenüber. Jedes Paket enthält deshalb die Adressen von Absender und Empfänger. Auch wenn bei der Übermittlung einer Webseite viele Pakete übertragen werden, müssen sie nicht alle denselben Weg nehmen: Der Adressat trägt selbst dafür Sorge, sie nach dem Empfang richtig zusammen zu setzen. Neben dem so arbeitenden "Internet Protocol" IP gibt es auf der Netzwerkschicht zum Beispiel das "Internet Control Message Protocol" ICMP für Kontrollnachrichten (z. B. Fehlermeldungen), das "Address Resolution Protocol" ARP, das für die Adressumsetzung zwischen IP- und Geräteadressen (MAC-Adresse) sorgt (siehe Seite 28 ff.), und ARPs Gegenstück RARP ("Reverse Address Resolution Protocol").
Ganz unten finden sich die Netzzugangsprotokolle, die aus Daten elektrische Signale machen und sie so durch Draht oder Luft schicken. Auf dieser Ebene verbindet ein Kabel Netzwerkkarten, beispielsweise über Ethernet. Beim Wireless LAN fällt das Kabel weg, die Bits fießen als elektromagnetische Wellen drahtlos.
Betrachtet man diese Schichten von unten nach oben, wird deutlich, was im Internet passiert: Die Grundlage für TCP/IP stellt die Netzzugangsschicht dar, die es überhaupt ermöglicht, dass Hardware miteinander spricht. Darauf baut die Netzwerkschicht auf, die komplexere Datenpakete von A nach B zu transportiert.
Erkannt wird jeder Netzteilnehmer an seiner IP-Adresse. In der Schicht darüber gewährleistet TCP, dass der Inhalt zehn verschickter Pakete auch beim Gegenüber ankommt. Darauf verlassen sich die Anwendungsprotokolle der obersten Ebene, z. B. HTTP beim Surfen im Web. Ohne das Wissen über diese Schichten, auch Protokollstapel genannt, bringen viele Netzwerktools leider nur recht wenig.
Alles okay?
Bevor man irgendwelche Bewegungen im Netzwerk analysiert, muss der Rechner im Netzwerk funktionieren. Bei der dazu nötigen Konfiguration gehören vor allem IP-Adresse, Subnetzmaske (auch Netzwerkmaske genannt), Broadcast-Adresse und die Adresse des Gateways zu den Fehlerquellen – Begriffe, in die das Glossar auf Seite 28 f. und Kasten 1 auf Seite 30 einführen.
Kurz gefasst ist die eigene IP-Adresse die Voraussetzung, dass der Rechner überhaupt mit anderen Teilnehmern im Netzwerk kommunizieren kann. Die Netzmaske definiert, welcher Teil der Adresse sich auf das Netz und welcher sich auf den Rechner selbst bezieht. Über die Gateway-Adresse gelangen alle für die weite Welt bestimmten Datenpakete in andere Netze.
Die aktuellen Einstellungen liefert der Befehl ip; auf älteren Systemen gibt es häufig nur ifconfig und route [1], die dieselben Informationen ausgeben, wenn auch in anderer Form. Behauptet die Shell, diese Befehle nicht zu finden, liegt das oft daran, dass sie im Verzeichnis /sbin installiert sind, das meist nicht im Programmsuchpfad liegt. Dann hilft der Aufruf mit komplettem Pfad (z. B. /sbin/ip) weiter.
Mit dem Argument addr spuckt ip die Einstellungen der Netzwerkkarte aus. Relevant für die erste Karte im System ist hierbei die Zeile, in der eth0 am Ende steht (eth0 steht für die erste Ethernet-Karte, eth1 für eine zweite – zum Beispiel fürs WLAN – usw.) Dort findet man die IP-Adresse des Rechners (in Abbildung 1 192.168.1.245), die Netzmaske (/24, siehe Kasten 1 Seite 30), die Broadcast-Adresse (192.168.1.255) und eben den Namen der Netzwerkschnittstelle, eth0.
Einfacher erschließt sich die Ausgabe des Befehls ip route (Abbildung 2): Hier steht in der ersten Zeile das Netz (im Beispiel die Netzwerkadresse 192.168.1.0 samt Netzmaske /24), die Netzwerkschnittstelle und am Ende die Datenquelle (src für "source"), also die IP-Adresse (192.168.1.245). In der zweiten Zeile folgt das Default-Gateway 192.168.1.1 für den Weg nach draußen.
Fehlen hier wesentliche Informationen wie IP-Adresse oder Gateway, erklärt das möglicherweise, warum der Rechner im Netz nicht richtig arbeitet. Dann ruft man das Konfigurationstool der jeweiligen Distribution (z. B. Yast bei Suse) auf und überprüft noch einmal alle Einstellungen.



