
|
|
IP - ARP, RARP, DHCP und BootP
Jedes Übertragungsnetz (z.B. Ethernet, Token Ring) benutzt eine eigene
Adressierungs-methode. Die hierbei verwendeten Adressen werden Hardwareadressen
genannt. Für jedes dieser Netze muss deswegen ein Verfahren gefunden werden,
Internetadressen in die spezifischen Hardwareadressen umzusetzen. Dies wird als
Adressauflösung (address resolution) bezeichnet.
Einige Netze verwenden sehr kurze Hardwareadressen, die vom Systembetreuer
eingestellt werden können. In diesem Fall ist eine arithmetische Umsetzung der
Hostadresse auf die Hardwareadresse möglich. Im Falle von z.B. Ethernet geht
dies nicht, da die Hardwareadressen vom Hersteller der Ethernethardware fest
eingestellt werden und sie für eine arithmetische Umsetzung mit 6 Byte zu lang sind.
Für diesen Fall existiert ein spezielles Protokoll, das Address Resolution
Protocol (ARP). Das Funktionsprinzip ist einfach: Ein Rechner, der die
Hardwareadresse seines Zielrechners nicht kennt, schickt eine ARP-Anforderung
als Broadcast-Datagramm (d.h. an alle Rechner des Netzes) ab. Diese enthält
Internet- und Hardwareadresse des Senders und die IP-Adresse des Zielrechners.
Alle Rechner des Netzes prüfen nun, ob sie das Ziel der Anfrage sind. Nur der
Zielrechner beantwortet das Paket mit einer ARP-Bestätigung, das er direkt an
den anfragenden Rechner schickt. Diese enthält seine Hardwareadresse, die der
anfragende Rechner zur Übertragung der Nutzdaten verwenden kann.
Dieses Verfahren wäre sehr kostenintensiv (hohe Netzlast, hohe Belastung nicht
beteiligter Rechner), wenn diese ARP-Anforderungen jeden Datenaustausch einleiten
würden. Daher wurde der ARP-Cache eingeführt. Er ist ein Tabelle von IP- und
zugehörigen Hardwareadressen, die jede Station führt. Sie wird aktualisiert,
sobald eine ARP-Anfrage oder ARP-Bestätigung eintrifft. Alle Stationen im Netz
können die per Broadcast versandten ARP-Anfragen nutzen, um ihren ARP-Cache auf
dem aktuellen Stand zu halten. Eine weitere Verbesserung lässt sich erzielen,
wenn ein neuer Rechner am Netz sofort seine Hardwareadresse bekannt gibt.
Ein Eintrag im ARP-Cache wird allerdings nur ca. 10 Minuten gehalten und danach
wieder gelöscht. Ansonsten wäre eine einmal getroffene Zuordnung von IP-Adresse
zu Hardwareadresse ewig. Der Austausch einer defekten Netzwerkkarte würde dann
dazu führen, dass der Rechner nicht mehr im Netz erreichbar ist. Ein
Standby-Server könnte die Arbeit des ausgefallenen Hauptservers nicht mit der
gleichen IP-Adresse fortsetzen und eine doppelt vergebene IP-Adresse brächte das
Netz nachhaltig durcheinander.
Am Netz angeschlossene Geräte ohne eigenen Massespeicher (z.B. Diskless
Workstations oder Netzwerkdrucker) wissen nach dem Einschalten ihre
Internetadresse normalerweise noch nicht. Deswegen gibt es ein umgekehrtes
ARP-Protokoll (Reverse Address Resolution Protocol, RARP). Das Gerät sendet
eine RARP-Anfrage als Broadcast-Datagramm ins Netz. Diese enthält zunächst nur
die eigene Hardwareadresse. Mindestens eine Station im Netz muss als RARP-Server
eingerichtet sein und über eine Zuordnungstabelle von Hardware- zu IP-Adressen
verfügen. Nun wird eine RARP-Antwort an die Hardwareadresse des anfragenden
Geräts gesendet und dieses kann nun seine IP-Adresse eintragen.
Man kann die Zuverlässigkeit dieses Verfahrens durch den Einsatz mehrerer
RARP-Server steigern. Einer wird dazu als Hauptserver (Primary RARP Server)
eingerichtet, der seine Antwort sofort nach Eintreffen der Anfrage schickt.
Die übrigen antworten entweder erst nach einer zufällig gewählten Pause oder
nur dann, wenn eine RARP-Anfrage gleichen Inhalts kurz hintereinander zweimal
verschickt wurde (d.h. der Frager erhielt keine Antwort und versucht es nochmal).
RARP ist sehr rudimentär und kann nur die IP-Adresse richtig setzen. Für weitere
Einstellungen, z.B. Subnetzadressen und Default-Gateway (siehe nächste Kapitel)
ist es nicht geeignet. Deswegen sind zwei weitere Protokolle entstanden, die die
gleiche Aufgabe wahrnehmen:
DHCP ist hauptsächlich in der Windows-Welt beheimatet. Gemäß der
Windows-Philosophie, dass alles möglichst automatisch passieren soll, kann man
einen NT-Server anweisen, alle IP-Adressen automatisch zu verwalten. Er unterhält
dazu einen Pool von IP-Adressen und weist einem anfragenden Host automatisch
eine davon zu. Es ist allerdings auch eine feste Zuordnung einstellbar oder die
automatische Zuweisung einer Adresse an einen neuen Host, die der dann aber in
jeder folgenden Sitzung wieder erhält.
BootP entstammt der Unix-Welt und muss manuell für jede Adresszuordnung
konfiguriert werden. Dafür kann man die Netzwerkparameter sehr genau
spezifizieren und sogar eine Konfigurationsdatei automatisch an das Gerät
übertragen lassen. Ein Drucker kann auf diesem Weg z.B. seine Grundeinstellungen
erhalten.
Die vollautomatische Adressvergabe ist zwar bequem, aber immer dann untauglich,
wenn feste IP-Adressen benötigt werden. Dies ist beispielsweise dann der Fall,
wenn die IP-Adresse als Entscheidungskriterium herangezogen wird, ob an dem
Arbeitsplatz im Internet gesurft werden darf oder nicht. DHCP ist zudem auf das
lokale Netz beschränkt. Für BootP gibt es ein Verfahren, mit dem Router diese
Pakete in ein anderes Teilnetz transportieren kann. Man spricht dabei von
"Remote BootP".
|
|