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é routy, pří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:
jednosměrnou redistribuci (na druhou stranu default route)
route-mapy či distribution-list, aby se zabránilo přenosu informací, které pochází z daného procesu zpět do něj
statické routy
ručně nastavit Administrative Distance
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 1. RIP, 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