Netzwerkgrundlagen - der Online Plattform der VHS Hagen

Transcription

Netzwerkgrundlagen - der Online Plattform der VHS Hagen
Netzwerkgrundlagen
c 2005 Jochen Grundmann
http://www.online-platform.net
Dieser Text unterliegt der GNU General Public License.
Er darf als Ganzes oder in Auszügen kopiert
werden, vorausgesetzt, dass sich dieser Copyright
Vermerk auf jeder Kopie befindet.
Version 1.1, 27. November 2005
Seite 2
Inhaltsverzeichnis
1
Einleitung
2
2.1
2.2
2.3
2.4
TCP/IP
Netzwerkschnittstellenschicht
Internetschicht . . . . . . .
Transportschicht . . . . . .
Anwendungsschicht . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4
5
5
5
6
3
3.1
3.1.1
3.2
3.3
3.4
3.5
3.6
3.6.1
3.6.2
3.6.3
IP-Adressen
Aufbau von IP-Adressen . . . . . . .
Netzklassen . . . . . . . . . . . . .
Spezielle IP Adressen und Bereiche .
IPv6 . . . . . . . . . . . . . . . . .
APIPA . . . . . . . . . . . . . . . .
Statische Zuweisung von IP-Adressen
Nützliche Programme . . . . . . . .
IPconfig . . . . . . . . . . . . . . .
IFconfig . . . . . . . . . . . . . . .
Ping . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7
7
7
8
9
10
10
13
13
14
15
4
4.1
DHCP
18
Weitere Möglichkeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5
5.1
5.2
5.3
5.3.1
5.3.2
5.3.2.1
5.3.2.2
5.3.3
Domain Name System
Die Datei Hosts . . . . . . . . .
Windows Internet Name Service
DNS . . . . . . . . . . . . . . .
Richtlinien für die Benennung . .
Zonen . . . . . . . . . . . . . .
Forward-Lookupzone . . . . . .
Reverse-Lookupzone . . . . . . .
Nslookup . . . . . . . . . . . .
Netzwerkgrundlagen
3
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
21
21
23
25
27
27
27
29
29
Seite 3
1 Einleitung
Netzwerke, vor allem das Internet, sind heute etwas Selbstverständliches geworden. Fast jeder
wird beruflich oder privat damit konfrontiert. Die meisten geben sich allerdings damit zufrieden
es zu nutzen, jedenfalls so lange es funktioniert. Wer sich intensiver mit der Materie Netzwerke
auseinander setzen möchte, kommt nicht darum herum, sich mit den theoretischen Grundlagen
zu beschäftigen, die Netzwerke erst ans Laufen bringen und am Laufen halten.
Das vorliegende Skript soll dazu beitragen Licht ins Dunkel zu bringen. Ich habe die wichtigsten
Aspekte, mit denen man bei der Konfiguration und Administration von Netzwerken konfrontiert
wird, zusammengefasst. Es ist vor allem als Begleitskript zu meinem Netzwerkgrundlagen Kurs,
den ich bei der VHS Hagen durchführe, gedacht. Die Inhalte sind aber auch unabdingbar für
jeden, der sich für die Administration von Netzwerkservern interessiert.
Das Skript enthält, für einen solch kurzen Kurs, eine Menge an Informationen. Es soll und
kann den Kurs nicht ersetzen, aber es ist einfach unmöglich sich als Teilnehmer alles mit
zuschreiben oder als Dozent die knapp 30 Seiten an die Tafel zu bringen. Trotz des Umfangs
behandelt das Skript nicht alle Netzwerkgrundlagen ausführlich, aber das liegt auch nicht in
meiner Absicht.
Ich möchte mich abschließend noch bei Ali Cengiz für das Korrekurlesen und bei Regina Harnischmacher für das Korrekurlesen und für die Erstellung der Grafiken und der Flashanimationen
bedanken.
Ansonsten hoffe ich, dass die Ausführungen dieses Dokuments für jeden, der es liest, hilfreich
sind.
Für Fragen, Kritik und Anregungen bin ich über die Online Plattform der VHS Hagen http:
//www.online-platform.net jederzeit zu erreichen.
Jochen Grundmann, im Juni 2005
Seite 4
2 TCP/IP
TCP/IP ist nicht nur das Standardprotokoll für das Internet, mittlerweile ist es auch zum
Standardprotokoll in lokalen Netzwerken geworden. Deshalb sind zumindest Grundkenntnisse
darin für jeden, der sich mit Netzwerken beschäftigen möchte, notwendig geworden.
TCP/IP besteht nicht nur aus einem bzw. zwei Protokollen (TCP und IP), sondern bezeichnet
heute eine ganze Reihe von Protokollen die zusammen arbeiten, auch TCP/IP Protokollfamilie
genannt.
Ähnlich wie beim OSI Referenzmodell arbeiten die verschiedenen Protokolle auf unterschiedlichen Schichten. Beim Empfang von Daten werden diese Schichten von unten nach oben
durchlaufen und beim Senden von oben nach unten.
Abbildung 2.1: TCP/IP Protokollfamilie
Netzwerkgrundlagen
Seite 5
2.1 Netzwerkschnittstellenschicht
Auf der Netzwerkschnittstellenschicht erfolgt die bitweise Übertragung der Daten über die
eingesetzte Netzwerkhardware. Es spielt keine Rolle, ob Glasfaser oder Kupfer Technologie
zum Einsatz kommt.
2.2 Internetschicht
In der Internetschicht ist vor allem das Protokoll IP (Internet Protocol) tätig. Es ist für die
Versendung der einzelnen Datenpakete zuständig, garantiert aber nicht, dass diese auch tatsächlich zugestellt werden oder in der richtigen Reihenfolge ankommen.
Außerdem ist in dieser Schicht ARP (Address Resolution Protocol) tätig. Dieses dient dazu
die MAC-Adresse1 , des Zielrechners zu ermitteln. IP erhält diese Adresse durch Rundsendung
eines ARP- Abfragepakets.
ICMP (Internet Control Messaging Protocol) dient zum Austausch von Status- und Fehlerinformationen zwischen den Hosts eines Netzwerks. Das Kommando ping verwendet dieses
Protocol um Informationen abzufragen.
IGMP (Internet Group Management Protocol) ermöglicht es Informationen gleich an eine
Gruppe von Computern zu übertragen. Dieses wird als Multicasting bezeichnet.
2.3 Transportschicht
In der Transportschicht arbeiten TCP (Transport Control Protocol) und UDP (User Datagram
Protocol). Sie ermöglichen Kommunikationssitzungen zwischen Hosts.
TCP besitzt einen leistungsfähigen Fehlerkorrektur Mechanismus. Dieser garantiert die Übertragung und die richtige Reihenfolge der Datenpakete. Dies wird erreicht, indem die Datenpakete durchnummeriert werden und durch die Generierung von Prüfsummen, die die Integrität
der Daten sicherstellen.
UDP hingegen besitzt keinerlei Fehlerkorrektur. Hier liegt die Verantwortung für die richtige
Übertragung bei der Anwendung. Es wird z.B. bei der Übertragung von DNS Informationen
eingesetzt.
1
Mit MAC-Adresse (Media Access Control) wird die eindeutige Hardware Adresse einer Netzwerkkarte bezeichnet. Diese ist weltweit einmalig, so dass es zu keiner Verwechselung mit dem Zielrechner kommt.
Seite 6
2.4 Anwendungsschicht
In der Anwendungsschicht erfolgt die Kommunikation zwischen den Protokollen der TCP/IP
Familie und den Anwendungen. Die Anwendungen können entweder Winsock (socketbasierte
Anwendungen) oder NetBT (NetBIOS basierte Anwendungen) als Schnittstelle verwenden.
Als Socket bezeichnet man die Verbindung zwischen einer IP-Adresse und einem Port. Wenn
eine Netzwerkverbindung über TCP/IP aufgebaut wird, wird die IP-Adresse an einen Port
gekoppelt. So ist z.B. der Standardport für den Zugriff auf das Internet Port 80.
Auf die Protokolle der TCP/IP Familie setzen dann weitere Protokolle wie FTP, SMTP, NNTP
u.a. auf.
Netzwerkgrundlagen
Seite 7
3 IP-Adressen
Wenn in einem Netzwerk TCP/IP als Übertragungsprotokoll verwendet wird, muss jeder Rechner mit einer eindeutigen IP-Adresse versehen werden, damit er im Netzwerk gefunden werden
kann. Diese Adresse kann entweder statisch oder dynamisch über einen DHCP Server (siehe
Seite 18) oder APIPA (siehe Seite 10) vergeben werden.
3.1 Aufbau von IP-Adressen
Die IP Version 4 (IPv4) ist ein 32-Bit Code und besteht aus 4 Oktetts. Jedes Oktett entspricht
einem Byte und kann einen Zahlenwert zwischen 0 und 255 annehmen. Die Oktetts werden
jeweils durch einen Punkt voneinander getrennt.
Beispiel: 192.168.0.1
Bei der neueren IP Version 6 (IPv6) liegt ein 128 Bit Code vor, der einen wesentlich größeren
Adressraum anbietet (siehe Seite 9).
Jede IP-Adresse wird in einen Netzwerk- und einen Hostbereich/Rechnerbereich aufgeteilt.
Dazu wird eine so genannte Subnetzmaske eingerichtet, die angibt wie viele Bits zum Netz
und wie viele zum Rechner gehören. Insgesamt gibt es fünf Klassen, die mit den Buchstaben
von A - E durchnummeriert sind. Die Klassen D und E sind allerdings für besondere Zwecke
reserviert (Klasse D für Multicast und Klasse E für Testzwecke). Deshalb soll auf diese hier
nicht weiter eingegangen werden.
3.1.1 Netzklassen
Bestimmte Standard-Subnetzmasken werden verschiedenen Netzklassen zugeordnet.
Klasse-A-Netz
Ein Klasse-A-Netz hat die Subnetzmaske 255.0.0.0. Das erste Oktett bestimmt das Netzwerk
und die restlichen drei Oktetts den Rechner.
Klasse-B-Netz
Ein Klasse-B-Netz hat die Subnetzmaske 255.255.0.0. Hier bestimmen die ersten beiden Oktetts das Netzwerk und die beiden letzten Oktetts den Rechner.
Seite 8
Klasse-C-Netz
Ein Klasse-C-Netz hat die Subnetzmaske 255.255.255.0. Hier bestimmen die ersten drei Oktetts das Netzwerk und das letzte Oktett den Rechner.
Abbildung 3.1: IP Klassen
3.2 Spezielle IP Adressen und Bereiche
Es gibt einige spezielle IP-Adressen, mit denen Rechner nicht ausgestattet werden dürfen, da
sie eine besondere Funktion haben.
Broadcast-Adresse
Mit der Broadcast-Adresse kann ein Rechner alle anderen Rechner in seinem Netzwerk gleichzeitig erreichen. Für einen Rechner mit der Adresse 192.168.0.17 ist die Broadcast-Adresse
192.168.0.255. Ein Rechner kann also niemals eine IP Adresse haben, die auf 255 endet.
Die Broadcast Adresse eines Netzwerks wird zum Beispiel beim Bezug einer dynamischen
IP-Adresse über DHCP verwendet (siehe auch Seite 18).
Loopback-Adresse
Mit der Loopback-Adresse (127.0.0.1) adressiert sich jeder Rechner selbst. Diese Adresse dient
zum Testen von Netzwerkverbindungen.
Netzwerkgrundlagen
Seite 9
Öffentliche IP-Adressbereiche
In jeder Netzwerkklasse gibt es einen Adressbereich, der nicht für das Internet zugelassen ist
und für private Netzwerke genutzt werden kann.
Klasse
A
B
C
Anzahl Subnetze nutzbare Adressbereiche
1
10.0.0.0 - 10.255.255.255
16
172.16.0.0 - 172.31.255.255
256
192.168.0.0 - 192.168.255.255
Welcher Adressbereich in einem Netzwerk genutzt werden soll ist u.a. auch von der Anzahl der
Rechner in einem Netzwerk abhängig. Bei wenigen Rechnern ist ein Klasse C Netzwerk ausreichend. Bei mehr als 256 Rechnern ist aber möglicherweise ein Klasse B Netzwerk einfacher,
da man ohne Routing auskommt.
3.3 IPv6
Bereits Anfang der 90er Jahre des letzten Jahrhunderts war absehbar, dass der Adressraum
den IPv4 anbietet nicht mehr ausreichen wird1 . Außerdem ist das IPv4 Protokoll annähernd
20 Jahre alt und entspricht nicht mehr den heutigen Ansprüchen, z.B. im Bereich Sicherheit.
Deshalb wurde es notwendig eine neue Version zu entwickeln, eben IPv6.
IPv6 ist ein 128-bit Code, der hexadezimal notiert wird. Eine IPv6 Adresse besteht aus 8
Oktetts, die jeweils durch einen Doppelpunkt getrennt werden, z. B.
1080:0000:0000:0000:0008:0800:0004:417A
Die Länge und die hexadezimale Schreibweise machen eine IPv6 Adresse ziemlich komplex.
Deshalb gibt es einige Möglichkeiten die Schreibweise zu vereinfachen.
1. Aufeinander folgende Oktetts, die nur aus Nullen bestehen, dürfen ausgelassen werden.
Dieses wird durch zwei aufeinander folgende Doppelpunkte gekennzeichnet. Dieser Vorgang darf aber nur einmal durchgeführt werden. Die obige Adresse würde dann wie folgt
aussehen:
1080::0008:0800:0004:417A
2. Führende Nullen eines Oktetts dürfen ebenfalls ausgelassen werden, so dass von der
ursprünglichen Adresse noch
1080::8:800:4:417A´
übrig bleibt.
1
Als Zahl ausgeschrieben bietet der IPv6 Adressraum 340.282.366.920.938.463.463.374.607.431.768.211.456
verschiedene Adressen, währen IPv4 nur 4.294.967.296 verschiedene Adressen anbietet.
Seite 10
Weitere Neuerungen liegen darin, dass an Stelle von Netzklassen eine hierarchische Struktur
verwendet wird und Sicherheitsmechanismen wie Datenverschlüsselung implementiert sind.
Animationen
Vereinfachung von IPv6 Adressen:
http://www.online-platform.net/dns/reduzierung_dt.php?id=5
Hierarchische Struktur von IPv6 Adressen:
http://www.online-platform.net/dns/structur_dt.php?id=6
3.4 APIPA
Unter Windows 2000/XP/2003 besteht die Möglichkeit auch ohne DHCP Server mit dynamischen IP-Adressen zu arbeiten. Dieser Mechanismus trägt den Namen APIPA (Automatic
Private IP Addressing). Wenn weder eine statische noch eine dynamische IP-Adresse über
einen DHCP-Server bezogen werden kann weist sich ein Rechner selbstständig eine IP Adresse zu. Für APIPA ist der Adressbereich 169.254.0.1 - 169.254.254.254 mit der Subnetzmaske
255.255.0.0 reserviert. Dieser Bereich ist ebenfalls ein öffentlicher Bereich und wird im Internet
nicht verwendet.
3.5 Statische Zuweisung von IP-Adressen
Standardmäßig ist ein Rechner sowohl unter Windows als auch unter Linux auf den Bezug einer
dynamischen IP-Adresse eingestellt2 . Ist kein DHCP Server auffindbar, so geben sich Windows
2000/XP Rechner selbstständig über APIPA eine IP-Adresse. Das ist sicherlich eine einfache
Möglichkeit, wenn man ein einfaches Peer to Peer Netzwerk mit zwei oder drei Rechnern
verwaltet.
In einem kleinen Netzwerk kann aber auch mit statischen IP-Adressen gearbeitet werden.
Das erhöht zwar den Konfigurationsaufwand, ist aber noch überschaubar. In einem größeren
Netzwerk hingegen ist es einfacher mit dynamischen IP-Adressen zu arbeiten. Hier sollte jedoch
darauf geachtet werden, dass die Server immer über eine feste IP-Adresse verfügen, damit
sichergestellt ist, dass sie immer erreichbar sind. Außerdem kann ein DHCP Server sich selbst
keine dynamische IP-Adresse geben.
Die statische Zuweisung einer IP-Adresse erfolgt unter Windows in den Netzwerk- und DFÜVerbindungen3 . Dort werden alle Verbindungen aufgelistet. Wählen Sie die gewünschte LANVerbindung aus und klicken im Kontextmenü auf Eigenschaften. Machen Sie dann einen Dop2
Natürlich kann bereits während der Installation bei beiden Betriebssystemen eine statische IP-Adresse vergeben werden.
3
Je nach Windowsversion und -einstellung gibt es verschiedene Wege dorthin. Auf jeden Fall sind die Einstellungen über die Systemsteuerung erreichbar. Mein bevorzugter Weg geht über das Kontextmenü der
Netzwerkumgebung.
Netzwerkgrundlagen
Seite 11
pelklick auf Internetprotokoll oder wählen Sie Internetprotokoll aus und klicken anschließend
auf die Schaltfläche Eigenschaften.
Abbildung 3.2: Einrichtung einer statischen IP-Adresse unter Windows
Klickt man nach der Eingabe der IP-Adresse in das Feld Subnetzmaske, wird dieses von Windows automatisch ausgefüllt.
Für die einfache Vernetzung von mehreren Rechnern sind diese Angaben bereits ausreichend.
Ob ein Gateway und oder ein DNS Server (siehe Seite 21) eingetragen werden muss, ist von
der Netzwerkstruktur abhängig4 .
Zur Überprüfung sollte anschließend mit dem ping Kommando getestet werden, ob die verbundenen Rechner über das Netzwerk erreichbar sind (siehe Seite 15).
Unter SuSE Linux gestaltet sich die Zuweisung einer statischen IP-Adresse ähnlich einfach.
Starten Sie dazu YaST2 und wechseln Sie in die Kategorie Netzwerkgeräte. Wählen Sie dort
den Punkt Netzwerkkarte aus. Im folgenden Dialog werden unter Bereits konfigurierte Geräte
4
Wird als Serverbetriebssystem Windows 2000/2003 eingesetzt und der Rechner hat eine statische IP-Adresse,
so muss auf jeden Fall ein DNS Server eingetragen werden, da in Windows 2000/2003 Netzwerken die
Namensauflösung über DNS durchgeführt wird.
Seite 12
alle Netzwerkkarten aufgelistet. Über die Schaltfläche Ändern gelangen Sie in den nächsten
Dialog. Dort wählen Sie die gewünschte Netzwerkkarte aus und klicken auf die Schaltfläche
Bearbeiten. Im Gegensatz zu Windows wird die Subnetzmaske allerdings nicht automatisch
eingetragen.
Abbildung 3.3: Einrichtung einer statischen IP-Adresse unter Linux
Unter Linux wird zusätzlich die MAC-Adresse der Netzwerkkarte angegeben.
Animationen
Einrichtung einer statischen IP-Adresse unter Windows 2000/XP:
http://www.online-platform.net/dns/win2k.php?id=13
Einrichtung einer statischen IP-Adresse unter SuSE Linux:
http://www.online-platform.net/dns/linux.php?id=12
Netzwerkgrundlagen
Seite 13
3.6 Nützliche Programme
Sowohl unter Windows als auch unter Linux gibt es einige Programme, mit denen die Netzwerkkonfiguration und Funktionalität überprüft werden kann. Bei beiden Betriebssystemen handelt
es sich um Programme, die von einer Konsole bzw. Shell gestartet werden.
3.6.1 IPconfig
Zum Überprüfen der Netzwerkkonfiguration wird unter Windows eine Eingabeaufforderung5
gestartet. Über die Eingabe von ipconfig wird die aktuelle IP-Adresse, die dazu gehörige Subnetzmaske und ein eventuell vorhandenes Gateway eines Rechners ausgegeben.
Abbildung 3.4: IPconfig
Das Programm ipconfig kann mit verschiedenen Parametern aufgerufen werden. Diese werden
durch einen Schrägstrich getrennt an den Programmnamen angehängt. Eine Liste aller möglichen Parameter und eine kurze Erklärung kann über die Eingabe von ipconfig/? angezeigt
werden.
Für die IP-Konfiguration ist der Parameter all noch interessant. Durch die Eingabe von ipconfig
/all, werden alle Informationen zur Netzwerkkarte und der IP-Konfiguration ausgegeben, die
verfügbar sind. Zu den Ergebnissen siehe auch die Kapitel DNS auf Seite 21, DHCP auf Seite
18 und WINS auf Seite 23.
5
Ein schneller Weg, um eine DOS-Konsole zu bekommen geht über den Ausführen Dialog im Start Menü
oder alternativ durch Tastenkombination Windowstaste+r. Dort muss dann noch cmd eingegeben werden
und die Konsole wird geöffnet. Unter Windows 95/98/ME muss statt cmd command eingegeben werden.
Seite 14
Abbildung 3.5: IPconfig/all
Wenn mehrere Netzwerkkarten im Rechner vorhanden sind, werden diese Informationen für alle
ausgegeben. Dabei kann es durchaus sein, dass eine Netzwerkkarte eine statische IP-Adresse
hat und eine zweite eine dynamische IP-Adresse. Das ist z.B. der Fall, wenn im Netzwerk
der Internetzugang über die Internetverbindungsfreigabe von Windows XP realisiert wird. In
diesem Fall bekommt die Netzwerkkarte, über die der Computer mit dem lokalen Netzwerk
verbunden ist , immer die feste IP-Adresse 192.168.0.1.
3.6.2 IFconfig
Unter Linux gibt es ein ähnliches Programm mit dem Namen ifconfig. Man benötigt rootRechte zur Ausführung.
Netzwerkgrundlagen
Seite 15
Abbildung 3.6: IFconfig
Die Informationen sind nicht ganz so umfangreich wie unter Windows, aber dafür wird hier
auch die IPv6 Adresse und die Loopback Adresse der Netzwerkkarte ausgegeben.
Ipconfig und ifconfig bieten sich immer zur Überprüfung der Netzwerkkonfiguration an, wenn
im Netzwerk mit dynamischen IP-Adressen über einen DHCP Server gearbeitet wird, da es
die einzige Möglichkeit ist am Rechner selbst nach zuschauen, welche IP-Adresse zugewiesen
wurde. Wenn z.B. wegen eines falschen Treibers6 oder einer defekten Netzwerkkarte keine
Netzwerkverbindung aufgebaut werden kann, kann dies hierüber erkannt werden.
3.6.3 Ping
Sowohl unter Windows als auch unter Linux steht das Programm ping zur Verfügung7 . Es wird
zur Überprüfung der Netzwerkfunktionalität eingesetzt. Hierzu werden Datenpakete über das
Netzwerk an einen der anderen Rechner geschickt. Der Aufruf erfolgt über die Eingabe von
ping und der IP-Adresse des Zielrechners, z.B. ping 172.31.0.240.
6
Manchmal werden trotz automatischer Hardwareerkennung Netzwerkkarten falsch erkannt und dem entsprechend ein falscher Treiber installiert.
7
Da ping bei beiden Betriebssystemen identisch arbeitet, stammen die Screenshots sowohl von Linux als auch
von Windows. Die Beispieleingaben sind jederzeit austauschbar.
Seite 16
Abbildung 3.7: Ping auf eine IP-Adresse
Wenn im Netzwerk z.B. über einen DNS Server die Rechnernamen in IP-Adressen aufgelöst
werden, kann ping auch mit dem Rechnernamen statt der IP-Adresse aufgerufen werden, z.B.
ping win2k-file.
Abbildung 3.8: Ping auf den Computernamen
Wenn Rechner im Netzwerk nicht erreicht werden können, sollte zuerst ein ping auf die Loopbackadresse ausgeführt werden.
Netzwerkgrundlagen
Seite 17
Abbildung 3.9: ping auf die Loopbackadresse
Bei Computern ohne Netzwerkkarte kann ping auch über die Eingabe von ping localhost
getestet werden. Der Name localhost ist immer mit der Loopbackadresse verknüpft (siehe
Seite 21).
Abbildung 3.10: ping auf localhost
Für das Kommando ping stehen noch weitere Parameter zur Verfügung. Diese werden unter
Windows durch die Eingabe von ping/? und unter Linux durch die Eingabe von ping -h
angezeigt.
Seite 18
4 DHCP
DHCP bedeutet Dynamic Host Configuration Protocol und bezeichnet das Protokoll, über das
die dynamische Zuweisung von IP-Adressen (und weiterer optionaler Netzwerkinformationen)
an einen Client durch einen so genannten DHCP Server durchgeführt wird. Bei jedem Windows
und Linux Client gehört die dafür benötigte DHCP-Clientsoftware zur Standardinstallation. Sie
wird aktiv, wenn der IP-Adressenbezug auf automatisch gestellt wird. Diese Zuweisung von
IP-Adressinformationen wird als DHCP-Lease bezeichnet.
Der Bezug einer dynamischen IP-Adresse über DHCP läuft auf folgende Weise ab.
1. DHCPDISCOVER
Beim ersten Start sendet der Client eine Broadcastmeldung in der Standort eines DHCPServers und IP-Adressinformationen angefordert werden. Da er zu diesem Zeitpunkt noch
keine IP-Adresse besitzt, verwendet er als Quelladresse 0.0.0.0. Die Meldung enthält die
Hardwareadresse (MAC-Adresse) des Clients und dessen Computernamen, damit der
Server feststellen kann, welcher Client die Anforderung gesendet hat.
2. DHCPOFFER
Alle Server, die die IP-Leaseanforderung empfangen und über eine gültige Clientkonfiguration verfügen, senden daraufhin eine DHCPOFFER-Broadcastmeldung mit folgenden
Informationen:
• Hardwareadresse des Clients
• Angebot einer IP-Adresse
• Subnetzmaske
• Leasedauer
• IP-Adresse des Servers
3. DHCPREQUEST
Nachdem der Client die DHCPOFFER Meldung erhalten und eine IP-Adresse ausgewählt
hat, sendet er eine DHCPREQUEST Broadcastmeldung an alle DHCP-Server, in der er
die Annahme eines Angebots mitteilt. Diese beinhaltet u.a. die IP-Adresse des Servers,
dessen Angebot angenommen wurde. Daraufhin ziehen alle anderen DHCP-Server ihr
Angebot zurück.
Netzwerkgrundlagen
Seite 19
4. DHCPACK/DHCPNACK
Der DHCP-Server sendet eine Bestätigung an den Client. Diese enthält eine gültige Lease
für eine IP-Adresse, sowie ggf. weitere Konfigurationsinformationen, z.B. Gateway, DNSServer, Zeitserver, Router.
Die DHCPNACK-Meldung wird gesendet wenn die DHCP-Requestmeldung nicht erfolgreich ist. Sie tritt ein wenn:
• Der Client versucht seine ehemalige IP-Adresse zu leasen, die aber nicht mehr
verfügbar ist.
• Die IP-Adresse ist ungültig, weil der Computer in ein anderes Subnetz verschoben
wurde
Abbildung 4.1: DHCP Lease Vorgang
Die über DHCP empfangenen Informationen gelten nur für einen bestimmten Zeitraum, die
so genannte Lease-Dauer. Nach der Hälfte der Lease-Dauer verlängert der Client selbstständig
seine Lease beim DHCP Server.
Beim nächsten Start kann der Client ohne erneute Abfrage seine ehemalige IP-Adresse wieder
beziehen, vorausgesetzt die Lease-Dauer ist noch nicht abgelaufen und die IP-Adresse damit
wieder freigegeben.
4.1 Weitere Möglichkeiten
Neben der IP-Adresse, DNS Server und WINS Server können aber noch weitere netzwerkrelevante Informationen über DHCP bezogen werden, die bei einer statischen Einrichtung einen
erheblichen Administrationsaufwand verursachen würden.
Seite 20
Gateway
Ein Gateway wird als Verbindung zu anderen Netzwerken eingesetzt. Üblicherweise kann ein
Computer nur mit Computern kommunizieren, die sich im gleichen Netzwerk wie er selbst
befinden. Wenn ein Netzwerk aus zwei Subnetzen besteht, kann ein Server als Router eingerichtet werden, der die beiden Subnetze miteinander verbindet. Dieser Server ist dann über
zwei Netzwerkkarten an beide Subnetze angeschlossen.
Der als Gateway eingerichtete Server kann aber auch die Verbindung ins Internet herstellen.
Zeitserver
Es ist auch möglich einen der Server als Zeitserver festzulegen, der den Clients über DHCP
Datum und Uhrzeit übermittelt. Damit ist sichergestellt, dass alle Rechner im Netzwerk gleich
eingestellt sind. Die manuelle Änderung von Datum und Uhrzeit ist unter Windows leider nur
als Administrator möglich, was wiederum einen erheblichen Mehraufwand bedeutet.
Es gibt natürlich darüber hinaus noch viele weitere Optionen, die aber den Umfang dieses
Skripts sprengen würden.
Netzwerkgrundlagen
Seite 21
5 Domain Name System
Kein Anwender verwendet in einem Netzwerk, vor allem im Internet, IP-Adressen, um auf andere Rechner zugreifen zu können. Schließlich kann man sich Namen auch besser merken als
Zahlen. Deshalb muss dafür gesorgt werden, dass die Namen in einem Netzwerk in die dazugehörigen IP-Adressen aufgelöst werden. Dazu stehen grundsätzlich verschiedene Möglichkeiten
zur Verfügung, die auf den folgenden Seiten näher betrachtet werden sollen. Die geeignetste
bzw. einfachste Methode zur Namensauflösung ist dabei vom Verwendungszweck abhängig.
5.1 Die Datei Hosts
Eine einfache Möglichkeit um die Namensauflösung durchzuführen, ist die Verwendung der Datei hosts 1 . Der Aufbau und die Funktion dieser Datei ist bei allen Betriebssystemen identisch.
Unter Linux findet man sie im Verzeichnis /etc, unter Windows 2000/XP/2003 unter %sytemroot%\system32\drivers\etc 2 und unter Windows 98 direkt im Verzeichnis C:\windows.
Hierbei handelt es sich um eine Tabelle in reinem Textformat, in der die IP-Adressen und die
dazugehörigen Namen aufgelistet sind. Die erste Spalte enthält die IP-Adressen und die zweite
Spalte die Namen der Computer, die diesen IP-Adressen zugeordnet sind. Kommentarzeilen
werden mit dem Zeichen # eingeleitet. Zur Bearbeitung der Datei kann ein beliebiger Texteditor verwendet werden, z.B. Notepad unter Windows oder Kate unter Linux. Änderungen an
der Datei werden sofort wirksam, es ist kein Neustart erforderlich.
Es ist zu beachten, dass unter Linux Änderungen an der Datei hosts nur als der Benutzer root
möglich sind.
Der folgende Screenshot wurde unter SuSE Linux erstellt. Hier sind bereits die vordefinierten
IPv6 Adressen zu sehen. Unter Windows ist die Datei natürlich entsprechend kürzer.
1
Im gleichen Verzeichnis wie die Datei hosts befindet sich möglicherweise auch eine Datei mit dem Namen
hosts.sam. Diese ist inhaltlich identisch mit der Datei hosts. Allerdings handelt es sich dabei nur um eine
Beispieldatei. Ich habe es schon häufig erlebt, dass statt der Datei hosts die hosts.sam verwendet wird.
Dann funktioniert die Namensauflösung nicht.
2
Mit der Systemvariablen %systemroot% wird das Laufwerk und das Verzeichnis angesprochen, in dem das
Betriebssystem installiert ist. Unter Windows 2000 ist das standardmäßig C:\Winnt und unter XP/2003
C:\Windows.
Seite 22
Abbildung 5.1: Die Datei hosts
Der Eintrag mit dem Verweis der Loopbackadresse 127.0.0.1 auf den Namen localhost ist
immer schon in der Datei vorhanden. Deshalb ist es auch möglich das Kommando ping mit
einem Namen durchzuführen.
Weitere Einträge werden darunter vorgenommen. Dabei kann eine IP-Adresse auch mit mehreren Namen verknüpft werden.
Noch einfacher gestaltet sich die Bearbeitung der Datei hosts unter Mandriva Linux 2006.
Im Mandriva Linux Kontrollzentrum (zu erreichen über K-Menü -> System -> Einstellungen
-> Den Computer konfigurieren) steht unter Netzwerk & Internet mit dem Punkt Hosts
Definitionen verwalten eine grafische Oberfläche zur Verfügung, so dass nicht mehr direkt in
der Textdatei gearbeitet werden muss. Dies ist gerade für Anfänger eine Arbeitserleichterung.
Netzwerkgrundlagen
Seite 23
Abbildung 5.2: Hosts Definitionen verwalten
Über die Schaltflächen Hinzufügen, Bearbeiten und Entfernen am rechten Rand können neue
Einträge vorgenommen werden und bereits vorhandene bearbeitet oder wieder gelöscht werden.
Da die Datei hosts nur lokal ausgewertet werden kann, muss sie in einem Netzwerk auf jedem
Rechner einzeln geführt werden3 . Bei nur zwei oder drei Rechnern ist das sicherlich noch
machbar, aber bei mehr Computern wird der Verwaltungsaufwand, vor allem bei Änderungen,
einfach zu groß.
5.2 Windows Internet Name Service
WINS ist ein von Microsoft entwickelter Ansatz zur Übersetzung von Computernamen in IPAdressen. Bei den neueren Versionen von Windows (ab Windows 2000) wird WINS nicht mehr
benötigt, da die Namensauflösung über DNS erfolgt.
3
Ich verwende die Datei hosts um meine Webprojekte mit PHP und MySQL über einen Namen ansprechen zu
können. Diese löst die virtuellen Server des Apache Webservers in die dazugehörige IP-Adresse auf. Weitere
Informationen dazu sind unter http://www.online-platform.net/downloads/PHP.pdf zu finden.
Seite 24
Ältere Clients hingegen verwenden noch NetBIOS-Namen zur Kommunikation. In einer Windows 2000/2003 Netzwerk Umgebung mit z.B. Windows NT Clients müssen also NetBIOSNamen in IP-Adressen aufgelöst werden. Diese Aufgabe übernimmt der WINS Server. Er unterhält eine dynamische Datenbank, die die Zuordnung von Computernamen zu IP-Adressen
verwaltet. Wenn mit statischen IP Adressen gearbeitet wird, muss der WINS Server bei allen
Clients eingetragen werden. Dies geschieht in den Eigenschaften des Internetprotokolls (siehe Seite 11). Über die Schaltfläche Erweitert können zusätzliche Einstellungen vorgenommen
werden. Dort werden im Register WINS über die Schaltfläche Hinzufügen die IP-Adressen des
oder der WINS Server eingetragen.
Abbildung 5.3: WINS
Beim Start eines WINS Clients meldet sich dieser beim WINS Server an und registriert sich dort
mit seinem Namen und seiner IP-Adresse. Wenn der Name noch nicht vergeben ist, schickt
der der Server eine Bestätigung an den Client zurück, dass der Name für eine bestimmte Zeit
für ihn reserviert ist. Diese Zeitspanne wird TTL (Time to Live) genannt. Die Namensanforderungen werden direkt an den Server gestellt, nicht über Broadcast. Wenn der Computer
ordnungsgemäß heruntergefahren wird, wird der Name wieder freigegeben.
Netzwerkgrundlagen
Seite 25
Da NetBIOS Namen nur temporär registriert werden, muss ein WINS Client seinen Namen
erneuern, bevor die TTL abgelaufen ist. Würde dies nicht geschehen, würde der Name anderen
Clients zur Verfügung stehen. Nach einem Achtel der TTL erfolgt der 1. Erneuerungsversuch,
sonst alle zwei Minuten nach der Hälfte der TTL, danach wird zum sekundären Server gewechselt (wenn vorhanden).
Ist ein Name bereits registriert, überprüft der Server ob der derzeitige Besitzer noch im Netzwerk zur Verfügung steht. Dazu wird eine Namensanforderung an diesen gesendet. Dies geschieht dreimal in Abständen von 500 ms. Erfolgt keine Antwort, geht der WINS Server davon
aus, dass der Besitzer nicht mehr im Netzwerk ist und vergibt den Namen neu. Meldet sich
der Namensinhaber, wird eine negative Antwort an den anderen Client gesendet.
Nach der Registrierung bei einem WINS-Server kann der Client mit anderen Clients kommunizieren, in dem er IP-Adressen anderer NetBIOS basierter Computer vom WINS Server abfragt.
Damit nicht für jede Kommunikation der WINS Server abgefragt werden muss, verwaltet der
Client einen Namenscache. Dieser wird zuerst auf die Zuordnung des NetBIOS Namens zur
IP-Adresse des Zielcomputers überprüft. Gelingt das nicht, sendet er eine Anforderung zur
Namensabfrage an den WINS-Server. Ist dieser nicht verfügbar, wird die Anforderung zweimal
wiederholt, dann erfolgt eine Anforderung an den sekundären WINS-Server (wenn vorhanden).
Bei Auflösung des Namens durch den WINS-Server sendet dieser die IP-Adresse des angeforderten Namens an den Client zurück. Wenn der Name nicht aufgelöst werden kann, wird dem
Client mitgeteilt, dass der angeforderte Name nicht existiert, daraufhin initiiert der Client ein
Netzwerkbroadcast.
5.3 DNS
DNS wird im Internet zur Übersetzung von Namen (URLs) in die dazugehörigen IP-Adressen
eingesetzt. Durch die Verbreitung des Internets in den letzten Jahren hat dieses Verfahren auch
Einzug in lokale Netzwerke gefunden. Diese Aufgabe übernehmen so genannte DNS Server,
auch Nameserver oder Namensserver genannt.
DNS ist eine verteilte Datenbank mit einer hierarchischen Struktur. Jeder DNS Server verwaltet
einen Teil der Datenbank. Die hierarchische Struktur sorgt für die Kommunikation der DNS
Server untereinander.
Die oberste Instanz sind sogenannte Root Server, auch Stammnamenserver genannt. Diese
werden durch einen "." bezeichnet. Darunter befinden sich die Top-Level-Domains (Domänen 1. Ebene), kurz TLD. Die Top-Level-Domains werden in generische und länderspezifische
(Country Code) Domains unterteilt.
Dann folgen die Second-Level-Domains (Domänen 2. Ebene), kurz SLD. Die Namen für die
Second-Level-Domains können frei gewählt werden. Danach können noch Subdomains zur
weiteren Untergliederung folgen. Am Ende der Kette steht immer ein bestimmter Computer.
Seite 26
Abbildung 5.4: DNS Hierarchie
Jeder Knoten (Domäne) repräsentiert eine Partition der DNS-Datenbank. Beim Hinzufügen
von Domänen wird der Name der übergeordneten Domäne angehängt. Dadurch kann die
Position der Domäne in der Hierarchie ermittelt werden.
Rootdomain
.
Top-Level-Domain
net, edu, org, de, fr
Second-Level-Domains online-platform.net, kann auch Computer oder Subdomänen (tests.online-platform.net) enthalten
Hostnamen
ein bestimmter Computer im Internet oder Netzwerk, ein
Hostname ist der äußerste linke Bestandteil eines FQDN
(www.online-platform.net)
Der vollständige DNS-Name eines Hosts wird als FQDN (Fully Qualified Domain Name) bezeichnet. Dieser wird von DNS zur Auflösung eines Namens in eine IP-Adresse verwendet, z.B.
www.online-platform.net. Der Name wird von rechts nach links aufgelöst (siehe hierzu auch
Abbildung 5.5 auf Seite 28).
Netzwerkgrundlagen
Seite 27
5.3.1 Richtlinien für die Benennung
Bei der Vergabe von Domain-Namen gibt es einige Punkte, die beachtet werden müssen bzw.
beachtet werden sollten.
• nicht mehr als fünf Ebenen
• Verwenden von eindeutigen Namen
• Verwenden einfacher Namen
• Vermeiden langer Namen (max. Länge für einen FQDN sind 255 Zeichen, Domänenname
max. 63 Zeichen)
• Verwendung der standardmäßigen DNS- und Unicode-Zeichen (DNS: A-Z, a-z und der
Bindestrich (-)
5.3.2 Zonen
Mit Hilfe von Zonen wird die DNS Struktur in verwaltbare Abschnitte aufgeteilt. Eine Zone
entspricht dabei einer Domain und ihren Subdomains. Ein Namenserver speichert die Zonendatenbankdatei. Jede Zone benötigt mindestens einen Namenserver, eine Zone kann jedoch mit
mehreren Namenservern verknüpft sein. Die Aufteilung ist von der Menge der Informationen
abhängig, die gespeichert werden.
Jede Zone ist mit einer bestimmten Domäne verankert = Stammdomäne. Die Zonendatei
enthält nur die Namenszuordnungen für die IP-Adressen einer Zone. Es werden zwei Arten von
Zonen unterschieden.
5.3.2.1 Forward-Lookupzone
In einer Forward-Lookupzone wird ein Name in die dazugehörige IP-Adresse aufgelöst. Dazu
gibt ein Client die Abfrage an einen lokalen Namenserver weiter. Dieser kann den Namen
entweder auflösen oder gibt ihn an einen anderen Namenserver weiter. Die folgende Grafik
zeigt den Vorgang der Auflösung bei der Adresse www.fun2learnmore.de.
Seite 28
Abbildung 5.5: DNS Namensauflösung
1. Der Client stellt eine Forward-Lookupfrage an den lokalen Namenserver des Providers
zur Auflösung des Namens www.fun2learnmore.de in eine IP-Adresse.
2. Der Namenserver prüft die Zonendatenbankdatei. Da er keine Autorität für die Domäne
www.fun2learnmore.de besitzt, leitet er die Abfrage an einen Rootnamenserver weiter.
Der Rootnamenserver gibt einen Verweis auf den de-Namenserver zurück
3. Der lokale Namenserver wendet sich an den de-Namenserver, der mit einem Verweis auf
den fun2learnmore-Namenserver antwortet.
4. Der lokale Namenserver wendet sich daraufhin an den fun2learnmore-Namenserver. Da
dieser über Autorität über diesen Teil des Domänennamespace verfügt, wird die IPAdresse für www.fun2learnmore.de zurückgegeben.
5. Der lokale Namenserver sendet die IP-Adresse an den Client.
Der Namenserver speichert die Abfragen für einen bestimmten Zeitraum (TTL = Time to
Live) in einem Cache. Die Standardeinstellung unter Windows für die TTL sind 60 Minuten,
diese kann aber geändert werden. Nach Ablauf der TTL wird das Abfrageergebnis aus dem
Cache gelöscht.
Netzwerkgrundlagen
Seite 29
Animationen
DNS Namensauflösung:
http://www.online-platform.net/dns/dns_animiert_extra_dt.php?id=4
5.3.2.2 Reverse-Lookupzone
Zusätzlich zu Forward-Lookupzonen besteht die Möglichkeit Reverse-Lookupzonen einzurichten. Bei einer Reverse-Lookupfrage werden IP-Adressen in die dazugehörigen Namen aufgelöst.
Dazu wird eine spezielle Domain mit dem Namen in-addr.arpa erstellt. Vor den Namen wird
die Netzwerkadresse in umgekehrter Reihenfolge gesetzt. Für das Netzwerk 192.168.0.x würde
dann der Name für die Reverse-Lookupzone 0.168.192.in-addr.arpa lauten.
5.3.3 Nslookup
Unter Windows kann das Kommandozeilenprogramm nslookup zur Fehlersuche und Funktionsüberprüfung bei DNS Servern sehr hilfreich und nützlich sein. Nslookup kann in einem
interaktiven oder einem nicht interaktiven Modus verwendet werden. Im nicht interaktiven
Modus wird nslookup mit einer IP- Adresse oder einem Hostnamen aufgerufen, z.B.
nslookup cult-doz
nslookup 172.31.0.85
Der interaktive Modus wird durch die Eingabe von nslookup ohne weitere Optionen gestartet.
Danach werden der aktive DNS Server und dessen IP-Adresse ausgegeben. Am dann erscheinenden Prompt können die Optionen dann eingegeben werden, ohne nslookup jedes Mal erneut
starten zu müssen. Durch die Eingabe des Befehls wird nslookup wieder beendet.
Durch die Eingabe einer IP-Adresse wird der dazugehörige Hostname angezeigt. Außerdem
wird der FQDN des DNS Servers und dessen IP-Adresse angezeigt. Danach folgt der FQDN
des abefragten Hosts und noch einmal dessen IP-Adresse.
Abbildung 5.6: nslookup mit IP-Adresse
Seite 30
Wenn eine Reverse Lookupzone konfiguriert wurde, ist auch die Abfrage eines Hostnames
möglich.
Abbildung 5.7: nslookup mit Hostname
Die ausgegebenen Informationen entsprechen den Ergebnissen bei der Abfrage einer IP-Adresse.
Netzwerkgrundlagen