Hoy Habr. Ipinagpapatuloy ko ang serye ng mga artikulo sa teknolohiya ng VxLAN EVPN, na ay partikular na isinulat para sa paglulunsad ng kurso
Sa huling bahagi, nakamit namin ang isang broadcast domain na binuo sa ibabaw ng isang network fabric sa isang Nexus 9000v. Gayunpaman, hindi ito ang buong hanay ng mga gawain na kailangang lutasin sa loob ng balangkas ng network ng data center. At ngayon ay isasaalang-alang natin ang sumusunod na gawain - pagruruta sa pagitan ng mga network o sa pagitan ng mga VNI.
Hayaan akong ipaalala sa iyo na ang Spine-Leaf topology ay ginagamit:
Upang magsimula, susuriin namin kung paano nangyayari ang pagruruta at kung anong mga tampok ang mayroon ito.
Para sa pag-unawa, pasimplehin natin ang logic diagram at magdagdag ng isa pang VNI 20000 para sa Host-2. Ang resulta ay:
Paano, sa kasong ito, maaari mong ilipat ang trapiko mula sa isang Host patungo sa isa pa?
Mayroong dalawang mga pagpipilian:
- Panatilihin ang impormasyon tungkol sa lahat ng VNI sa lahat ng Leaf switch, pagkatapos ang lahat ng pagruruta ay magaganap sa unang Leaf sa network;
- Gumamit ng nakatuon - L3 VNI
Ang unang paraan ay simple at maginhawa. Dahil kailangan mo lang simulan ang lahat ng VNI sa lahat ng Leaf switch. Gayunpaman, ang pagpapatakbo ng ilang daan o libu-libong VNI sa buong Leaf ay hindi na mukhang isang madaling gawain. Samakatuwid, sa trabaho ito ay ginagamit medyo bihira.
Susuriin namin ang paraan 2, bilang mas kawili-wili at bahagyang mas kumplikado, ngunit nagbibigay ng higit na kakayahang umangkop sa pag-set up ng pabrika.
Idagdag natin ang "PROD" sa VRF topology. Idagdag natin ang interface vlan 10 dito sa Leaf-11/12 pares at interface VLAN 20 sa Leaf-21. Ang VLAN 20 ay nauugnay sa 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
Upang magamit ang L3VNI, kailangan mong lumikha ng bagong VLAN, iugnay ito sa bagong VNI. Ang bagong VNI ay dapat na pareho sa lahat ng Leaf na interesado sa VLAN 10 at 20 na impormasyon.
vlan 99
vn-segment 99000
interface nve1
member vni 99000 associate-vrf ! Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ L3 VNI
vrf context PROD
vni 99000 ! ΠΡΠΈΠ²ΡΠ·ΡΠ²Π°Π΅ΠΌ L3 VNI ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ VRF
Bilang resulta, ang diagram ay magiging ganito:
Ito ay nananatiling upang matapos ng kaunti - magdagdag ng isa pang interface - interface vlan 99 sa VRF PROD
interface Vlan99
no shutdown
vrf member PROD
ip forward ! ΠΠ° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ IP. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΡΡΠ»ΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρ Leaf
Bilang resulta, ang lohika ng pagpasa ng frame mula Host-1 hanggang Host-2 ay ang mga sumusunod:
- Dumating ang isang frame na ipinadala ng Host-1 sa isang Leaf sa VLAN 10, na nauugnay sa VNI 10000;
- Tinitingnan ng Leaf kung saan ang patutunguhang address at hinahanap ito sa pamamagitan ng L3 VNI sa pangalawang switch ng Leaf;
- Sa sandaling matagpuan ang ruta patungo sa patutunguhang address, inilalagay ng Leaf ang frame sa isang header na may kinakailangang L3VNI 99000 - at ipinapadala ito patungo sa pangalawang Dahon;
- Ang pangalawang Leaf switch ay tumatanggap ng data mula sa L3VNI 99000. Nakukuha ang orihinal na frame at inililipat ito sa kinakailangang L2VNI 20000 at pagkatapos ay sa VLAN 20.
Bilang resulta ng gawaing ito, inalis ng L3VNI ang pangangailangang panatilihin ang impormasyon tungkol sa lahat ng VNI na nasa network sa lahat ng Leaf switch.
Bilang resulta, kapag nagpadala kami ng trapiko mula Host-1 hanggang Host-2, ang packet ay naka-pack sa loob ng VxLAN na may bagong VNI - 99000:
Ito ay nananatiling makikita kung paano eksaktong natututo ang Leaf-1 tungkol sa MAC address mula sa isa pang VNI. Nangyayari din ito sa tulong ng EVPN route-type 2 (MAC / IP).
Ipinapakita ng sumusunod ang proseso ng pagpapalaganap ng ruta tungkol sa prefix na matatagpuan sa isa pang VNI:
Iyon ay, ang mga address na natanggap mula sa VNI 20000 ay may dalawang RT.
Ipaalala ko sa iyo na ang mga ruta na natanggap mula sa Update ay nahuhulog sa talahanayan ng BGP na may target na Ruta na tinukoy sa mga setting ng VRF (ang proseso ay medyo mas kumplikado, ngunit hindi kami pupunta sa artikulong ito).
Ang RT mismo ay nabuo sa pamamagitan ng formula: AS:VNI (kung ginamit ang awtomatikong mode).
Isang halimbawa ng pagbuo ng RT sa awtomatiko at manu-manong mga mode:
vrf context PROD
address-family ipv4 unicast
route-target import auto - Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ ΡΠ°Π±ΠΎΡΡ
route-target export 65001:20000 - ΡΡΡΠ½ΠΎΠΉ ΡΠ΅ΠΆΠΈΠΌ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ RT
Bilang resulta, makikita mo sa itaas na ang mga prefix mula sa isa pang VNI ay may dalawang RT value.
Isa sa mga ito 65001:99000 ay isang karagdagang L3 VNI. Dahil ang VNI na ito ay pareho sa lahat ng Leafs at nasa ilalim ng aming mga panuntunan sa pag-import sa mga setting ng VRF, ang prefix ay napupunta sa BGP table, na makikita mula sa output:
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
Kung titingnan natin nang mas mabuti ang natanggap na update, makikita natin na ang prefix na ito ay may dalawang 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
<......>
Sa routing table sa Leaf-1, makikita mo rin ang prefix na 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
Pansinin ang nawawalang pangunahing prefix na 192.168.20.0/24 sa routing table?
Tama, wala siya. Ibig sabihin, ang mga remote na Leafs ay tumatanggap lamang ng impormasyon tungkol sa mga host na nasa iyong network. At ito ang tamang pag-uugali. Sa itaas, sa lahat ng mga update, makikita mo na ang impormasyon ay kasama ng nilalaman ng MAC / IP. Walang prefix na masasabi.
Ito ang protocol ng Host Mobility Manager (HMM), na pumupuno sa talahanayan ng ARP kung saan higit pang pinupunan ang talahanayan ng BGP (aalisin namin ang prosesong ito sa loob ng balangkas ng artikulong ito). Batay sa impormasyong natanggap mula sa HMM, ang mga uri ng ruta na 2 EVPN ay nabuo (na ipinadala ng MAC / IP).
Gayunpaman, paano kung may pangangailangan na magpasa ng impormasyon tungkol sa isang prefix?
Para sa ganitong uri ng impormasyon, mayroong EVPN route-type 5 - pinapayagan ka nitong magpadala ng mga prefix sa pamamagitan ng address-family l2vpn evpn (ang ganitong uri ng ruta sa oras ng pagsulat na ito ay nasa draft na bersyon lamang
Upang maglipat ng mga prefix, kinakailangang magdagdag ng mga prefix sa proseso ng BGP para sa VRF, na ia-advertise:
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
Bilang resulta, ang Update ay magiging:
Tingnan natin ang talahanayan ng BGP. Bilang karagdagan sa uri ng ruta ng EVPN 2,3, lumitaw ang uri 5 na mga ruta na naglalaman ng impormasyon tungkol sa numero ng network:
<......>
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
<.......>
Ang prefix ay lumabas din sa routing table:
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
Ito ay nagtatapos sa ikalawang bahagi ng isang serye ng mga artikulo sa VxLAN EVPN. Sa susunod na bahagi, isasaalang-alang namin ang iba't ibang mga opsyon para sa pagruruta sa pagitan ng mga VRF.
Pinagmulan: www.habr.com