Vernetzte Welt
Netzwerkgrundlagen am Beispiel eines lokalen Client-Server-Netzwerks
Um ein Netzwerk zu betreiben, braucht man zu allererst einmal die nötige Hardware. Jeder Computer muss eine 10/100-Base-T-Netzwerkkarte installiert haben. Wollen Sie nur zwei Rechner miteinander verbinden, reicht für diesen Sonderfall ein sogenanntes Cross-Connect-Kabel. Netzwerke, die aus mehr als zwei Rechnern bestehen, werden heute mit "Twisted Pair"-(TP-)Kabeln in einer Sternstruktur aufgebaut. Dazu benötigen Sie zudem einen kleinen Hub oderSwitch, an den alle Netzwerkteilnehmer angeschlossen werden.
Hardware-Beschaffung
Acht-Port-Hubs sind schon für unter 50 Euro zu bekommen. Möchte man sein Heim-Netzwerk später vergrößern, greift man besser zu einem Gerät mit einem sogenannten Uplink-Port.
Bei den Netzwerkkarten reichen handelsübliche Netzwerkadapter mit TP-Port vollkommen aus. Solche Karten gibt es für unter 15 Euro in jedem Computer-Laden. Gängig sind im Low-Cost-Bereich vor allem die Realtek- und National-Semiconductor-Chipsätze. Diese wie fast alle anderen lieferbaren Netzwerkkarten werden von aktuellen Linux-Distributionen ohne Probleme unterstützt. Falls Sie dennoch unsicher sind, ob Ihre Karte funktioniert und dies vor dem Kauf herausfinden möchten, lohnt sich eine Recherche in den im Kasten 1 aufgeführten Datenbanken.
Zur Verkabelung benötigen Sie Netzwerk-Patch-Kabel vom Typ Cat(egory) 5 (oder höher). Diese sind im Handel in vielen Längen und Farben erhältlich. Für ein kleines Heimnetzwerk ist es in den meisten Fällen egal, ob das Kabel besonders abgeschirmt ist (STP-("Screened Twisted Pair"-)Kabel): Ein normales UTP-("Unshielded TP"-)Kabel genügt. Cross-Connect-Kabel sind bis auf Ausnahmefälle nur für die Direktverbindung zweier Computer zu gebrauchen.
Sind die Netzwerkkarten eingebaut und mittels Patch-Kabel mit dem Hub oder Switch beziehungsweise direkt miteinander mittels Cross-Connect-Kabel verbunden, kann die Konfiguration beginnen.
Kasten 1: Unterstützt?
Bei Fragen zur Hardware-Unterstützung empfehlen wir einen Blick in die Internet-Datenbanken der großen Linux-Distributeure, etwa http://hardware.redhat.com/ und http://cdb.suse.de/. Eine weitere (nicht vollständige) Liste zu unterstützten Netzwerkkarten finden Sie unter http://www.scyld.com/network/.
Grundlegendes aus TCP/IP-Land
… zumindest, wenn die Grundlagen der (Inter-)Netzwerkerei bekannt sind. Hier stoßen wir unweigerlich auf TCP/IP, den Namen der Protokoll-Suite, die für große Netzwerke wie das Internet benutzt wird – aber auch für unser kleines LAN. Konkurrierende Protokolle wurden oft nur teilweise oder in manchen Fällen gar nicht für bestimmte Betriebssysteme implementiert, ein Problem, das TCP/IP inzwischen fast nicht mehr betrifft.
Das IP-Protokoll verwendet IP-Adressen (siehe Kasten 2), um Rechner zu identifizieren. Für unsere Zwecke verwenden wir IP-Nummern, die explizit für private Subnetze gedacht sind. Diese Adressbereiche (10.0.0.0 bis 10.255.255.255, 172.16.0.0 bis 172.31.255.255 und 192.168.0.0 bis 192.168.255.255) wurden im RFC 1918 [1] definiert, weil in der gegenwärtig vorherrschenden IP-Version 4 (IPv4) nicht genügend IP-Adressen für alle verfügbar sind. Allerdings dürfen Datenpakete mit solchen Adressen nicht direkt ins Internet geleitet werden: Diese Nummern werden von vielen LANs weltweit verwendet.
Ein Router im Internet kann daher nicht wissen, wohin entsprechend adressierte Pakete geleitet werden sollen. Private Adressräume müssen deshalb vor der Außenwelt verborgen werden. Diese Aufgabe erfüllt ein zwischengeschalteter Router, der Pakete aus dem LAN ins Internet (und umgekehrt) unter Verwendung seiner eigenen, öffentlichen IP-Adresse umschreibt. Diese Aufgabe bezeichnet man oft auch als IP-Masquerading oder mit dem Oberbegriff NAT("Network Address Translation").
Kasten 2: Das Problem mit der eindeutigen Adressierung
Wer Briefe um die Welt schickt, kennt das Problem: Ohne eindeutige Anschrift hat die Post keine Chance, die darin enthaltenen Daten reibungslos und ordnungsgemäß zuzustellen. Daher müssen auch Rechner in Computer-Netzen eindeutig zuordenbar sein.
Im Internet verwendet man weltweit eindeutige IP-Adressen. Eine IPv4-Adresse besteht aus vier Zahlen, die durch Punkte getrennt werden: 213.69.168.121. Dabei handelt es sich aber nur um eine platzsparende Schreibweise, denn eigentlich versteckt sich hinter jeder dieser vier Dezimal-Zahlen ein Oktett aus Nullen und Einsen, eine Binärzahl: 121 lässt sich im Binärsystem zu 0x2^7 + 1x2^6 + 1x2^5 + 1x2^4 + 1x2^3 + 0x2^2 + 0x2^1 + 1x2^0, also 01111001 zerpflücken. Vier Stellen à la acht Bits ergibt ein 32-Bit-Adresssystem.
Das ist zu wenig, wenn jedes Haushaltgerät auf der Welt eine IP-Adresse abbekommen soll. Daher wird zur Zeit der neue Standard IPv6 (IP Version 6) mit einem 128-Bit-Adresssystem propagiert. Damit werden so viele IP-Adressen definiert, dass IPv6 für jeden Quadratmeter der Erde bis zu 1500 IP-Adressen bereit hält. Dadurch wird die Krücke der privaten Adressen, die beim Übergang ins Internet maskiert werden müssen, unnötig. IPv6 soll bis 2005 weitgehend eingeführt werden.
Ein Netzwerk wiederum wird dadurch bestimmt, dass eine Anzahl der 32 Stellen einer IPv4-Adresse von links aus gesehen bei allen Teilnehmeradressen gleich bleibt. Setzt man alle unveränderlichen Stellen auf 1 und rechnet das Ganze wieder in vier Dezimalzahlen um, erhält man die sogenannte Netzwerkmaske (Netmask).
Zahlen zu Namen
Weil sich IP-Nummern so schlecht merken lassen, gibt es das Domain Name System (DNS). DNS-Server ordnen den numerischen IP-Adressen textuelle Adressen in der bekannten Domain-Schreibweise (zum Beispiel www.linux-user.de) zu und umgekehrt.
Da gerade für sehr kleine lokale Netze der Betrieb eines DNS-Servers etwas zuviel des Guten wäre, gibt es die Möglichkeit, numerische und textuelle IP-Adressen in der hosts-Datei eines jeden Rechners einzutragen. Auf Linux und anderen Unix-Betriebssystemen findet sie sich im Verzeichnis /etc, auf Windows 2000/NT unter C:\winnt\system32\drivers\etc\ und in Windows 98/95/ME unter C:\windows\.
Die Formatierung dieser Datei ist trivial: Links die IP-Nummer, rechts (durch Leerzeichen getrennt) beliebig viele Namen in Textform. Listing 1 zeigt die /etc/hosts für unsere Beispielkonfiguration.
Nummern zu Nummern
Wurde ein Paket erst einmal ins richtige Netzwerk geroutet, gibt es auf Netzwerkebene ein Problem: Einerseits hat es eine Ziel-IP-Adresse, andererseits sieht man auf dieser Abstraktionsebene nur die sogenannten MAC-Adressen (MAC steht hier für "Media Access Control") der Netzwerkkarten. Diese Adresse kennzeichnet jede aktive Netzwerkkomponente weltweit eindeutig und wird vom Hersteller zugewiesen. Sie besteht aus sechs Bytes in Hexadezimal-Schreibweise, die durch Doppelpunkte getrennt sind, zum Beispiel 00:01:02:9B:B0:0B. Welcher Rechner mit welcher MAC-Adresse eine bestimmte IP-Adresse hat, wird durch das ARP ("Address Resolution Protocol") aufgelöst.(Frederik Bijlsma/Patricia Jung)
Listing 1
/etc/hosts
127.0.0.1 localhost.localdomain localhost 192.168.0.2 server 192.168.0.10 linux-client 192.168.0.11 windows-client



