redistribution

Propojení routovacích protokolů - Route Redistribution

Aby se dalo efektivně podporovat více routovacích protokolů v jedné internetwork, musí se sdílet informace mezi protokoly. Tomu se říká route redistribution. Redistribuce může být jednosměrná nebo obousměrná. Routery, které provádí redistribuci, se nazývají boundary (hraniční).

Redistribuce je, když routovací protokol zveřejňuje routy, které se naučil jiným způsobem, to jsou statické routypřímo připojené interfacy nebo jiný routovací protokol. Různé routovací protokoly mají různé charakteristiky (jako metriku, podporu classles).

Doporučené řešení pro redistribuci mezi dvěma protokoly, kde existuje více cest (kdy si navzájem vyměňují routy), je kvůli smyčkám použit:

Když konfiguruji redistribuci, tak konfiguruji ten protokol, který chci, aby zveřejňoval routy z jiného zdroje. Používá se příkaz redistribute. Při redistribuci musíme nastavit metriku (nastavení záleží na protokolu) nebo se použije defaultní. OSPF má defaultní metriku pro ostatní protokoly 20 mimo BGP, pro které je 1RIP, IGRP, EIGRP, IS-IS mají defaultní metriku 0 (nekonečno, unreachable, not advertise).

Při redistribuci z classful protokolu (IGRP, RIP) do classless (OSPF) se nedistribují subneted routes. Při redistribuci do OSPF je potřeba použít klíčové slovo subnets, aby se přenesly subnetované routy. Defaultně se routy redistribují do OSPF jako External Type2 (E2).

IGP protokoly (jako RIP, OSPF) redistribujeme do BGP, aby se dostaly do dalších EBGP. Ale musíme být opatrní, protože hrozí nebezpečí smyček, protože redistribuované routy nemusí pocházet z daného AS, ale mohli sem dorazit pomocí BGP.  Pro redistribuci IGP route do BGP se doporučuje použít příkaz aggregate-address.

ROUTER(config)#router rip
ROUTER(config-router)#redistribute static metric 1  // redistribuce statických route
ROUTER(config-router)#redistribute ospf 1 metric 1  // redistribuce OSPF do RIP s nastavením metriky
ROUTER(config-router)#default-metric  1   // nastavení defaultní metriky, které se použije, tam kde ji nezadám
ROUTER(config)#router ospf 1
ROUTER(config-router)#redistribute static metric 200 subnets
ROUTER(config-router)#redistribute eigrp 1 metric 20 metric-type 1 subnet
ROUTER(config)#router eigrp 1                        
ROUTER(config-router)#redistribute rip metric 10000 100 255 1 1500
ROUTER(config-router)#redistribute ospf 1 match external 1 external 2  // redistribuujeme pouze typ E1 a E2
ROUTER(config-router)#redistribute isis level-1-2 metric 100 100 200 1 1500 // redistribuujeme ISIS L1 i L2
ROUTER(config-router)#redistribute ospf 1 route-map ospf-to-eigrp      // použití route-mapy pro filtrování, co se přenáší

Pro troubleshooting se mohou použít dva příkazy.

ROUTER#show ip route    // na routeru uvnitř i na ASBR, zda zde jsou redistribuované routy
ROUTER#show ip protocol // na ASBR, ověří konfiguraci redistribuovaných route, zobrazuje i filtry