luni, 7 martie 2016

VRFs, making baby steps in shallow water

Usor, cu pasi mici, incep sa pasesc pe carari care nu sunt batatorite de materia din CCNA, urmand ca in articolul de azi sa descriu notiunea de VRF.
VRF este un acronim pentru Virtual Routing and Forwarding sau mai poate face referire la VPN Routing and Forwarding in unele materiale. Ambele denumiri sunt corecte si descriu acelasi lucru.

In esenta VRF reprezinta o tehnologie IP care permite coexistenta mai multor instante ale tabelei de rutare pe acelasi echipament. Deoarece traficul in interiorul unui VRF este segregat si independent de celelalte VRF-uri, acest lucru aduce beneficii din punct de vedere al securitatii si permite utilizarea de clase IP identice sau intercalate alocate in VRF-uri diferite.

Pentru o intelegere mai simpla a conceptului, putem vedea VRF-urile ca mecanism de segmentare a traficului la L3, prin analogie cu segmentarea la L2 prin VLAN-uri.

Traficul alocat unui anume VRF este identificat prin ceea ce se numeste Route Distinguisher. Pe scurt, daca alocam 192.168.1.0/24 catre doi clienti A si B, Route Distinguisher-ul va fi utilizat pentru a face diferenta dintre ruta 192.168.1.0/24 a lui A si 192.168.1.0/24 a lui B.

Uneori este necesar sa importam sau sa exportam rute dintr-un VRF in alt VRF, sau dintr-un VRF in MBGP. Pentru a directiona traficul intre VRF-uri folosim Route Targets.

Route Distinguisher-ul si Route Target-ul fac parte din NLRI (network layer reachability information).

In practica VRF-urile sunt folosite de catre Furnizorii de servicii in retele IP/MPLS, dar pot fi implementate si in retele fara MPLS. O astfel de implementare poarta denumirea de VRF Lite si voi incerca sa o descriu in laboratorul de azi.

Sursele de informare pe care le-am folosit sunt :
Cursul despre MPLS Fundamentals realizat de Keith Barker de la CBT Nuggets pentru care puteti gasi transcrierea aici.
Doua articole excelente redactate de Jeremy Stretch pe care le gasiti aici si aici.
Si bineinteles materialele publicate pe cisco.com.

Pentru o intelegere mai buna a conceptelor va recomand sa accesati si aceste materiale deoarece laboratorul meu are o abordare foarte generala, reprezentand o introducere.

Topologie (dati click pe imagini pentru a mari)




Pas 1
Incepem configurarea prin crearea VRF-urilor pentru traficul fiecarui client pe fiecare router atribuindu-le nume scriptice pentru a face mai usoara identificarea lor. In final vom avea 2 VRF-uri pentru clientul A, unul pe R1-HQ iar celalalt pe R1-Branch si doua pentru clientul B distribuite similar. E necesar ca numele VRF-urilor create pentru clientul A sa coincida pe ambele routere, iar pentru clientul B este necesar acelasi lucru. Numele VRF-urilor create pentru clientul A nu pot sa coincida cu numele VRF-urilor create pentru clientul B.
RD si RT pot fi configurate de forma IP si un numar sau un ASN si un numar, despartite prin simbolul “:”. Ele pot sa coincida dar nu este obligatoriu acest lucru !
Conditia necesara cand configuram un RD este ca acesta sa fie unic pentru acel VRF.
Conditia cand configuram RT este ca valoarea folosita pentru export pe un router sa fie folosita pe celalalt router ca import, si invers.






Pas 2
Configuram interfetele dinspre clienti de pe R1-HQ si R2-Branch. Avem grija sa le asociem VRF-urilor corespunzatoare pe care le-am creat la pasul 1.






Pas 3
Configuram capetele linkului dintre R1-HQ si R2-Branch.
Deoarece folosim o singura interfata fizica este necesara folosierea de sub-interfete logice pe care le plasam in VLAN-uri diferite.





Pas 4
Configuram OSPF pentru rutarea traficului intre HQ si Branch pentru clientul A si EIGRP pentru a ruta traficul clientului B.

Configurare OSPF pentru clientul A



Configurare EIGRP pentru clientul B


Pentru a configura IGP-ul clientului B este nevoie sa intram in modeul de configurare address-family al routerului. EIGRP cu AS 2 ruteaza pentru rutele nealocate unui VRF, in timp ce EIGRP cu AS 20 ruteaza pentru rutele din VRF Client_B.




Pas 5
Configuram hosturile si verificam conectivitatea end-to-end.
Pentru a vedea ca traficul este adresat corect, configuram o interfata loopback cu adresa IP 9.9.9.9/32 pe PC-Branch-B si incercam sa dam ping in ea de pe PC-HQ-A. Pingul nu trebuie sa reuseasca.
Vizualizam fiecare instanta a tabelei de rutare pentru clientul A si clientul B.
Folosim WireShark pentru a observa si analiza traficul pe linkul dintre cele doua routere.
Vom observa ca se schimba mesaje cu IP sursa de ex. 10.10.10.1/30 cu VLAN-tag 10 si 20.

Nota:
Pentru a configura numele PC-urilor in CLI folositi comanda “set pcname [valoare]”.

Configurare PC-HQ-A

Configurare PC-Branch-A si verificare ping in PC-HQ-A

Configurare interfata Loopback 0 pe R2-Branch

Ping in 9.9.9.9/32 de pe PC-HQ-A

Ping in 9.9.9.9/32 de pe PC-HQ-B


Configuratia finala a laboratorului o puteti descarca de aici.
O captura WireShark de pe linkul dintre routere in care se observa ca mesajele Hello ale celor doua IGP-uri se transmit prin VLAN-uri diferite, puteri descarca de aici.

Pentru intrebari sau observatii va rog sa folositi rubrica de comentarii.
Pentru informatii detaliate referitoare la VRF-uri accesati cu incredere materialele la care am facut referire.
Sper ca ati gasit util si interesant acest articol.
Spor! :)





Niciun comentariu :

Trimiteți un comentariu