Niektoré trasy L2VPN zmiznú po pridaní reflektorov trás
Relácie zostávajú nadviazané, ale niekoľko trás L2VPN nikdy nepríde. Opakovane použité identifikátory klastra, klientske vzťahy a graf reflexie vysvetľujú tento selektívny výpadok.
Relácie zostávajú nadviazané, IGP je stabilný, a napriek tomu sa hrsť trás L2VPN nikdy neobjaví na dvoch zo štyroch okrajov poskytovateľa. Tento vzor patrí k problému reflexie, nie k dopravnému problému, pretože prerušená relácia zlyhá úplne, zatiaľ čo opakovane použitá hranica reflexie zlyháva selektívne. Fyzický okruh s tým nemá nič spoločné; logický distribučný graf je miesto, kde sa tieto trasy zastavili. Nájdenie tohto bodu nevyžaduje prestavbu riadiacej roviny.
Výpadok je selektívny, čo zužuje hľadanie
Štyri okraje poskytovateľa na fyzickom okruhu potrebujú šesť logických relácií pre plnú sieť, pretože každý router sa páruje so zvyšnými tromi. Tieto relácie idú po smerovanom transporte, takže kabeláž nič nehovorí o tom, koľko susedstiev existuje alebo ktoré z nich reflektuje. Keď dva okraje vynechajú určitú sadu prefixov, zatiaľ čo všetko ostatné konverguje, kábel nie je podozrivý.
Selektívny výpadok ukazuje na prevenciu slučiek, politiku alebo smer vzťahu, kde niektoré trasy prekročia hranicu a iné sa cestou zahodia. Úplný výpadok ukazuje na reláciu alebo adresnú rodinu. Rozhodnúť, ktorý z tých dvoch vidíte, je prvý užitočný krok a stojí jeden príkaz.
Čo reflexia v skutočnosti mení
Reflexia trás uvoľňuje pravidlo, že iBGP hovorca nesmie znovu inzerovať trasu naučenú od iného iBGP hovorcu. RFC 4456 vyjadruje výnimku prostredníctvom vzťahu medzi hovorcom a zdrojom trasy a smer tohto vzťahu je dôležitejší, než väčšina zhrnutí naznačuje. Trasa naučená od klienta môže byť reflektovaná ďalším klientom a neklientom, zatiaľ čo trasa naučená od neklienta môže byť reflektovaná iba klientom. Prečítajte si asymetriu dvakrát, pretože vysvetľuje, ako pridanie klientskeho vzťahu môže skryť chybu návrhu: otvára cestu, ktorú topológia nikdy nezamýšľala.
Atribút CLUSTER_LIST zaznamenáva históriu reflexie a reflektor, ktorý vo svojom zozname nájde vlastný identifikátor klastra, musí inzerát ignorovať. To je prevencia slučiek a zároveň mechanizmus, ktorý maže trasy, keď sa identifikátory omylom znova použijú. ORIGINATOR_ID hrá príbuznú úlohu tým, že pomenúva router, ktorý trasu inzeroval ako prvý.
Opakovane použité identifikátory klastra sú spôsob, akým trasy miznú
Malá sieť láka na skratku: dajte každému routeru identifikátor klastra rovný jeho loopbacku, neskôr pridajte ďalší reflektor a znova použite existujúci loopback, pretože je poruke. Ak sa tento identifikátor teraz objaví v dvoch nezávislých stupňoch reflexie, druhý stupeň uvidí svoje vlastné ID v CLUSTER_LIST a trasu zahodí. Nič nezapíše chybu, pretože zahodenie je správna reakcia na slučku.
Redundantné reflektory obsluhujúce jeden klaster sú legitímnou výnimkou: zámerne zdieľajú ID, aby ktorýkoľvek z nich mohol obsluhovať tých istých klientov. Identifikátor musí zodpovedať návrhu reflexie, nie odlišovať názvy šasi.
Nakreslite zamýšľaný graf, skôr než sa dotknete akejkoľvek konfigurácie: kto vytvára prefix, ktorý klientsky vzťah umožňuje prvú reflexiu, ktorý reflektor ho nesie do ďalšieho stupňa a kde sedí posledný klient. Každý skok v tomto grafe je miesto, kde opakovane použitý identifikátor, chýbajúci klientsky vzťah alebo filter politiky môže zastaviť trasu. S nakresleným grafom má chýbajúca trasa umiestnenie namiesto záhady.
Odolajte tomu urobiť z každého suseda klienta
Rýchla oprava chýbajúcej trasy je urobiť z každého suseda klienta každého reflektora. Šírenie sa vráti a návrh vám prestane čokoľvek hovoriť: znásobí trasy, ktoré každý hovorca nesie, a zároveň skryje, ktorý vzťah mal prácu vykonať.
Malá sieť zvyčajne potrebuje jeden z dvoch tvarov. Plná iBGP sieť je šesť relácií pre štyri routery úplne bez reflexie a určená dvojica reflektorov obsluhujúca zvyšné okraje je ten druhý. Oba sa premýšľajú ľahšie než čiastočná sieť, v ktorej každý router trochu reflektuje. Tvar vyberte podľa rozsahu a správania pri poruche, nie podľa schémy kabeláže.
Skontrolujte adresnú rodinu, skôr než obviníte reflexiu
TCP relácia na porte 179 dokazuje, že dvaja hovorcovia spolu môžu hovoriť, a nič o tom, či adresná rodina VPN vymenila čo i len jednu trasu. Zistite stav relácie, potom rodinu, potom jednotlivý prefix.
vtysh -c "show bgp summary"
vtysh -c "show bgp l2vpn evpn summary"
vtysh -c "show bgp l2vpn evpn"
Tieto tri výstupy oddeľujú problém susedstva od problému výmeny a od problému chýbajúceho prefixu. Ak rodina neukazuje vôbec žiadne prefixy, preskúmajte stav aktivácie a exportnú politiku suseda, skôr než sa pozriete na reflexiu. Ak sa prefixy objavia na jednom okraji, ale nie na druhom, porovnajte zoznam klastrov a pôvodcu na prijímajúcej strane a potom prejdite graf z predchádzajúcej časti.
Dostupnosť ďalšieho skoku a stav preposielania držte mimo tejto kontroly. Reflektovaná trasa s nedostupným ďalším skokom je prítomná a nepoužiteľná, čo vyzerá ako zlyhanie reflexie, kým sa nepozriete na stĺpec ďalšieho skoku. Vyriešte ďalší skok, potvrďte záznam preposielania a až potom rozhodnite, či distribučný graf potrebuje ďalší reflektor.