Хеј Хабр. Настављам серију чланака о ВкЛАН ЕВПН технологији, која написане су посебно за покретање курса
У последњем делу, постигли смо један домен за емитовање изграђен на врху мрежног ткива на Некус 9000в. Међутим, ово није цео низ задатака које треба решити у оквиру мреже дата центара. А данас ћемо размотрити следећи задатак - рутирање између мрежа или између ВНИ-а.
Да вас подсетим да се користи топологија Спине-Леаф:
За почетак ћемо анализирати како се рутирање одвија и које карактеристике има.
Ради разумевања, хајде да поједноставимо логички дијаграм и додамо још један ВНИ 20000 за Хост-2. резултат је:
Како, у овом случају, можете пренети саобраћај са једног хоста на други?
Постоје две опције:
- Чувајте информације о свим ВНИ-овима на свим Леаф прекидачима, тада ће се сва рутирања десити на првом Леаф-у у мрежи;
- Користите наменски - Л3 ВНИ
Први начин је једноставан и згодан. Пошто морате само да покренете све ВНИ на свим Леаф прекидачима. Међутим, покретање неколико стотина или хиљада ВНИ-ова на целом Леаф-у више не изгледа као лак задатак. Због тога се у раду користи прилично ретко.
Анализираћемо метод 2, као занимљивији и нешто компликованији, али који даје већу флексибилност у постављању фабрике.
Додајмо "ПРОД" у ВРФ топологију. Хајде да му додамо интерфејс влан 10 на пару Леаф-11/12 и интерфејс ВЛАН 20 на Леаф-21. ВЛАН 20 је повезан са ВНИ 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
Да бисте користили Л3ВНИ, потребно је да креирате нови ВЛАН, да га повежете са новим ВНИ. Нови ВНИ мора бити исти на свим Леафовима заинтересованим за информације о ВЛАН-у 10 и 20.
vlan 99
vn-segment 99000
interface nve1
member vni 99000 associate-vrf ! Создаем L3 VNI
vrf context PROD
vni 99000 ! Привязываем L3 VNI к определенному VRF
Као резултат, дијаграм ће изгледати овако:
Остаје да се мало заврши - додајте још један интерфејс - интерфејс влан 99 у ВРФ ПРОД
interface Vlan99
no shutdown
vrf member PROD
ip forward ! На интерфейсе не должно быть IP. Используется только для пересылки пакетов между Leaf
Као резултат тога, логика прослеђивања оквира са Хост-1 на Хост-2 је следећа:
- Оквир који шаље Хост-1 стиже на лист у ВЛАН 10, који је повезан са ВНИ 10000;
- Леаф проверава где је одредишна адреса и проналази је преко Л3 ВНИ на другом Леаф прекидачу;
- Чим се пронађе рута до одредишне адресе, Леаф пакује оквир у заглавље са потребним Л3ВНИ 99000 - и шаље га према другом Леаф-у;
- Други Леаф прекидач прима податке са Л3ВНИ 99000. Добија оригинални оквир и преноси га на потребан Л2ВНИ 20000, а затим на ВЛАН 20.
Као резултат овог рада, Л3ВНИ уклања потребу за чувањем информација о свим ВНИ-овима који су на мрежи на свим Леаф прекидачима.
Као резултат тога, када шаљемо саобраћај са Хост-1 на Хост-2, пакет се пакује унутар ВкЛАН-а са новим ВНИ - 99000:
Остаје да се види како тачно Леаф-1 сазнаје о МАЦ адреси од другог ВНИ. Ово се такође дешава уз помоћ ЕВПН руте типа 2 (МАЦ / ИП).
Следеће показује процес пропагирања руте око префикса који се налази у другом ВНИ:
То јест, адресе примљене од ВНИ 20000 имају два РТ.
Дозволите ми да вас подсетим да руте примљене од Упдате спадају у БГП табелу са Роуте-таргет наведеним у ВРФ подешавањима (процес је нешто компликованији, али нећемо улазити у овај чланак).
Сам РТ се формира по формули: АС:ВНИ (ако се користи аутоматски режим).
Пример формирања РТ у аутоматском и ручном режиму:
vrf context PROD
address-family ipv4 unicast
route-target import auto - автоматический режим работы
route-target export 65001:20000 - ручной режим формирования RT
Као резултат, горе можете видети да префикси из другог ВНИ-а имају две РТ вредности.
Један од њих 65001:99000 је додатни Л3 ВНИ. Пошто је овај ВНИ исти на свим листовима и потпада под наша правила увоза у ВРФ подешавањима, префикс улази у БГП табелу, што се може видети из излаза:
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
Ако пажљивије погледамо примљену исправку, можемо видети да овај префикс има два РТ:
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
<......>
У табели рутирања на Леаф-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 у табели рутирања?
Тако је, нема га. То јест, удаљени Леафс примају информације само о хостовима који су на вашој мрежи. И ово је исправно понашање. Изнад, у свим ажурирањима, можете видети да информације долазе са садржајем МАЦ / ИП-а. Нема о префиксима да се говори.
Ово је протокол Хост Мобилити Манагер (ХММ), који попуњава АРП табелу из које се даље попуњава БГП табела (овај процес ћемо изоставити у оквиру овог чланка). На основу информација добијених од ХММ-а, формирају се ЕВПН типа руте 2 (преносе МАЦ / ИП).
Међутим, шта ако постоји потреба да се проследе информације о префиксу?
За ову врсту информација постоји ЕВПН роуте-типе 5 - омогућава вам да шаљете префиксе преко фамилије адресе л2впн евпн (овакав тип руте у тренутку писања овог текста је само у нацртној верзији
За пренос префикса потребно је додати префиксе у БГП процес за ВРФ, који ће бити оглашени:
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
Као резултат, ажурирање ће бити:
Погледајмо БГП табелу. Поред ЕВПН руте типа 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
Овим је завршен други део серије чланака о ВкЛАН ЕВПН. У следећем делу ћемо размотрити различите опције за рутирање између ВРФ-ова.
Извор: ввв.хабр.цом