Găsirea unui MAC în baza de date EVPN dovedește că a fost anunțat sau primit ca rută, și nimic mai mult. Tabela de redirecționare este o altă structură, programată mai târziu, așa că același MAC poate apărea într-una și lipsi din cealaltă în timp ce fiecare protocol se comportă corect. Tratarea acestor două ieșiri ca copii una a celeilalte trimite inginerii pe urmele unei defecțiuni BGP atunci când golul real este o politică de import sau un salt următor nerezolvat. Întrebarea care merită pusă nu este dacă fabric cunoaște MAC-ul, ci în ce etapă a încetat să îl transmită mai departe.

Două tabele care răspund la întrebări diferite

Pe Junos EVPN baza de date listează adresele MAC pe instanță împreună cu modul în care a ajuns fiecare: învățată dintr-un port de acces, primită într-o rută Type 2 sau marcată ca parte a unui grup de multihoming. Referința Juniper show evpn database acoperă filtrele pe MAC și pe instanță care fac vizualizarea lizibilă. Este un rezumat al planului de control cu cheie pe instanță și MAC, nu tabela cu care hardware-ul comută cadrele.

Tabela de comutare este exact acea stare de redirecționare. Ambele ieșiri listează MAC-uri lângă contextul VLAN sau VNI, ceea ce este exact motivul pentru care sunt comparate linie cu linie, și exact motivul pentru care comparația induce în eroare. O intrare în baza de date spune că ruta există și a fost acceptată în instanță; nu spune nimic despre dacă platforma a instalat-o pentru redirecționare.

O rută Type 2 transportă MAC-ul, un IP opțional, o etichetă sau VNI, un distingător de rută și un salt următor care numește VTEP-ul îndepărtat. Patru lucruri se pot rupe între cablu și acea rută: gazda nu este niciodată învățată, ruta nu este niciodată anunțată, este respinsă la import sau saltul ei următor nu se rezolvă. Fiecare eșec lasă un set diferit de tabele umplute, și de aceea secvența poate fi diagnosticată.

Învățarea locală are loc în continuare prima

Presupunerea obișnuită este că EVPN preia învățarea MAC, așa că o bază de date goală trebuie să însemne o problemă de overlay. Învățarea locală rulează în continuare pe partea de acces, exact ca înainte de existența VXLAN: comutatorul învață MAC-ul sursă al unui cadru permis în VLAN-ul și serviciul corecte, și abia apoi generează un Type 2 pentru el. O gazdă care nu a trimis niciun cadru relevant nu are nimic de anunțat. O gazdă ale cărei cadre sunt aruncate de apartenența la VLAN, un filtru sau un membru căzut al unui agregat arată identic din perspectiva overlay-ului.

Începeți la punctul de conectare și mergeți înainte cu comenzi doar de citire. Scopul este să dovediți că un cadru de la gazdă a trecut prin serviciul dorit, pentru că nimic în aval nu compensează un cadru care nu a ajuns niciodată.

show interfaces ge-0/0/1.0
show ethernet-switching interface ge-0/0/1.0
show lacp interfaces ae0

Membrii LACP selectați contează mai mult decât faptul că pachetul este activ, deoarece un agregat poate fi activ pe un membru în timp ce traficul gazdei este hashat către o legătură căzută sau blocată. Contoarele de interfață separă o gazdă silențioasă de una care pierde cadre, pentru că o gazdă care nu transmite niciodată și o gazdă ale cărei cadre sunt aruncate de clasificare lasă aceeași tabelă goală.

Unde se pierde un MAC îndepărtat

Un MAC îndepărtat eșuează în direcția opusă, și în liniște. Ruta Type 2 sosește, dar intră într-o instanță doar când ținta rutei și VNI-ul ei corespund configurației locale, și devine utilizabilă doar când saltul următor se rezolvă într-un VTEP accesibil. O nepotrivire a țintei rutei lasă o rută validă în tabela BGP pe care nicio instanță nu o cere vreodată.

Citiți cele trei vizualizări în ordine: prezența rutei, intrarea din baza de date, intrarea de redirecționare. Comenzile de mai jos interogă același MAC la fiecare etapă, iar adresa exemplu menține ieșirile comparabile.

show evpn database instance blue mac-address 02:00:00:00:00:5c extensive
show route table bgp.evpn.0 | match 02:00:00:00:00:5c
show route table bgp.evpn.0 | match 02:00:00:00:00:5c extensive

Acele ieșiri răspund la trei întrebări separate. O rută în bgp.evpn.0 fără intrare în baza de date indică politica de import, ținta rutei sau configurația instanței. O intrare în baza de date fără intrare de redirecționare indică programarea platformei, care aparține unei alte căi de escaladare. O rută activă al cărei salt următor nu se rezolvă este o problemă de transport sau de etichetă, și nicio cantitate de depanare MAC nu o repară.

O repornire care a rezolvat-o dovedește foarte puțin

Când o repornire face simptomul să dispară, concluzia tentantă este că configurația trebuie să fie sănătoasă. O repornire reprogramează fiecare tabelă de la zero, așa că ascunde și cazul în care o intrare învechită acoperea o eroare de politică; defectul tinde să revină la următoarea modificare, la flapping-ul unei legături sau la retragerea unei rute.

Înainte de orice fereastră de mentenanță, captați ce va șterge repornirea. Aceste trei comenzi sunt suficiente pentru a compara înainte și după, și nu schimbă nimic pe dispozitiv.

show evpn database instance blue
show route table bgp.evpn.0
show version

Arhivați acele ieșiri cu data și versiunea software alături. Un raport ulterior că aceeași repornire a funcționat și înainte este un indiciu, nu o dovadă, iar diferența devine vizibilă doar când cineva a păstrat ieșirea anterioară.

Patru observații care rezolvă majoritatea cazurilor

Patru observații acoperă aproape fiecare caz: punctul de conectare și serviciul lui, MAC-ul ca valoare exemplu, starea rutei și a bazei de date, și versiunea folosită. Alegeți un MAC care este evident un exemplu, ca nimeni să nu îl confunde cu o adresă de producție: un prim octet 02 marchează o adresă unicast administrată local, octeții rămași sunt liberi, și prin urmare 02:00:00:00:00:5c este un substituent sigur.

Apoi lăsați răspunsurile să indice etapa care a eșuat. Nicio învățare la punctul de conectare înseamnă partea de acces; o rută fără intrare în baza de date înseamnă import; o intrare în baza de date fără stare de redirecționare înseamnă programare. Orice ar fi, predați ieșirile colectate împreună cu gazda, interfața, serviciul și versiunea, ca următorul inginer să poată reproduce calea în loc să repete interogarea.

Articole similare