Tag: bgp

NSX-t IPSec Route base

W dzisiejszym wpisie przedstawię konfigurację NSX-t IPSec Route base, jest to  opis krok po kroku jak skonfigurować IPseca po stronie NSX’a oraz Vyos który będzie uczestnikiem IPseca. 

Założenia

  1. Poniżej rysunek poglądowy jak wygląda topologia połączeń.
  2. Pomiędzy routerem T0 i chmurką już istnieje połączenie oraz jest zestawione sąsiedztwo BGP w celu dostępu do sieci “Internet” na powyższym rysunku chmurki
  3. Parametry połączenia:
IKE  
IKE wersja v2
Encryption Algorithm
Digest Algorithm
Diffie-Hellman
86400
IPSec  
Encryption Algorithm
Digest Algorithm
PFS Group yes
Diffie-Hellman
SA Lifetime (sec) 3600

Konfiguracja NSX-t

Konfiguracja połączenie IPSEC
  1. Logujemy się do NSX Managera
    nsx-t login page
  2. Przechodzimy do Networking następnie VPN
    NSX-t VPN
  3. Skonfigurujemy profile dla IKE,IPSec przechodząc do Profiles 
    nsx-t profiles
  4. wybieramy IKE-Profiles następnie IKE ADD Profile, w nowym oknie podajemy parametry konfiguracyjne które zostały zebrane powyżej w tabelce oraz podajemy nazwę dla profilu. Po zakończeniu wprowadzaniu zapisujemy profil.
    NSXt ike profile
  5. Kolejnym krokiem jest dodanie profilu dla IPSeca, Wybieramy IPSEC Profiles i następnie ADD IPSEC Profile w nowym oknie podajemy nazwę dla niego oraz parametry z tabelki powyżej.
    NSX-t ipsec profile
  6. Ostatnim profilem do utworzenie jest profil DPD, wybieramy DPD Profiles i ADD DPD Profile, w nowym oknie podajemy nazwę oraz zostawiamy 60 secund.
    NSX-t DPD profile
  7. Po skonfigurowaniu profilu dla IKE i IPSec oraz DPD przechodzimy do konfiguracji VPN Service robimy to przechodząc do VPN Services gdzie klikamy na ADD Service i wybieramy IPSEC. W nowym oknie podajemy nazwę oraz wybieramy na który gateway ma zostać uruchomiony serwis odpowiedzialny za IPSeca w naszym przypadku będzie to T0.
    NSX-T VPN Service
  8. W tym kroku przechodzimy do konfiguracji LOCAL EDNPOINTS  klikamy ADD LOCAL ENDPOINT w tym miejscu skonfigurujemy adres z którego oraz do którego będziemy nawiązywać sesję IPSec.
    NSXt vpn local endpoint
  9. Przyszedł na ostatni krok konfiguracji IPSec przechodzimy do IPSEC SESION wybieramy Route Based.
    nsx-t ipsec route based
  10. W nowym okniekonfigurujemy naszą sesję IPSec podajemy dane:
    Nazwa – dowolna nazwa dla sesji.
    VPN Service – wybieramy wcześniej zdefiniowany profil.
    Local Endpoint – podobnie wybieramy profil który wcześniej skonfigurowaliśmy.
    Remote IP – podajemy adres IP partnera z którym będziemy nawiązywać sesję IPSec.
    Authentication Mode – w naszym przypadku wybieramy PSK może kiedyś zrobię opis na certach :-).
    Pre-shared Key – podajemy nasz klucz PSK 
    Tunnel Interface – podajemy ip dla naszego interfejsu tunel w naszym przypadku jest to 100.100.10.1/30 musi być podana maska min 31.
    Remote ID – podajemy zakończenie tunelu po drugiej stronie, zgodnie z założeniami jest to 2.2.2.2
    Do kolejnych ustawień przechodzimy klikając  Advanced Properties gdzie dalej podajemy parametry naszego połączenia:
    IKE Profiles – wybieramy utworzony przez nas profil IKE.
    IPSec Profiles – wybieramy utworzony przez nas profil dla IPSec.
    DPD Profiles – wybieramy utworzony profil dla DPD.
    Connection Initiation – określmy rolę w naszym przypadku zostawiamy bez zmiany.
    Parametry nie wymienione zostawiamy bez zmian.
    NSX-t vpn ipsec sesion
  11. Po wyższych krokach mam skonfigurowane parametry dla IPSeca Rouet Base.
Konfiguracja Routingu w NSX

W tej sekcji dowiesz się jak skonfigurować redystrybucję adres Local Endpoint oraz jak zestawić BGP. 

Konfiguracja redystrybucji

Aby poprawnie zestawić połączenie IPSec przydało by się do naszej chmurki która jest pokazana na rysunku na początku wpisu rozgłosić adres Local Endpoint a robimy to tak:

  1. Przechodzimy do Networking następnie do Tier0 wybieramy nasz router T0 i przechodzimy do jego edycji.
    EDIT T0 router
  2. Przechodzimy do ROUTE RE-DISTRIBUTION klikamy na cyfrę w przy Route Re-Distribution.
    t0
  3. W nowym oknie zaznaczamy IPSec Local IP i klikamy Apply.
    IPSec local IP
  4. Na koniec zapisujemy oraz klikamy close editing i temat ten mamy za sobą. 
Konfiguracja BGP pomiędzy NSX a Vyos

W IPSec route base protokół routingu jest odpowiedzialny za ustalenie pomiędzy jakimi sieciami ma nastąpić szyfrowanie w kanale IPSec. W NSX-t mamy do dyspozycji dwa protokoły routingu jest to statk oraz BGP w tym punkcie skupię się właśnie nad poczciwym BGP’em. 

  1. Aby skonfigurować sesję BGP przechodzimy do Networking następnie do Tier0 wybieramy nasz router T0 i przechodzimy do jego edycji
    EDIT T0 router
  2. Tam przechodzimy do sesji BGP, gdzie jest to pierwsza sesja BGP konfigurujemy:
    Local AS – w labie oraz DC wybieramy coś z puli privet AS 
    resztę parametrów zostawiamy bez zmian w labie, w DC można podkręcić czasy sesji BGP 
    Tutaj już mamy to skonfigurowane bo mamy sesję do mojej chmurki 
    nsx-t bgp
  3. W kolejnym ważnym krokiem jest skonfigurowanie sąsiedztwa BGP aby to zrobić przechodzimy do BGP Neighbors. W tym przypadku dodajemy kolejne sąsiedztwo. 
    bgp sasiedzwto
  4. W nowym oknie dodajemy nowego sąsiada gdzie podajemy parametry do skonfigurowania
    IP Address – podajemy adres ip sąsiada w naszym przypadku jest to 100.100.10.2
    Remote AS – Podajemy numer AS sąsiada w naszym przypadku jest to 65555
    Source Addresses – podajemy nasz adres 100.100.10.1
    bgp add
  5. Klikamy Save i mamy skonfigurowane po stronie NSX’a BGP 

Aby wszystko zadziałało musimy skonfigurować naszego sąsiad czyli przechodzimy do konfiguracji Vyos,

Konfiguracja Vyos

Jak to było w piosence “do tanga trzeba dwojga” w tym przypadku partnerem dla NSX będzie Vyos na którym poniżej przedstawię jak skonfigurować IPSec route Based oraz BGP.  Nie będę pokazywał podstawowej konfiguracji tylko skupię się na omawianych zagadnieniach. Cała konfiguracja jest wykonywana z poziomy SSH. W tym labie wykorzystuję wersję trochę starą bo jest to 1.3 

Konfiguracja połączenie IPSEC w Vyos
  1. Logujemy się do naszego Vyos po ssh
  2. Przechodzimy do konfiguracji i konfigurujemy nasz profil dla fazy 1 zgodnie z założeniami

    czysta konfiguracja same komendy

  3. Następnie profil dla fazy 2 
  4. Profil dla DPD

    same komendy 

  5. Tworzymy interfejs tunelowy oraz nadajemy jemu adres ip zgodnie z założeniami
  6. Konfiguracja IPSeca
    same komendy które zostały użyte powyżej 
  7. Na koniec wykonujemy commit

     

Konfiguracja BGP w Vyos

Po skonfigurowaniu IPSeca przechodzimy do konfiguracji sesji BGP, poniżej bardzo szybki config.

same komendy:

 

Weryfikacja

Po czasie konfiguracji NSXa i jak Vyos przyszedł czas na weryfikację naszej pracy.

Sprawdzenie po stronie NSX 

IPSEC
  1. logujemy się po SSH do Edga na którym jest nasze T0
  2. sprawdzamy sesję ike wykonując komendę get ipsecvpn ikesa active 

     

  3. Weryfikujemy całego IPSeca wykonując komendę get ipsecvpn session

     

  4. Weryfikujemy jak wyglądają statystyki czy zmieniają się wykonując komendę get ipsecvpn tunnel stats 
BGP

Podobnie jak wyżej wykorzystujemy połączenie ssh do EDGE

  1. sprawdzamy jaki id VRF ma nasz router T0 moduł serwisowy wykonując komendę 
  2. przechodzimy do vrfu 2 
  3. Sprawdzamy siąsietzdwa BGP wykonując komendę get bgp neighbor summary
  4. sprawdzamy tablicę routingu wykonując polecenie get route bgp
Weryfikacja Vyos

Wszystkie sprawdzenie po stronie również wykonujemy z poziomu CLI poprzez SSH

Sprawdzenie IPSEC
  1. sprawdzamy sesję IKE
  2. Sprawdzamy sesję IPSec
Weryfikacja BGP
  1. weryfikacja statusu BGP
  2. Sprawdzenie tablicy routingu 

     

Na koniec test puszczenie ping z Vyosa to NSX’a dokładnie na ip 10.11.1.1 który potwierdzi nam działanie transmisji w IPSecu

 

Jak widać proces weryfikacji wyszedł pozytywnie i możemy cieszyć się skonfigurowanym IPSeciem typu route base. Jak Macie pytania to zapraszam do kontaktu. 

LAB vxlan – Juniper vMX i Cisco CSR1kv oraz ASAv

Po pierwszym wpisie o VxLAN, gdzie oparłem się wyłącznie na Cisco CSRv oraz ASAv przyszła pora na testowanie w konfiguracji multivendor.
Do tego laba wykorzystałem:

  • Cisco CSRv
  • Cisco ASAv
  • Juniper vMX

Wszystko zostało uruchomione na Vmware Workstation.

W dobie wirtualizacji serwerów i desktopów postanowiłem wziąć się ostro za poznanie świata wirtualizacji networku tym bardziej kiedy coraz częściej słyszy się hasło vxlan.
Postanowiłem sprawdzić jak wygląda konfiguracja na “sprzęcie”.
Następnym etapem będzie integracja tego co robię na urządzeniach sieciowych w połączeniu ze światem wirtualnym ale o tym później…

Konfiguracja oraz poznanie tej technologii było dla mnie najbardziej czasochłonnym zajęciem do tej pory ale dla tych co też chcą walczyć z poznaniem vxlan zostawiam swoją notatkę w postaci wpisu.

Oprócz samej technologi vxlan poruszę tu zaganiania takie jak: BGP, OSPF, MPLS, Multicast. Dzięki takim labom człowiek przypomina sobie ww technologie oraz nadrabia braki.

Zapraszam do lektury.

Lab

Poniżej schemat poglądowy Laba.

 

evpn

Jak widać na powyższym schemacie mamy trzy vtep’y i Cisco CSRv, które wykorzystuje jako Core spinające wszystko.

Teraz przechodzimy do fajniejszych rzeczy czyli do konfiguracji.

Konfiguracja interfejsów sieciowych na urządzeniach:

Cisco ASA –  asav01

Cisco CSR – csrv03

Juniper vMX – vmx01

Juniper vMX – vmx02

Cisco ASAv – vtep01

Rysunek szczegółowy dla połączeń vtep01 do vmx01

vmx01_1

Cisco ASAv – vtep02

Rysunek szczegółowy dla połączeń vtep02 do vmx02

vmx02_1

Konfiguracja OSPF

W tym kroku konfigurujemy routing dynamiczny z wykorzystaniem OSPF. Urządzenia vmx01 oraz vmx02 będą skonfigurowane w dwóch obszarach ospf.

Cisco ASA –  asav01

Cisco CSR – csrv03

Juniper vMX – vmx01

Juniper vMX – vmx02

Cisco ASAv – vtep01

Cisco ASAv – vtep02

Weryfikacja OSPF

Juniper vMX – vmx01

Juniper vMX – vmx02

Cisco ASAv – vtep01

Cisco ASAv – vtep02

Cisco ASA –  asav01

Cisco CSR – csrv03

Konfiguracja BGP

Juniper vMX – vmx01

Juniper vMX – vmx02

Weryfikacja BGP

Juniper vMX – vmx01

Juniper vMX – vmx02

Konfiguracja MPLS z sygnalizacją LDP

Cisco CSR – csrv03

Juniper vMX – vmx01

Juniper vMX – vmx02

Weryfikacja MPLS

Cisco CSR – csrv03

Juniper vMX – vmx01

Juniper vMX – vmx02

Konfiguracja Multicast

Juniper vMX – vmx01

Juniper vMX – vmx02

Cisco ASAv – vtep01

Cisco ASAv – vtep02

Cisco ASA –  asav01

Weryfikacja Multicast

Juniper vMX – vmx01

Juniper vMX – vmx02

Cisco ASAv – vtep01

Cisco ASAv – vtep02

Cisco ASA –  asav01

Konfiguracja VxLAN

ze względu na połączenie evpn z vxvlan oraz łączenie interfejsów będziemy wykorzystywać routing instancje dla vxvlan6666 oraz vxvlan1100 oraz będziemy łączyć ze sobą segmenty wykorzystując bridge domain.

Jedna uwaga:

po uruchomieniu vxlan na Cisco ASAv przestaje działać OSPF ze względu na zmianę MTU  na interfejsie źródłowym dla vtep’a i dlatego na urządzeniach sąsiednich trzeba zmienić MTU:

Cisco CSR – csrv03

Juniper vMX

Przypadek 1

Rysunek poglądowy:

p1_1

Na Cisco ASA asav01 jest uruchomiony interfejs vni 6666 a Juniper vMX ma dostęp do tego vxlanu i tworzy Bridge pomiędzy vxvlanem, evpnem a vlanem 100, do którego będzie podłączone kolejne Cisco ASA z fizycznym interfejsem.

 

Na urządzeniach vMX konfigurujemy routing instances typu evpn

Juniper vMX – vmx01

Konfigurujemy interfejs, do którego będzie podłączony vtep01. Port jest tagowany vlanem 100

Juniper vMX – vmx02

Konfigurujemy interfejs, do którego będzie podłączony vtep01. Port jest tagowany vlanem 100

Cisco ASAv – vtep01

routing domyślny przez asav01

Cisco ASAv – vtep02

routing domyślny przez asav01

Cisco ASA –  asav01

Konfiguracja nat’u oraz routingu tak aby był dostępny Internet

Weryfikacja:

Cisco ASAv – asav01

Wykonujemy pingi interfejsów l3

 

Tablica arp:

vxvlan:

Cisco ASAv – vtep01

Po skonfigurowaniu routingu domyślnego możemy osiągnąć Internet