Hai Habr. Saya meneruskan siri artikel mengenai teknologi VxLAN EVPN, yang ditulis khusus untuk pelancaran kursus
Pada bahagian terakhir, kami mencapai satu domain siaran yang dibina di atas fabrik rangkaian pada Nexus 9000v. Walau bagaimanapun, ini bukan keseluruhan julat tugas yang perlu diselesaikan dalam rangka kerja rangkaian pusat data. Dan hari ini kita akan mempertimbangkan tugas berikut - penghalaan antara rangkaian atau antara VNI.
Biar saya ingatkan anda bahawa topologi Daun Tulang Belakang digunakan:
Sebagai permulaan, kami akan menganalisis cara penghalaan berlaku dan apakah ciri yang ada padanya.
Untuk pemahaman, mari permudahkan rajah logik dan tambah satu lagi VNI 20000 untuk Host-2. Hasilnya ialah:
Bagaimanakah, dalam kes ini, anda boleh memindahkan trafik dari satu Hos ke Hos yang lain?
Terdapat dua pilihan:
- Simpan maklumat tentang semua VNI pada semua suis Daun, kemudian semua penghalaan akan berlaku pada Daun pertama dalam rangkaian;
- Gunakan khusus - L3 VNI
Cara pertama adalah mudah dan mudah. Memandangkan anda hanya perlu memulakan semua VNI pada semua suis Daun. Walau bagaimanapun, menjalankan beberapa ratus atau beribu-ribu VNI di seluruh Leaf tidak lagi kelihatan seperti tugas yang mudah. Oleh itu, dalam kerja ia digunakan agak jarang.
Kami akan menganalisis kaedah 2, sebagai lebih menarik dan sedikit lebih rumit, tetapi memberikan lebih fleksibiliti dalam menubuhkan kilang.
Mari tambah "PROD" pada topologi VRF. Mari tambahkan antara muka vlan 10 padanya pada pasangan Leaf-11/12 dan antara muka VLAN 20 pada Leaf-21. VLAN 20 dikaitkan dengan 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
Untuk menggunakan L3VNI, anda perlu mencipta VLAN baharu, kaitkan dengan VNI baharu. VNI baharu mestilah sama pada semua Daun yang berminat dengan maklumat VLAN 10 dan 20.
vlan 99
vn-segment 99000
interface nve1
member vni 99000 associate-vrf ! Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ L3 VNI
vrf context PROD
vni 99000 ! ΠΡΠΈΠ²ΡΠ·ΡΠ²Π°Π΅ΠΌ L3 VNI ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ VRF
Hasilnya, rajah akan kelihatan seperti ini:
Ia masih perlu menyelesaikan sedikit - tambah satu lagi antara muka - antara muka vlan 99 dalam VRF PROD
interface Vlan99
no shutdown
vrf member PROD
ip forward ! ΠΠ° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ IP. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΡΡΠ»ΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρ Leaf
Akibatnya, logik untuk menghantar bingkai dari Host-1 ke Host-2 adalah seperti berikut:
- Bingkai yang dihantar oleh Host-1 tiba pada Leaf dalam VLAN 10, yang dikaitkan dengan VNI 10000;
- Leaf menyemak di mana alamat destinasi dan mencarinya melalui L3 VNI pada suis Daun kedua;
- Sebaik sahaja laluan ke alamat destinasi ditemui, Leaf mengemas bingkai ke dalam pengepala dengan L3VNI 99000 yang diperlukan - dan menghantarnya ke arah Leaf kedua;
- Suis Leaf kedua menerima data daripada L3VNI 99000. Dapatkan bingkai asal dan memindahkannya ke L2VNI 20000 yang diperlukan dan kemudian ke VLAN 20.
Hasil daripada kerja ini, L3VNI mengalih keluar keperluan untuk menyimpan maklumat tentang semua VNI yang berada pada rangkaian pada semua suis Daun.
Akibatnya, apabila kami menghantar trafik dari Hos-1 ke Hos-2, paket itu dibungkus di dalam VxLAN dengan VNI baharu - 99000:
Ia masih dapat dilihat bagaimana sebenarnya Leaf-1 mengetahui tentang alamat MAC daripada VNI lain. Ini juga berlaku dengan bantuan jenis laluan EVPN 2 (MAC / IP).
Berikut menunjukkan proses penyebaran laluan tentang awalan yang terletak dalam VNI lain:
Iaitu, alamat yang diterima daripada VNI 20000 mempunyai dua RT.
Biar saya ingatkan anda bahawa laluan yang diterima daripada Kemas Kini jatuh ke dalam jadual BGP dengan sasaran Laluan yang ditentukan dalam tetapan VRF (prosesnya agak rumit, tetapi kami tidak akan pergi ke artikel ini).
RT itu sendiri dibentuk oleh formula: AS:VNI (jika mod automatik digunakan).
Contoh pembentukan RT dalam mod automatik dan manual:
vrf context PROD
address-family ipv4 unicast
route-target import auto - Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ ΡΠ°Π±ΠΎΡΡ
route-target export 65001:20000 - ΡΡΡΠ½ΠΎΠΉ ΡΠ΅ΠΆΠΈΠΌ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ RT
Akibatnya, anda boleh melihat di atas bahawa awalan daripada VNI lain mempunyai dua nilai RT.
Salah satu daripadanya 65001:99000 ialah tambahan L3 VNI. Memandangkan VNI ini adalah sama pada semua Daun dan berada di bawah peraturan import kami dalam tetapan VRF, awalan masuk ke dalam jadual BGP, yang boleh dilihat daripada 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
Jika kita melihat dengan lebih teliti pada kemas kini yang diterima, kita dapat melihat bahawa awalan ini mempunyai dua 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
<......>
Dalam jadual penghalaan pada Leaf-1, anda juga boleh melihat awalan 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
Perhatikan ketiadaan awalan utama 192.168.20.0/24 dalam jadual penghalaan?
Betul, dia tiada di sana. Iaitu, Leafs jauh menerima maklumat hanya tentang hos yang berada di rangkaian anda. Dan ini adalah tingkah laku yang betul. Di atas, dalam semua kemas kini, anda boleh melihat bahawa maklumat disertakan dengan kandungan MAC / IP. Tiada awalan untuk diperkatakan.
Ini ialah protokol Host Mobility Manager (HMM), yang mengisi jadual ARP dari mana jadual BGP diisi selanjutnya (kami akan meninggalkan proses ini dalam rangka kerja artikel ini). Berdasarkan maklumat yang diterima daripada HMM, EVPN jenis laluan 2 dibentuk (dihantar oleh MAC / IP).
Walau bagaimanapun, bagaimana jika terdapat keperluan untuk menyampaikan maklumat tentang awalan?
Untuk jenis maklumat ini, terdapat EVPN route-type 5 - ia membolehkan anda menghantar awalan melalui alamat-family l2vpn evpn (jenis laluan ini pada masa penulisan ini hanya dalam versi draf
Untuk memindahkan awalan, adalah perlu untuk menambah awalan dalam proses BGP untuk VRF, yang akan diiklankan:
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
Akibatnya, Kemas kini akan menjadi:
Mari lihat jadual BGP. Sebagai tambahan kepada jenis laluan EVPN 2,3, laluan jenis 5 telah muncul yang mengandungi maklumat tentang nombor rangkaian:
<......>
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
<.......>
Awalan juga muncul dalam jadual penghalaan:
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
Ini menyimpulkan bahagian kedua siri artikel mengenai VxLAN EVPN. Dalam bahagian seterusnya, kami akan mempertimbangkan pelbagai pilihan untuk penghalaan antara VRF.
Sumber: www.habr.com