RIP (Routing Information Protocol) ist eines der ältesten Routing-Protokolle und der einfachste Vertreter der Distanzvektor-Verfahren. Es wurde erstmals 1988 in RFC 1058 definiert, die aktuelle Version RIPv2 in RFC 2453 (1998). RIP ist für kleinere Netze gedacht und wird heute meist durch OSPF ersetzt.
So funktioniert RIP
RIP-Router senden ihre komplette Routing-Tabelle alle 30 Sekunden an ihre direkten Nachbarn (bei RIPv2 als Multicast an 224.0.0.9). Jeder Nachbar übernimmt die Routen, erhöht die Metrik um 1 und reicht sie weiter. So verbreitet sich das Wissen über erreichbare Netze „Hop für Hop" durch das Netzwerk — daher der Name Distanzvektor.
Die Metrik von RIP ist der Hop-Count (Anzahl der Router, die ein Paket passieren muss). Ein direkt angeschlossenes Netz hat Metrik 0, nach einem Router Metrik 1 usw. Wege mit mehr als 15 Hops gelten als unerreichbar (Metrik 16 = „unendlich") — das begrenzt die Netze, in denen RIP eingesetzt werden kann.
Gegen Schleifen: Split Horizon und mehr
Distanzvektor-Protokolle neigen zu Routingschleifen, weil Router mit veralteten Informationen rechnen. RIP nutzt dagegen Split Horizon (eine Route wird nicht zurück zu dem Nachbarn gesendet, von dem sie stammt), Poisoned Reverse (unerreichbare Routen werden mit Metrik 16 gemeldet) und Hold-Down-Timer, um die Konvergenz zu verbessern. Trotzdem konvergiert RIP langsam.
Timer
RIP arbeitet mit vier Timern (Cisco-Standard): Update 30 Sekunden (regelmäßige Tabellen-Sendung), Invalid 180 Sekunden (Route gilt als ungültig, wenn keine Aktualisierung kam), Hold-Down 180 Sekunden (Route bleibt gesperrt, um Flapping zu dämpfen) und Flush 240 Sekunden (Route wird aus der Tabelle entfernt).
RIPv1 vs. RIPv2
RIPv1 sendet Broadcasts und kann kein Subnetzmasken-Informationen übertragen (classful). RIPv2 sendet Multicast, unterstützt CIDR/Subnetzmasken, Authentifizierung und manuelles Route-Summarizing. Für IPv6 existiert RIPng (RFC 2080). Die konkreten Kommandos für Cisco, Juniper und MikroTik finden sich in der Referenz RIP-Befehle.