RARP ( Reverse Address Resolution Protocol ) ist ein Netzwerkprotokoll das die Zuordnung von Internetadressen zu ermöglicht. Es gehört zur Netzwerkschicht der TCP/IP -Protokollfamilie.
RARP wird verwendet wenn einem Computer IP-Adresse nicht bekannt ist. Das ist normalerweise Rechner ohne Speichermedium der Fall (z.B. Terminals oder Diskless-Workstations) da diese ihre IP-Adresse von einer Konfigurationsdatei lesen können.
RARP sendet dazu ein RARP Request - Broadcast mit der eigenen MAC-Adresse als Inhalt an die am Netzwerk Rechner. Ein RARP- Server welcher alle Zuordnungen IP- zu MAC-Adressen sendet daraufhin eine Antwort mit der IP-Adresse die anfragende MAC-Adresse ( RARP-Reply ).
Ausgenutzt wird bei RARP dass die weltweit eindeutig von der Herstellern vergeben werden heißt es dürfen keine zwei Geräte auf Welt mit derselben MAC-Adresse existieren. Ein Gerät Speichermedium kann sich daher eindeutig identifizieren.
Die Zuordnungstabelle auf dem RARP-Server die jeder MAC-Adresse die lokal vergebene IP-Adresse enthält vom Systemverwalter manuell gepflegt werden.
Im Ethernetframe schließt sich das RARP-Paket den MAC-Header und damit and das Ethernet-Typfeld Der Ethernettyp für RARP ist 0x8035 . Obwohl das Format für ARP und RARP gleich ist und das anhand des Operationsfeldes unterschieden werden könnte handelt sich um sehr unterschiedliche Operationen. Der unterschiedliche unterscheidet die Protokolle bereits auf der unteren so dass ARP-Server nicht durch RARP-Pakete und gestört werden können.
Ethernet MAC-Adressen und IPv4 Adressen
0
8
16
24
31
Hardwareadresstyp (1)
Protokolladresstyp (0x800)
Hardwareadressgröße (6)
Protokolladressgröße (4)
Operation
Quell-MAC-Adresse
Quell-MAC-Adresse
Quell-IP-Adresse
Quell-IP-Adresse
Ziel-MAC-Adresse
Ziel-MAC-Adresse
Ziel-IP-Adresse
Operation (2 Byte) enthält den Wert der welche Operation ausgeführt werden soll ( 3 für RARP Request 4 für RARP Reply).
Quell-MAC-Adresse (6 Byte) enthält in einem RARP Paket die MAC-Adresse des Senders. In einem Reply enthält es die MAC-Adresse des antwortenden Quell-IP-Adresse (4 Byte) ist bei einem RARP undefiniert. In einem RARP Reply enthält es IP-Adresse des anwortenden Servers. Ziel-MAC-Adresse (6 Byte) enthält in einem RARP Paket die MAC-Adresse des Senders. In einem Reply enthält es die MAC-Adresse des anfragenden Ziel-IP-Adresse (4 Byte) ist bei einem RARP undefiniert. In einem RARP Reply enthält es IP-Adresse des anfragenden Hosts.
Ethernet-Broadcasts sind auf Subnetze beschränkt so RARP nur in einem Subnetz eingesetzt werden Wird ein lokales Netzwerk ( LAN ) in Subnetze aufgeteilt muss in jedem Subnetze in dem RARP-fähige Terminals oder Workstations werden ein eigener RARP-Server vorhanden sein.
Durch RARP erfährt ein Rechner nur IP-Adresse. Zu einer vollständigen Konfiguration einer Netzwerkschnittstelle Endgeräte gehört aber mindestens noch die Netzmaske das Default-Gateway. IP-Adressen werden in Klassen eingeteilt Netzmaske bekannt ist. Im Falle von Subnetting diese Netzmaske jedoch falsch. Auch das Setzen weiteren Parametern wäre wünschenswert kann aber nicht RARP vorgenommen werden.
Nach RARP wird häufig TFTP ( Trivial File Transfer Protocol ) eingesetzt das z. B. bei Diskless-Workstations Speicherabzug des Betriebssystems an den Rechner überträgt. nachdem dieser Speicherabzug in den Speicher der geladen ist kann sie hochgefahren werden. Wird eingesetzt so kann weder der Name des noch die Adresse des TFTP-Servers übergeben werden.
Frühe Diskless-Workstations der Firma Sun-Microsystems verwenden die hexadezimale Darstellung der IP-Adresse als Dateiname. versuchen sie unter der Annahme dass RARP- TFTP-Server identisch sind den TFTP-Transfer mit dem durchzuführen dessen Adresse sie im Quelladressen-Feld des finden. Falls dieser eine bestimmte Zeit (3 nicht antwortet wird der gesamte TFTP-Transfer mit von Ethernet-Broadcasts durchgeführt. Der TFTP-Server muss daher mit dem RARP-Server identisch sein. Trotzdem muss der TFTP-Server bei diesem Verfahren ein lokaler auf dem jeweiligen Subnetz sein. Daneben werden Umständen viele Broadcast-Frames gesendet was zu einer der anderen Geräte im gleichen Subnetz führt.
Das BOOTP -Protokoll und das darauf aufsetzende DHCP -Protokoll vermeiden die Probleme des RARP-Protokolls. Sie das Setzen vieler Parameter und damit unter die vollständige Konfiguration der Netzwerkschnittstelle. Falls zusätzlich verwendet wird kann der Dateiname und die mehrerer Server übergeben werden. Wird die Adresse Gateways bei der Schnittstellenkonfiguration gesetzt können die in einem beliebigen Netzwerk stehen da die korrekt geroutet werden.
Bei Verwendung eines BOOTP -Helpers auf dem Router kann der BOOTP-Broadcast auch in andere geroutet werden. Die Notwendigkeit eines Servers auf Subnetz entfällt daher. Da die Aufteilung von LANs in Subnetze mittlerweile üblich ist haben und DHCP das RARP-Protokoll fast vollständig verdrängt.