VxLAN fabriek. Deel 2

Hallo, Habr. Ek gaan voort met die reeks artikels oor VxLAN EVPN-tegnologie, wat is spesifiek geskryf vir die bekendstelling van die kursus "Netwerkingenieur" van OTUS. En vandag kyk ons ​​na 'n interessante deel van die taak - roetering. Hoe onbenullig dit ook al mag klink, binne die raamwerk van die werk van 'n netwerkfabriek is alles dalk nie so eenvoudig nie.

VxLAN fabriek. Deel 2

Deel 1 van die siklus - L2-verbinding tussen bedieners

In die laaste deel het ons een uitsaaidomein bereik wat bo-op die netwerkmateriaal op die Nexus 9000v gebou is. Dit is egter nie die hele reeks take wat binne die datasentrumnetwerk opgelos moet word nie. En vandag sal ons kyk na die volgende taak - roetering tussen netwerke of tussen VNI's.

Laat ek jou daaraan herinner dat die Spine-Leaf topologie gebruik word:

VxLAN fabriek. Deel 2

Kom ons kyk eers na hoe roetering plaasvind en watter kenmerke dit het.

Vir begrip, kom ons vereenvoudig die logikadiagram en voeg nog 'n VNI 20000 vir Host-2 by. Die resultaat is:

VxLAN fabriek. Deel 2

Hoe kan u in hierdie geval verkeer van een gasheer na 'n ander oordra?

Daar is twee opsies:

  1. Hou inligting oor alle VNI's op alle Leaf-skakelaars, dan sal alle roetering op die eerste Leaf in die netwerk plaasvind;
  2. Gebruik 'n toegewyde L3 VNI

Die eerste metode is eenvoudig en gerieflik. Aangesien u net alle VNI op alle Leaf-skakelaars moet installeer. Dit lyk egter nie meer na 'n eenvoudige taak om 'n paar honderd of duisende VNI's vir alle Leafs op te stel nie. Daarom word dit redelik selde in die werk gebruik.

Kom ons kyk na metode 2, wat interessanter en 'n bietjie meer kompleks is, maar meer buigsaamheid gee in die opstel van die fabriek.

Kom ons voeg "PROD" by die VRF-topologie. Daarby voeg ons koppelvlak vlan 10 op die Leaf-11/12-paar en koppelvlak VLAN 20 op Leaf-21. VLAN 20 word geassosieer met 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

Om L3VNI te gebruik, moet jy 'n nuwe VLAN skep en dit met die nuwe VNI assosieer. Die nuwe VNI moet dieselfde wees op alle Leafs wat in VLAN 10- en 20-inligting belangstel

vlan 99
  vn-segment 99000

interface nve1
  member vni 99000 associate-vrf        ! Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ L3 VNI

vrf context PROD
  vni 99000                             ! ΠŸΡ€ΠΈΠ²ΡΠ·Ρ‹Π²Π°Π΅ΠΌ L3 VNI ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ VRF

Gevolglik sal die diagram soos volg lyk:

VxLAN fabriek. Deel 2

Dit moet nog 'n bietjie gedoen word - voeg nog een koppelvlak by - koppelvlak vlan 99 in VRF PROD

interface Vlan99
  no shutdown
  vrf member PROD
  ip forward  ! На интСрфСйсС Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ IP. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для пСрСсылки ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ Leaf

As gevolg hiervan is die logika om 'n raam van Host-1 na Host-2 oor te dra soos volg:

  1. Die raam wat deur Host-1 gestuur word, kom by Leaf in VLAN 10 aan, wat met VNI 10000 geassosieer word;
  2. Leaf kontroleer waar die bestemmingsadres is en vind dit deur L3 VNI op die tweede Leaf-skakelaar;
  3. Sodra 'n roete na die bestemmingsadres gevind word, pak Leaf die raam in 'n kopskrif met die nodige L3VNI 99000 - en stuur dit na die tweede Leaf;
  4. Die tweede Leaf-skakelaar ontvang data vanaf L3VNI 99000. Dit neem die oorspronklike raam en dra dit oor na die vereiste L2VNI 20000 en dan na VLAN 20.

As gevolg van hierdie werk elimineer L3VNI die behoefte om inligting oor alle VNI's wat op die netwerk is op alle Leaf-skakelaars te hou.

As gevolg hiervan, wanneer ons verkeer van Host-1 na Host-2 stuur, word die pakkie binne VxLAN gepak met 'n nuwe VNI - 99000:

VxLAN fabriek. Deel 2

Dit moet nog gesien word hoe presies Leaf-1 oor die MAC-adres van 'n ander VNI leer. Dit gebeur ook met EVPN-roetetipe 2 (MAC/IP).

Die volgende toon die proses om 'n roete oor 'n voorvoegsel in 'n ander VNI te versprei:

VxLAN fabriek. Deel 2

Dit wil sΓͺ, adresse ontvang vanaf VNI 20000 het twee RT'e.
Laat ek jou daaraan herinner dat roetes wat van Update ontvang word in die BGP-tabel beland met die Roete-teiken wat in die VRF-instellings gespesifiseer is (die proses is ietwat meer ingewikkeld, maar ons sal nie in hierdie artikel delf nie).
RT self word gevorm volgens die formule: AS:VNI (as outomatiese modus gebruik word).

Voorbeeld van RT-formasie in outomatiese en handmatige modus:

vrf context PROD
  address-family ipv4 unicast
    route-target import auto - автоматичСский Ρ€Π΅ΠΆΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹
    route-target export 65001:20000 - Ρ€ΡƒΡ‡Π½ΠΎΠΉ Ρ€Π΅ΠΆΠΈΠΌ формирования RT

Die resultaat hierbo toon dat voorvoegsels van 'n ander VNI twee RT-waardes het.
Een daarvan is 65001:99000 - 'n bykomende L3 VNI. Aangesien hierdie VNI op alle Blare dieselfde is en onder ons invoerreΓ«ls in die VRF-instellings val, beland die voorvoegsel in die BGP-tabel, wat gesien kan word uit die afvoer:

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

As ons die ontvangde opdatering van nader bekyk, kan ons sien dat hierdie voorvoegsel twee RT'e het:

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
<......>

In die roetetabel op Leaf-1 kan jy ook die voorvoegsel 192.168.20.20/32 sien:

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

Het u die afwesigheid van die hoofvoorvoegsel 192.168.20.0/24 in die roetetabel opgemerk?
Dis reg, hy is nie daar nie. Dit wil sΓͺ, afgeleΓ« Leafs ontvang slegs inligting oor die gashere wat op jou netwerk is. En dit is die regte gedrag. Bo in alle opdaterings kan jy sien dat inligting met MAC/IP-inhoud kom. Daar is geen sprake van enige voorvoegsels nie.

Dit is hoe die Host Mobility Manager (HMM) protokol werk, wat die ARP-tabel vul waaruit die BGP-tabel dan gevul word (ons sal hierdie proses weglaat vir die doeleindes van hierdie artikel). Op grond van die inligting wat van die HMM ontvang is, word EVPN-roetetipe 2 gevorm (deur MAC/IP oorgedra).

Wat egter as daar 'n behoefte is om inligting oor 'n voorvoegsel oor te dra?

Vir hierdie tipe inligting is daar EVPN roete-tipe 5 - dit laat jou toe om voorvoegsels via adres-familie l2vpn evpn te stuur (hierdie tipe roetes is ten tyde van die skryf slegs in die konsepweergawe RFC, as gevolg hiervan kan die gedrag van hierdie tipe roete tussen verskillende vervaardigers verskil)

Om voorvoegsels oor te dra, is dit nodig om voorvoegsels by te voeg wat in die BGP-proses vir VRF geadverteer sal word:

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

As gevolg hiervan sal Update hΓͺ:

VxLAN fabriek. Deel 2

Kom ons kyk na die BGP-tabel. Benewens EVPN-roete-tipe 2,3, het tipe 5-roetes verskyn, wat inligting oor die netwerknommer bevat:

<......>
   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
<.......>                   

Die voorvoegsel het ook in die roeteringtabel verskyn:

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

Dit sluit die tweede deel van die reeks artikels oor VxLAN EVPN af. In die volgende deel sal ons kyk na verskeie opsies vir roetering tussen VRF's.

Basiese beginsels van die IPv6-protokol en sy verskille van IPv4

Bron: will.com

Voeg 'n opmerking