Routing Information Protocol
Routing Information Protocol (RIP) je směrovací protokol umožňující směrovačům (routerům) komunikovat mezi sebou a reagovat na změny topologie počítačové sítě. Ačkoliv tento protokol patří mezi nejstarší doposud používané směrovací protokoly v sítích IP, má stále své uplatnění v menších sítích a to především pro svoji nenáročnou konfiguraci a jednoduchost. Poprvé byl definován v RFC 1058 (1988).
Historie
Směrovací algoritmus použitý v RIP (tzv. Bellman-Fordův algoritmus) byl poprvé nasazen v počítačové síti ARPANET roku 1968.
Nejranější verzí protokolu, ze kterého se RIP vyvinul, byl Gateway Information Protocol, část balíku protokolů pro komunikaci mezi sítěmi PARC, vyvinutého v Xerox Parc. Pozdější verze, pojmenovaná Směrovací Informační Protokol, byla součástí Xerox Network Services.
Verze RIP, která podporovala Internetový Protokol IP, byla později obsažena v BSD distribuci operačního systému Unix a byla označována jako směrovací démon. Ostatní výrobci začali vytvářet svoje vlastní verze směrovacího protokolu. Tyto rozdílné verze byly později sjednoceny pod jediný standard RFC 1058.
Technické detaily
RIP je směrovací protokol typu distance-vector (vektor vzdálenosti) využívající Bellman-Fordův algoritmus pro určení nejkratší cesty v síti. Metrikou směrování je počet skoků k cílové síti (hop count). Jako ochrana proti směrovacím smyčkám je implementovaný omezený počet Směrovačů (routerů) (hopů) v cestě k cíli, maximální možný počet hopů je 15. Tento limit ovšem také omezuje velikost sítí ve kterých lze RIP použít (16 hopů je bráno jako nekonečná vzdálenost a používá se k označení nepřístupných, nepoužitelných směrovacích tras.
Původně každý router s RIP vysílal aktualizované směrovací tabulky v intervalu 30 sekund. To z počátku nepředstavovalo žádný problém, jelikož směrovací tabulky nebyly tak rozsáhlé, aby se to nějak výrazněji projevilo na síťovém provozu. Vzhledem k růstu sítí (a tudíž i směrovacích tabulek) se ale toto řešení ukázalo jako nevhodné, jelikož každých 30 sekund by byla síť zahlcena velkým množstvím dat. Moderní implementace RIP toto řeší pomocí různých metod nastavujících časové intervaly každého routeru zvlášť, aby byly data rozprostřeny v čase, a nedocházelo nárazově k velkým tokům dat.
V dnešních sítích se již RIP nepovažuje za dobrou volbu, jelikož čas potřebný ke konvergenci, či rozšiřitelnost, zaostávají za ostatními protokoly jako EIGRP, OSPF, nebo IS-IS. Navíc (bez použití RIP-MTI algoritmu) je kvůli omezenému počtu hopů velmi omezená velikost sítě ve které lze RIP nasadit. Naproti tomu je ale RIP snáze konfigurovatelný než ostatní protokoly.
Existují různé verze protokolu. Nejstarší nese označení RIPv1, novější je RIPv2. Pro použití v IPv6 byl definován RIPng.
Vylepšení RIPv2 oproti RIPv1:
- zabezpečení komunikace mezi směrovači (routery) pomocí šifrovaného hesla
- přenos síťových masek ve zprávách mezi směrovači (routery) umožňuje implementovat subnetting
Specifikace
Verze
Byly vydány tři verze Routing Information Protocol (směrovacího protokolu) a to RIPv1, RIPv2 a RIPng.
RIP verze 1
Originální specifikace RIPu dle RFC 1058[1] používá směrování podle původních tříd IPv4 adres A, B nebo C. Periodické aktualizace směrování nezahrnují informace o masce sítě, protože podle původního systému je maska dána příslušností IP adresy do jedné ze tříd. Chybí tak podpora pro CIDR (Classless Inter-Domain Routing), což znemožňuje existenci různě velkých podsítí uvnitř jedné třídy IP adres. Všechny podsítě musí být stejně velké (tj. se stejnou maskou). Neexistuje zde podpora pro vzájemnou autentizaci routerů, a proto je protokol RIPv1 napadnutelný nejrůznějšími útoky.
RIP verze 2
Kvůli nedostatkům originální specifikace RIP, byla v roce 1993 vyvinuta druhá verze (RIPv2) [2] a naposledy upravena v roce 1998.[3] Zahrnovala možnost přenášet informace o masce sítě, tudíž podporovala CIDR (Classless Inter-Domain Routing). K udržení zpětné kompatibility, zůstalo omezení 15-ti skoků (hop count). Při správné konfiguraci může být RIPv2 plně kompatibilní se starší verzí. K lepšímu kompatibilitě slouží vlastnost compatibility switch[3]. Ve snaze vyhnout se zbytečnému zatížení na hostiteli, jež se neúčastní směrování, RIPv2 vysílá celou směrovou tabulku všem sousedním směrovačům (routerům) na adresách 224.0.0.9 (multicast), čímž se liší od RIPv1, který používá unicast. Unicastové adresování je stále povoleno pro mimořádné účely.
RIPv2 včlenilo podporu pro vzájemnou autentizaci routerů. Nicméně, hesla jsou přenášena v nekódovaném textu, což je nedostatečné pro bezpečnou komunikaci v síti internet.
Šifrovací (MD5) autentizace pro RIP byla představena v roce 1997[4][5].
RIPv2 je Internetový Standard STD-56.
RIPng
RIPng (RIP další generace), definován v RFC 2080[6], je rozšířením RIPv2 zahrnující podporu IPv6, Internetového Protokolu další generace. Hlavní rozdíly mezi RIPv2 a RIPng jsou:
- Podpora IPv6 síťování
- Podpora aktualizovných autentizací (Verifikace ověření identity osoby nebo procesu zabezpečovacím systémem) - RIPng nepodporuje (nahrazeno IPsec)
- Připojování libovolných tagů k směrovačům (routerům) - RIPng nepodporuje.
- Kódování dalších skoků do každého směrovacího záznamu - RIPng vyžaduje specifické kódování na dalším skoku, pro set směrovacích záznamů.
Omezení
- počet skoků (hop count) nesmí přesáhnout 15, v případě, že přesáhne bude považován za neplatný
- uvnitř jedné třídy IP adres nemohou v RIP verzi 1 existovat různě velké podsítě
Implementace
- směrované, zahrnuté ve většině BSD Unix systémů
- 6WINDGate - 6WIND, komerční začleněný open-source směrovací modul
- Quagga, volný open-source směrovací sofwarový balík založený na GNU Zebra.
- OpenSBD zahrnuje RIP implementaci
- Cisco IOS, software používaný v Cisco směrovačích (routerech) (podporuje verzi 1 a verzi 2)
Podobné protokoly
Nesvobodný Interior Gateway Routing Protocol (IGRP), vytvořený společností Cisco, byl poněkud schopnější než RIP. Patřil do stejné základní rodiny distance-vector routing protocol. Cisco zastavilo podporu a distribuci IGRP v jejich směrovacím softwaru. Byl nahrazen Enhanced Interior Gateway Routing Protocol (EIGRP), který je kompletně nově navržený. Zatímco EIGRP stále používá distance-vektor model, podobá se IGRP pouze v používání stejných směrovacích metrik.
Související články
- Border Gateway Protocol (BGP)
- Open Shortest Path First (OSPF)
Reference
- ↑ RFC 1058, Routing Information Protocol, C. Hendrik, The Internet Society (June 1988)
- ↑ RFC 1388, RIP Version 2 - Carrying Additional Information, G. Malkin, The Internet Society (January 1993)
- ↑ a b RFC 2453, RIP Version 2, G. Malkin, The Internet Society (November 1998)
- ↑ RFC 2082, RIP-2 MD5 Authentication, F. Baker, R. Atkinson, The Internet Society (January 1997)
- ↑ RFC 4822, RIPv2 Cryptographic Authentication, R. Atkinson, M. Fanto, The Internet Society (January 2007)
- ↑ RFC 2080, RIPng for IPv6, G. Malkin, R. Minnear, The Internet Society (January 1997)