VxLAN заводу. 2 бөлүк

Эй Хабр. Мен VxLAN EVPN технологиясы боюнча макалалардын сериясын улантып жатам, бул курстун башталышы үчүн атайын жазылган "Тармак инженери" OTUS тарабынан. Ал эми бүгүн биз тапшырмалардын кызыктуу бөлүгүн - маршрутизацияны карап чыгабыз. Кандай гана жөнөкөй угулбасын, бирок, тармак фабрикасынын ишинин бир бөлүгү катары, баары ушунчалык жөнөкөй болушу мүмкүн эмес.

VxLAN заводу. 2 бөлүк

Циклдин 1 бөлүгү - серверлердин ортосундагы L2 байланышы

Акыркы бөлүктө биз Nexus 9000v тармагындагы тармактык ткандын үстүнө курулган бир уктуруу доменине жетиштик. Бирок, бул маалымат борборунун тармагынын алкагында чечилиши керек болгон милдеттердин бүтүндөй комплекси эмес. Ал эми бүгүн биз төмөнкү тапшырманы карап чыгабыз - тармактардын ортосунда же VNI ортосунда маршруттоо.

Эске сала кетейин, Spine-Leaf топологиясы колдонулат:

VxLAN заводу. 2 бөлүк

Баштоо үчүн, биз маршрутташтыруу кантип пайда болгонун жана анын кандай өзгөчөлүктөргө ээ экендигин талдап чыгабыз.

Түшүнүү үчүн, келгиле, логикалык диаграмманы жөнөкөйлөтүп, Host-20000 үчүн дагы бир VNI 2 кошолу. Натыйжада:

VxLAN заводу. 2 бөлүк

Бул учурда, трафикти бир Хосттан экинчисине кантип өткөрө аласыз?

эки параметрлер бар:

  1. Бардык VNI жөнүндө маалыматты бардык Leaf өчүргүчтөрүндө сактаңыз, андан кийин бардык маршрутизация тармактагы биринчи Жалбыракта болот;
  2. атайын колдонуу - L3 VNI

Биринчи жолу жөнөкөй жана ыңгайлуу болуп саналат. Бардык Leaf которгучтарында бардык VNI'лерди башташыңыз керек болгондуктан. Бирок, бүтүндөй Жалбырактарда бир нече жүз же миңдеген VNIлерди иштетүү мындан ары оңой иш эместей сезилет. Ошондуктан, эмгекте ал өтө сейрек колдонулат.

Биз 2-ыкманы талдайбыз, анткени ал кызыктуураак жана бир аз татаалыраак, бирок фабриканы орнотууда көбүрөөк ийкемдүүлүк берет.

VRF топологиясына "PROD" кошолу. Ага Leaf-10/11 жупка vlan 12 интерфейсин жана Leaf-20ге VLAN 21 интерфейсин кошолу. VLAN 20 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

L3VNI колдонуу үчүн, сиз жаңы VLAN түзүп, аны жаңы VNI менен байланыштырышыңыз керек. Жаңы VNI VLAN 10 жана 20 маалыматына кызыккан бардык Жалбырактарда бирдей болушу керек.

vlan 99
  vn-segment 99000

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

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

Натыйжада, диаграмма төмөнкүдөй болот:

VxLAN заводу. 2 бөлүк

Бир аз бүтүрүү калды - дагы бир интерфейсти кошуңуз - VRF PRODдеги vlan 99 интерфейси

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

Натыйжада, кадрды Хост-1ден Хост-2ге өткөрүү логикасы төмөнкүдөй:

  1. Host-1 тарабынан жөнөтүлгөн кадр VNI 10 менен байланышкан VLAN 10000 жалбыракка келет;
  2. Leaf көздөгөн дарек кайда экенин текшерет жана аны экинчи Leaf которгучундагы L3 VNI аркылуу табат;
  3. Бара турган дарекке жол табылар замат, Жалбырак кадрды керектүү L3VNI 99000 менен аталышка топтойт жана аны экинчи Жалбыракка жөнөтөт;
  4. Экинчи Leaf коммутатор L3VNI 99000ден маалыматтарды алат. Түпнуска кадрды алат жана аны керектүү L2VNI 20000, андан кийин VLAN 20га өткөрөт.

Бул иштин натыйжасында, L3VNI бардык Leaf өчүргүчтөрүндө тармакта болгон бардык VNI жөнүндө маалыматты сактоо зарылдыгын жок кылат.

Натыйжада, биз Хост-1ден Хост-2ге трафик жөнөткөндө, пакет VxLAN ичинде жаңы VNI - 99000 менен жыйылган:

VxLAN заводу. 2 бөлүк

Leaf-1 башка VNIден MAC дареги тууралуу так кантип биле турганын көрүш керек. Бул 2-түрдөгү EVPN маршрутунун (MAC / IP) жардамы менен да болот.

Төмөндө башка VNIде жайгашкан префикс боюнча маршрутту жайылтуу процесси көрсөтүлгөн:

VxLAN заводу. 2 бөлүк

Башкача айтканда, VNI 20000 алынган даректер эки RT бар.
Эске сала кетейин, Жаңыртуудан алынган маршруттар BGP таблицасына VRF жөндөөлөрүндө көрсөтүлгөн Маршрут-максат менен кирет (процесс бир аз татаалыраак, бирок биз бул макалага кирбейбиз).
RT өзү формула боюнча түзүлөт: AS:VNI (эгерде автоматтык режим колдонулса).

Автоматтык жана кол режиминде RT түзүүнүн мисалы:

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

Натыйжада, башка VNI префикстеринин эки RT мааниси бар экенин жогорудан көрө аласыз.
Алардын бири 65001:99000 кошумча L3 VNI. Бул VNI бардык Жалбырактарда бирдей болгондуктан жана VRF жөндөөлөрүндөгү импорттоо эрежелерибизге туура келгендиктен, префикс BGP таблицасына кирет, аны чыгаруудан көрүүгө болот:

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

Алынган жаңыртууну жакшыраак карасак, бул префикстин эки 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
<......>

Leaf-1деги маршруттук таблицадан 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

Маршруттук таблицада 192.168.20.0/24 жок негизги префикске көңүл бурасызбы?
Туура, ал жок. Башкача айтканда, алыскы жалбырактар ​​тармагыңыздагы хосттор жөнүндө гана маалымат алышат. Жана бул туура жүрүм-турум. Жогоруда, бардык жаңыртууларда, сиз маалымат MAC / IP мазмуну менен келгенин көрө аласыз. Сөз кыла турган префикстер жок.

Бул BGP таблицасы андан ары толтурулуучу ARP таблицасын толтуруучу Host Mobility Manager (HMM) протоколу (биз бул процессти ушул макаланын алкагында өткөрүп жиберебиз). HMMден алынган маалыматтын негизинде маршруттук типтеги 2 EVPN түзүлөт (MAC/IP аркылуу берилет).

Бирок, префикс жөнүндө маалымат берүү зарылчылыгы келип чыксачы?

Маалыматтын бул түрү үчүн EVPN маршруту 5 түрү бар - ал дарек-үй-бүлө l2vpn evpn аркылуу префикстерди жөнөтүүгө мүмкүндүк берет (бул жазуу учурунда маршруттун бул түрү долбоор версиясында гана бар RFC, Ушундан улам, ар кандай өндүрүүчүлөр маршруттун бул түрүнүн ар кандай жүрүм-турумуна ээ болушу мүмкүн)

Префикстерди өткөрүү үчүн VRF үчүн BGP процессине префикстерди кошуу керек, алар жарнамаланат:

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

Натыйжада, Жаңыртуу төмөнкүдөй болот:

VxLAN заводу. 2 бөлүк

BGP таблицасын карап көрөлү. EVPN маршруттук 2,3 тибинен тышкары, тармактын номери жөнүндө маалыматты камтыган 5 типтеги маршруттар пайда болду:

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

Префикс маршруттук таблицада да пайда болгон:

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

Бул VxLAN EVPN боюнча бир катар макалалардын экинчи бөлүгүн аяктайт. Кийинки бөлүктө биз VRF ортосундагы багыттоо үчүн ар кандай варианттарды карап чыгабыз.

IPv6 негиздери жана анын IPv4тен кандай айырмасы бар

Source: www.habr.com

Комментарий кошуу