Tovarna VxLAN. 2. del

Hej Habr. Nadaljujem serijo člankov o tehnologiji VxLAN EVPN, ki so bili napisani posebej za začetek tečaja "Omrežni inženir" od OTUS. In danes bomo razmislili o zanimivem delu nalog - usmerjanju. Ne glede na to, kako banalno se sliši, v okviru dela omrežne tovarne morda ni vse tako preprosto.

Tovarna VxLAN. 2. del

1 del cikla - L2 povezljivost med strežniki

V zadnjem delu smo dosegli eno oddajno domeno, zgrajeno na vrhu omrežne strukture na Nexusu 9000v. Vendar to ni celoten nabor nalog, ki jih je treba rešiti v okviru omrežja podatkovnih centrov. In danes bomo obravnavali naslednjo nalogo - usmerjanje med omrežji ali med VNI.

Naj vas spomnim, da se uporablja topologija Spine-Leaf:

Tovarna VxLAN. 2. del

Za začetek bomo analizirali, kako poteka usmerjanje in kakšne funkcije ima.

Za razumevanje poenostavimo logični diagram in dodamo še en VNI 20000 za Host-2. Rezultat je:

Tovarna VxLAN. 2. del

Kako lahko v tem primeru prenesete promet z enega gostitelja na drugega?

Obstajata dve možnosti:

  1. Hranite informacije o vseh VNI na vseh stikalih Leaf, potem se bo vse usmerjanje zgodilo na prvem Leafu v omrežju;
  2. Uporabite namensko - L3 VNI

Prvi način je preprost in priročen. Ker morate samo zagnati vse VNI na vseh stikalih Leaf. Vendar pa se zagon nekaj sto ali tisoč VNI-jev na celotnem Leafu ne zdi več lahka naloga. Zato se v delu uporablja precej redko.

Analizirali bomo metodo 2, ki je bolj zanimiva in nekoliko bolj zapletena, vendar daje večjo prilagodljivost pri postavitvi tovarne.

Dodajmo "PROD" topologiji VRF. Dodajmo mu vmesnik vlan 10 na paru Leaf-11/12 in vmesnik VLAN 20 na Leaf-21. VLAN 20 je povezan z VNI 20000

vrf context PROD
  rd auto       ! Route Distinguisher не принципиален и можем использовать сформированный автоматически
  address-family ipv4 unicast
    route-target both auto      ! указываем Route-target с которым будут импортироваться и экспортироваться префиксы в/из VRF
vlan 20
  vn-segment 20000

interface nve 1
  member vni 20000
    ingress-replication protocol bgp

interface Vlan10
  no shutdown
  vrf member PROD
  ip address 192.168.20.1/24
  fabric forwarding mode anycast-gateway

Če želite uporabljati L3VNI, morate ustvariti nov VLAN in ga povezati z novim VNI. Novi VNI mora biti enak na vseh Leafih, ki jih zanimajo informacije VLAN 10 in 20.

vlan 99
  vn-segment 99000

interface nve1
  member vni 99000 associate-vrf        ! Создаем L3 VNI

vrf context PROD
  vni 99000                             ! Привязываем L3 VNI к определенному VRF

Kot rezultat bo diagram videti takole:

Tovarna VxLAN. 2. del

Ostaja še malo dokončati - dodati še en vmesnik - vmesnik vlan 99 v VRF PROD

interface Vlan99
  no shutdown
  vrf member PROD
  ip forward  ! На интерфейсе не должно быть IP. Используется только для пересылки пакетов между Leaf

Posledično je logika prenosa okvirja od gostitelja-1 do gostitelja-2 naslednja:

  1. Okvir, ki ga pošlje Host-1, prispe na list v VLAN 10, ki je povezan z VNI 10000;
  2. Leaf preveri, kje je ciljni naslov, in ga najde prek L3 VNI na drugem stikalu Leaf;
  3. Takoj ko je najdena pot do ciljnega naslova, Leaf zapakira okvir v glavo s potrebnim L3VNI 99000 - in ga pošlje drugemu Leafu;
  4. Drugo stikalo Leaf prejme podatke iz L3VNI 99000. Pridobi izvirni okvir in ga prenese v zahtevani L2VNI 20000 in nato v VLAN 20.

Kot rezultat tega dela L3VNI odstrani potrebo po ohranjanju informacij o vseh VNI, ki so v omrežju, na vseh stikalih Leaf.

Kot rezultat, ko pošiljamo promet od gostitelja-1 do gostitelja-2, je paket zapakiran znotraj VxLAN z novim VNI - 99000:

Tovarna VxLAN. 2. del

Še vedno je treba razumeti, kako natančno Leaf-1 izve za naslov MAC od drugega VNI. To se zgodi tudi s pomočjo EVPN route-type 2 (MAC / IP).

Naslednje prikazuje postopek širjenja poti okoli predpone, ki se nahaja v drugem VNI:

Tovarna VxLAN. 2. del

To pomeni, da imajo naslovi, prejeti od VNI 20000, dva RT.
Naj vas spomnim, da poti, prejete iz posodobitve, spadajo v tabelo BGP s ciljem Route-target, določenim v nastavitvah VRF (postopek je nekoliko bolj zapleten, vendar se ne bomo spuščali v ta članek).
Sam RT se oblikuje po formuli: AS:VNI (če je uporabljen samodejni način).

Primer oblikovanja RT v avtomatskem in ročnem načinu:

vrf context PROD
  address-family ipv4 unicast
    route-target import auto - автоматический режим работы
    route-target export 65001:20000 - ручной режим формирования RT

Kot rezultat lahko zgoraj vidite, da imajo predpone iz drugega VNI dve vrednosti RT.
Eden od njih 65001:99000 je dodatni L3 VNI. Ker je ta VNI enak na vseh listih in spada pod naša uvozna pravila v nastavitvah VRF, pride predpona v tabelo BGP, kar je razvidno iz izhoda:

sh bgp l2vpn evpn
<.....>
   Network            Next Hop            Metric     LocPrf     Weight Path
Route Distinguisher: 10.255.1.11:32777    (L2VNI 10000)
*>l[2]:[0]:[0]:[48]:[5001.0007.0007]:[0]:[0.0.0.0]/216
                      10.255.1.10                       100      32768 i
*>l[2]:[0]:[0]:[48]:[5001.0007.0007]:[32]:[192.168.10.10]/272
                      10.255.1.10                       100      32768 i
*>l[3]:[0]:[32]:[10.255.1.10]/88
                      10.255.1.10                       100      32768 i

Route Distinguisher: 10.255.1.21:32787
* i[2]:[0]:[0]:[48]:[5001.0008.0007]:[32]:[192.168.20.20]/272    ! Префикс полученный из VNI 20000
                      10.255.1.20                       100          0 i
*>i                   10.255.1.20                       100          0 i

Če podrobneje pogledamo prejeto posodobitev, lahko vidimo, da ima ta predpona dva RT:

Leaf11# sh bgp l2vpn evpn 5001.0008.0007
BGP routing table information for VRF default, address family L2VPN EVPN
Route Distinguisher: 10.255.1.21:32787
BGP routing table entry for [2]:[0]:[0]:[48]:[5001.0008.0007]:[32]:[192.168.20.2
0]/272, version 5164
Paths: (2 available, best #2)
Flags: (0x000202) (high32 00000000) on xmit-list, is not in l2rib/evpn, is not i
n HW

  Path type: internal, path is valid, not best reason: Neighbor Address, no labeled nexthop
  AS-Path: NONE, path sourced internal to AS
    10.255.1.20 (metric 81) from 10.255.1.102 (10.255.1.102)
      Origin IGP, MED not set, localpref 100, weight 0
      Received label 20000 99000                                 ! Два label для работы VxLAN
      Extcommunity: RT:65001:20000 RT:65001:99000 SOO:10.255.1.20:0 ENCAP:8     ! Два значения Route-target, на основе, которых добавили данный префикс
          Router MAC:5001.0005.0007
      Originator: 10.255.1.21 Cluster list: 10.255.1.102
<......>

V usmerjevalni tabeli na Leaf-1 lahko vidite tudi predpono 192.168.20.20/32:

Leaf11# sh ip route vrf PROD
192.168.10.0/24, ubest/mbest: 1/0, attached
    *via 192.168.10.1, Vlan10, [0/0], 01:29:28, direct
192.168.10.1/32, ubest/mbest: 1/0, attached
    *via 192.168.10.1, Vlan10, [0/0], 01:29:28, local
192.168.10.10/32, ubest/mbest: 1/0, attached
    *via 192.168.10.10, Vlan10, [190/0], 01:27:22, hmm
192.168.20.20/32, ubest/mbest: 1/0                                        ! Адрес Host-2
    *via 10.255.1.20%default, [200/0], 01:20:20, bgp-65001, internal, tag 65001     ! Доступный через Leaf-2
(evpn) segid: 99000 tunnelid: 0xaff0114 encap: VXLAN                                ! Через VNI 99000

Ali opazite manjkajočo primarno predpono 192.168.20.0/24 v usmerjevalni tabeli?
Tako je, ni ga tam. To pomeni, da oddaljeni Leafs prejemajo informacije samo o gostiteljih, ki so v vašem omrežju. In to je pravilno vedenje. Zgoraj, v vseh posodobitvah, lahko vidite, da informacije prihajajo z vsebino MAC / IP. O predponah ni govora.

To je protokol HMM (Host Mobility Manager), ki polni tabelo ARP iz katere se nadalje polni tabela BGP (v okviru tega članka bomo ta proces izpustili). Na podlagi informacij, prejetih od HMM, se oblikujejo EVPN tipa 2 poti (prenaša se z MAC / IP).

Kaj pa, če je treba posredovati informacije o predponi?

Za to vrsto informacij obstaja EVPN route-type 5 - omogoča pošiljanje predpon prek naslovne družine l2vpn evpn (ta vrsta poti je v času tega pisanja samo v različici osnutka RFC, zaradi tega imajo lahko različni proizvajalci različno obnašanje te vrste poti)

Za prenos predpon je potrebno v procesu BGP za VRF dodati predpone, ki bodo oglaševane:

router bgp 65001
  vrf PROD
    address-family ipv4 unicast
      redistribute direct route-map VNI20000        ! В данном случае анонсируем префиксы подключение непосредственно к Leaf в VNI 20000
route-map VNI20000 permit 10
  match ip address prefix-list VNI20000_OUT    ! Указываем какой использовать prefix-list

ip prefix-list VNI20000_OUT seq 5 permit 192.168.20.0/24   ! Указываем какие сети будут попадать в EVPN route-type 5

Posledično bo posodobitev:

Tovarna VxLAN. 2. del

Poglejmo tabelo BGP. Poleg EVPN route-type 2,3 so se pojavile poti tipa 5, ki vsebujejo podatke o številki omrežja:

<......>
   Network            Next Hop            Metric     LocPrf     Weight Path
Route Distinguisher: 10.255.1.11:3
* i[5]:[0]:[0]:[24]:[192.168.10.0]/224
                      10.255.1.10              0        100          0 ?
*>i                   10.255.1.10              0        100          0 ?

Route Distinguisher: 10.255.1.11:32777
* i[2]:[0]:[0]:[48]:[5001.0007.0007]:[0]:[0.0.0.0]/216
                      10.255.1.10                       100          0 i
*>i                   10.255.1.10                       100          0 i
* i[2]:[0]:[0]:[48]:[5001.0007.0007]:[32]:[192.168.10.10]/272
                      10.255.1.10                       100          0 i
*>i                   10.255.1.10                       100          0 i
* i[3]:[0]:[32]:[10.255.1.10]/88
                      10.255.1.10                       100          0 i
*>i                   10.255.1.10                       100          0 i

Route Distinguisher: 10.255.1.12:3
*>i[5]:[0]:[0]:[24]:[192.168.10.0]/224      ! EVPN route-type 5 с номером префикса
                      10.255.1.10              0        100          0 ?
* i
<.......>                   

Predpona se je pojavila tudi v usmerjevalni tabeli:

Leaf21# sh ip ro vrf PROD
192.168.10.0/24, ubest/mbest: 1/0
    *via 10.255.1.10%default, [200/0], 00:14:32, bgp-65001, internal, tag 65001  ! Удаленный префикс, доступный через Leaf1/2(адрес Next-hop = virtual IP между парой VPC)
(evpn) segid: 99000 tunnelid: 0xaff010a encap: VXLAN      ! Префикс доступен через L3VNI 99000

192.168.10.10/32, ubest/mbest: 1/0
    *via 10.255.1.10%default, [200/0], 02:33:40, bgp-65001, internal, tag 65001
(evpn) segid: 99000 tunnelid: 0xaff010a encap: VXLAN

192.168.20.0/24, ubest/mbest: 1/0, attached
    *via 192.168.20.1, Vlan20, [0/0], 02:39:44, direct
192.168.20.1/32, ubest/mbest: 1/0, attached
    *via 192.168.20.1, Vlan20, [0/0], 02:39:44, local
192.168.20.20/32, ubest/mbest: 1/0, attached
    *via 192.168.20.20, Vlan20, [190/0], 02:35:46, hmm

S tem se zaključuje drugi del serije člankov o VxLAN EVPN. V naslednjem delu bomo obravnavali različne možnosti za usmerjanje med VRF-ji.

Osnove IPv6 in kako se razlikuje od IPv4

Vir: www.habr.com

Dodaj komentar