Helo, Habr. Rwy'n parhau Γ’'r gyfres o erthyglau ar dechnoleg VxLAN EVPN, sydd ysgrifennwyd yn benodol ar gyfer lansiad y cwrs gan OTUS. A heddiw byddwn yn edrych ar ran ddiddorol o'r dasg - llwybro. Ni waeth pa mor ddibwys y gall swnio, fodd bynnag, o fewn fframwaith gwaith ffatri rhwydwaith, efallai na fydd popeth mor syml.

Yn y rhan olaf, fe wnaethom gyflawni un parth darlledu a adeiladwyd ar ben y ffabrig rhwydwaith ar y Nexus 9000v. Fodd bynnag, nid dyma'r ystod gyfan o dasgau y mae angen eu datrys o fewn rhwydwaith y ganolfan ddata. A heddiw byddwn yn edrych ar y dasg nesaf - llwybro rhwng rhwydweithiau neu rhwng VNIs.
Gadewch imi eich atgoffa bod topoleg Dail yr Asgwrn Cefn yn cael ei defnyddio:

Yn gyntaf, gadewch i ni edrych ar sut mae llwybro yn digwydd a pha nodweddion sydd ganddo.
I ddeall, gadewch i ni symleiddio'r diagram rhesymeg ac ychwanegu VNI 20000 arall ar gyfer Host-2. Y canlyniad yw:

Sut, yn yr achos hwn, allwch chi drosglwyddo traffig o un Gwesteiwr i'r llall?
Mae dau opsiwn:
- Cadw gwybodaeth am yr holl VNIs ar bob switsh Leaf, yna bydd yr holl lwybro yn digwydd ar y Ddeilen gyntaf yn y rhwydwaith;
- Defnyddiwch L3 VNI pwrpasol
Mae'r dull cyntaf yn syml ac yn gyfleus. Gan fod angen i chi osod yr holl VNI ar bob switsh Leaf. Fodd bynnag, nid yw sefydlu cannoedd neu filoedd o VNIs ar gyfer pob Dail bellach yn ymddangos fel tasg syml. Felly, anaml y caiff ei ddefnyddio yn y gwaith.
Edrychwn ar ddull 2, sy'n fwy diddorol ac ychydig yn fwy cymhleth, ond sy'n rhoi mwy o hyblygrwydd wrth sefydlu'r ffatri.
Gadewch i ni ychwanegu "PROD" at dopoleg VRF. Iddo byddwn yn ychwanegu rhyngwyneb vlan 10 ar y pΓ’r Leaf-11/12 a rhyngwyneb VLAN 20 ar Leaf-21. Mae VLAN 20 yn gysylltiedig Γ’ 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
Er mwyn defnyddio L3VNI, mae angen i chi greu VLAN newydd a'i gysylltu Γ’'r VNI newydd. Rhaid i'r VNI newydd fod yr un peth ar bob Dail sydd Γ’ diddordeb mewn gwybodaeth VLAN 10 ac 20
vlan 99
vn-segment 99000
interface nve1
member vni 99000 associate-vrf ! Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ L3 VNI
vrf context PROD
vni 99000 ! ΠΡΠΈΠ²ΡΠ·ΡΠ²Π°Π΅ΠΌ L3 VNI ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ VRF
O ganlyniad, bydd y diagram yn edrych fel hyn:

Mae'n dal i fod i'w wneud ychydig - ychwanegu un rhyngwyneb arall - rhyngwyneb vlan 99 yn VRF PROD
interface Vlan99
no shutdown
vrf member PROD
ip forward ! ΠΠ° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ IP. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΡΡΠ»ΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρ Leaf
O ganlyniad, mae'r rhesymeg ar gyfer pasio ffrΓ’m o Host-1 i Host-2 fel a ganlyn:
- Mae'r ffrΓ’m a anfonir gan Host-1 yn cyrraedd Leaf yn VLAN 10, sy'n gysylltiedig Γ’ VNI 10000;
- Mae dail yn gwirio ble mae'r cyfeiriad cyrchfan ac yn dod o hyd iddo trwy L3 VNI ar yr ail switsh Leaf;
- Cyn gynted ag y darganfyddir llwybr i'r cyfeiriad cyrchfan, mae Leaf yn pacio'r ffrΓ’m i mewn i bennawd gyda'r L3VNI 99000 angenrheidiol - ac yn ei anfon tuag at yr ail Leaf;
- Mae'r ail switsh Leaf yn derbyn data gan L3VNI 99000. Mae'n cymryd y ffrΓ’m wreiddiol ac yn ei drosglwyddo i'r L2VNI 20000 gofynnol ac yna i VLAN 20.
O ganlyniad i'r gwaith hwn, mae L3VNI yn dileu'r angen i gadw gwybodaeth am yr holl VNIs sydd ar y rhwydwaith ar bob switsh Leaf.
O ganlyniad, pan fyddwn yn anfon traffig o Host-1 i Host-2, mae'r pecyn yn llawn y tu mewn i VxLAN gyda VNI newydd - 99000:

Rhaid aros i weld sut yn union y mae Leaf-1 yn dysgu am y cyfeiriad MAC gan VNI arall. Mae hyn hefyd yn digwydd gan ddefnyddio llwybr EVPN math 2 (MAC/IP).
Mae'r canlynol yn dangos y broses o luosogi llwybr ynghylch rhagddodiad sydd wedi'i leoli mewn VNI arall:

Hynny yw, mae gan gyfeiriadau a dderbyniwyd gan VNI 20000 ddau RT.
Gadewch imi eich atgoffa bod llwybrau a dderbynnir o Update yn dod i ben yn y tabl BGP gyda'r targed Llwybr a nodir yn y gosodiadau VRF (mae'r broses ychydig yn fwy cymhleth, ond ni fyddwn yn ymchwilio i'r erthygl hon).
Mae RT ei hun yn cael ei ffurfio yn Γ΄l y fformiwla: AS: VNI ββ(os defnyddir modd awtomatig).
Enghraifft o ffurfio RT mewn modd awtomatig a llaw:
vrf context PROD
address-family ipv4 unicast
route-target import auto - Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ ΡΠ°Π±ΠΎΡΡ
route-target export 65001:20000 - ΡΡΡΠ½ΠΎΠΉ ΡΠ΅ΠΆΠΈΠΌ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ RT
Mae'r canlyniad uchod yn dangos bod gan ragddodiaid o VNI arall ddau werth RT.
Un ohonynt yw 65001:99000 - VNI L3 ychwanegol. Gan fod y VNI hwn yr un peth ar bob Dail ac yn dod o dan ein rheolau mewnforio yn y gosodiadau VRF, mae'r rhagddodiad yn gorffen yn y tabl BGP, y gellir ei weld o'r allbwn:
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
Os edrychwn yn agosach ar y diweddariad a dderbyniwyd, gallwn weld bod gan y rhagddodiad hwn ddau 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
<......>
Yn y tabl llwybro ar Leaf-1 gallwch hefyd weld y rhagddodiad 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
Wedi sylwi ar absenoldeb y prif ragddodiad 192.168.20.0/24 yn y tabl llwybro?
Mae hynny'n iawn, nid yw yno. Hynny yw, dim ond am y gwesteiwyr sydd ar eich rhwydwaith y mae Leafs o bell yn derbyn gwybodaeth. A dyma'r ymddygiad cywir. Uchod ym mhob diweddariad gallwch weld bod gwybodaeth yn dod gyda chynnwys MAC/IP. Nid oes sΓ΄n am unrhyw ragddodiaid.
Dyma sut mae protocol y Rheolwr Symudedd Gwesteiwr (HMM) yn gweithio, sy'n llenwi'r tabl ARP y mae'r tabl BGP wedyn yn cael ei lenwi ohono (byddwn yn hepgor y broses hon at ddibenion yr erthygl hon). Yn seiliedig ar y wybodaeth a dderbyniwyd gan yr HMM, ffurfir llwybr EVPN math 2 (trosglwyddir gan MAC/IP).
Fodd bynnag, beth os oes angen trosglwyddo gwybodaeth am rhagddodiad?
Ar gyfer y math hwn o wybodaeth, mae llwybr EVPN math 5 - mae'n caniatΓ‘u ichi drosglwyddo rhagddodiaid trwy gyfeiriad-teulu l2vpn evpn (dim ond yn y fersiwn drafft y mae'r math hwn o lwybrau ar adeg ysgrifennu'r adroddiad hwn , oherwydd hyn, gall ymddygiad y math hwn o lwybr fod yn wahanol ymhlith gwneuthurwyr gwahanol)
I drosglwyddo rhagddodiaid, mae angen ychwanegu rhagddodiaid a fydd yn cael eu hysbysebu yn y broses BGP ar gyfer VRF:
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
O ganlyniad, bydd gan y Diweddariad:

Gadewch i ni edrych ar y tabl BGP. Yn ogystal Γ’ llwybr EVPN math 2,3, mae llwybrau math 5 wedi ymddangos, sy'n cynnwys gwybodaeth am rif y rhwydwaith:
<......>
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
<.......>
Ymddangosodd y rhagddodiad hefyd yn y tabl llwybro:
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
Mae hwn yn cloi ail ran y gyfres o erthyglau ar VxLAN EVPN. Yn y rhan nesaf byddwn yn edrych ar opsiynau amrywiol ar gyfer llwybro rhwng VRFs.
Ffynhonnell: hab.com
