5 基于BGP EVPN实现Cisco VxLAN控制层面之MA

2020-04-27  本文已影响0人  小岳_

一、说明

二、拓扑

image.png

三、同VNI内控制层面操作(MAC地址学习过程)

3.1 本端VTEP MAC地址表更新

image.png
Leaf-1# show system internal l2fwder mac | i 6806
*    20    0050.7966.6806   dynamic   00:02:32   F     F     Eth1/3  

3.2 本端VTEP L2RIB更新

Leaf-1# show l2route evpn mac evi 20

Flags -(Rmac):Router MAC (Stt):Static (L):Local (R):Remote (V):vPC link 
(Dup):Duplicate (Spl):Split (Rcv):Recv (AD):Auto-Delete (D):Del Pending
(S):Stale (C):Clear, (Ps):Peer Sync (O):Re-Originated (Nho):NH-Override
(Pf):Permanently-Frozen

Topology    Mac Address    Prod   Flags         Seq No     Next-Hops      
----------- -------------- ------ ------------- ---------- ----------------
20          0050.7966.6806 Local  L,            0          Eth1/3 

Leaf-1# show vlan id 20 vn-segment
VLAN Segment-id
---- -----------
20   10020  
Leaf-1# show system internal l2fwder event-history events | i 6806
    [117] [28237]: l2fwder_dbg_ev, 690 l2fwder_vxlan_mac_update, 886MAC move 005
0.7966.6806 (20) 0x0 -> 0x1a000400
    [117] [28237]: l2fwder_dbg_ev, 690 l2fwder_l2rib_add_delete_local_mac_routes
, 154Adding route  topo-id: 20, macaddr: 0050.7966.6806, nhifindx: 0x1a000400
    [117] [28237]: l2fwder_dbg_ev, 690 l2fwder_l2rib_mac_update, 736MAC move 005
0.7966.6806 (20) 0x0 -> 0x1a000400
    [117] [28581]: l2fwder_construct_and_send_macmv_ntf_per_cookie, 5258 mac 005
0.7966.6806 vlan 20 new if_index = 1a000400, old if_index = 0, is_del=0
    [117] [28237]: l2fwder_dbg_ev, 690 l2fwder_vxlan_mac_update, 886MAC move 005
0.7966.6806 (20) 0x1a000400 -> 0x0
Leaf-1# show interface snmp-ifindex | in Eth1/3
Eth1/3          436208640  (0x1a000400)
Leaf-1# sh system internal l2rib event-history mac | i 6806
[07/12/20 08:12:21.814 UTC 3 29746] Rcvd MAC ROUTE msg: (20, 0050.7966.6806), vn
i 0, admin_dist 0, seq 0, soo 0, 
[07/12/20 08:12:21.863 UTC 8 29746] (20,0050.7966.6806,3):Is local route. is_mac
_remote_at_the_delete: 0
[07/12/20 08:12:21.863 UTC 9 29746] (20,0050.7966.6806,3):MAC route created with
 seq 0, flags L, (), 
[07/12/20 08:12:21.864 UTC a 29746] (20,0050.7966.6806,3): soo 0, peerid 0, pc-i
findex 0
[07/12/20 08:12:21.868 UTC b 29746] (20,0050.7966.6806,3):Encoding MAC best rout
e (ADD, client id 5)
[07/12/20 08:12:21.868 UTC c 29746] (20,0050.7966.6806,3):vni:10020 rt_flags:L, 
admin_dist:6, seq_num:0 ecmp_label:0 soo:0(--)
[07/12/20 08:12:21.868 UTC d 29746] (20,0050.7966.6806,3):res:Regular esi:(F) pe
erid:0 nve_ifhdl:1224736769 mh_pc_ifidx:0 nh_count:1
[07/12/20 08:12:21.868 UTC e 29746] (20,0050.7966.6806,3):NH[0]:Eth1/3

3.3 本端VTEP BGP MAC路由导出

show bgp internal event-history events | i 6806
2020 Jul 13 18:29:01.686511: (default) BRIB: [L2VPN EVPN] Installing prefix 3.3.3.3:32787:[2]:[0]:[0
]:[48]:[0050.7966.6806]:[0]:[0.0.0.0]/112 (local) via 3.3.3.3 label 10020 (0x0/0x0) into BRIB with e
xtcomm Extcommunity: RT:65234:10020 ENCAP:8
2020 Jul 13 18:29:01.686151: EVT: Received from L2RIB MAC route: Add ESI 0000.0000.0000.0000.0000 to
po 10020 mac 0050.7966.6806 flags 0x000002 soo 0 seq 0 reorig: 0
Leaf-1# show bgp l2vpn evpn 0050.7966.6806
BGP routing table information for VRF default, address family L2VPN EVPN
Route Distinguisher: 3.3.3.3:32787    (L2VNI 10020)
BGP routing table entry for [2]:[0]:[0]:[48]:[0050.7966.6806]:[0]:[0.0.0.0]/216, version 8770
Paths: (1 available, best #1)
Flags: (0x000102) (high32 00000000) on xmit-list, is not in l2rib/evpn

  Advertised path-id 1
  Path type: local, path is valid, is best path
  AS-Path: NONE, path locally originated
    3.3.3.3 (metric 0) from 0.0.0.0 (3.3.3.3)
      Origin IGP, MED not set, localpref 100, weight 32768
      Received label 10020
      Extcommunity: RT:65234:10020 ENCAP:8

  Path-id 1 advertised to peers:
    1.1.1.1            2.2.2.2  

注:此处省略了MAC-IP条目信息。
MAC路由信息 说明 备注
RD 3.3.3.3:32787 /
2 BGP EVPN Route Type 2 /
0 Ethernet Segment Identifier(ESI),全部为0=单宿主站点 /
0 Ethernet Tag ID,EVPN路由必须为0 /
48 MAC地址长度 /
0050.7966.6806 PC1的MAC地址 /
0 IP地址长度 /
0.0.0.0 携带的IP地址 /
/216 MAC VRF NLRI长度(单位:bit):RD(64bit)+MAC地址(48bit)+ L2VNI ID(24bit)+ ESI(80bit)=216bit /

3.4 远端VTEP BGP AFI L2EVPN MAC路由导入

sh bgp internal event-history events | i 6806
2020 Jul 13 12:07:44.519030: (default) RIB: [L2VPN EVPN]: Send to L2RIB 4.4.4.4:32787:[2]:[0]:[0]:[4
8]:[0050.7966.6806]:[0]:[0.0.0.0]/112
2020 Jul 13 12:07:44.518665: (default) RIB: [L2VPN EVPN] For 4.4.4.4:32787:[2]:[0]:[0]:[48]:[0050.79
66.6806]:[0]:[0.0.0.0]/112, added 1 next hops, suppress 0
2020 Jul 13 12:07:44.518644: (default) RIB: [L2VPN EVPN] Adding 4.4.4.4:32787:[2]:[0]:[0]:[48]:[0050
.7966.6806]:[0]:[0.0.0.0]/112 via 3.3.3.3 to NH list (flags2: 0x0)
2020 Jul 13 12:07:44.518614: (default) RIB: [L2VPN EVPN] Add/delete 4.4.4.4:32787:[2]:[0]:[0]:[48]:[
0050.7966.6806]:[0]:[0.0.0.0]/112, flags=0x200, in_rib: no
2020 Jul 13 12:07:44.518323: (default) IMP: [L2VPN EVPN] Importing prefix 3.3.3.3:32787:[2]:[0]:[0]:
[48]:[0050.7966.6806]:[0]:[0.0.0.0]/112 to <default> RD 4.4.4.4:32787
2020 Jul 13 12:07:44.518256: (default) IMP: [L2VPN EVPN] Import of 3.3.3.3:32787:[2]:[0]:[0]:[48]:[0
050.7966.6806]:[0]:[0.0.0.0]/112 (EVI: 0) to RD 4.4.4.4:65534 (0) inhibited, no Type2 for EAD-ES imp
ort
2020 Jul 13 12:07:44.517257: (default) RIB: [L2VPN EVPN] Add/delete 3.3.3.3:32787:[2]:[0]:[0]:[48]:[
0050.7966.6806]:[0]:[0.0.0.0]/112, flags=0x200, evi_ctx invalid, in_rib: no
2020 Jul 13 12:07:44.512130: (default) BRIB: [L2VPN EVPN] (3.3.3.3:32787:[2]:[0]:[0]:[48]:[0050.7966
.6806]:[0]:[0.0.0.0]/112 (1.1.1.1)): returning from bgp_brib_add, reeval=0new_path: 0, change: 0, un
delete: 1, history: 0, force: 0, (pflags=0x40002010) rnh_flag_change 0
2020 Jul 13 12:07:44.511184: (default) BRIB: [L2VPN EVPN] (3.3.3.3:32787:[2]:[0]:[0]:[48]:[0050.7966
.6806]:[0]:[0.0.0.0]/112 (1.1.1.1)): bgp_brib_add: handling nexthop, path->flags2: 0x84000
2020 Jul 13 12:07:44.511159: (default) BRIB: [L2VPN EVPN] Path to 3.3.3.3:32787:[2]:[0]:[0]:[48]:[00
50.7966.6806]:[0]:[0.0.0.0]/112 via 1.1.1.1 was deleted, recover it (pflags=0x40000010)
2020 Jul 13 12:07:44.511125: (default) BRIB: [L2VPN EVPN] Installing prefix 3.3.3.3:32787:[2]:[0]:[0
]:[48]:[0050.7966.6806]:[0]:[0.0.0.0]/112 (1.1.1.1) via 3.3.3.3 label 10020 (0x0/0x0) into BRIB with
 extcomm Extcommunity: RT:65234:10020 ENCAP:8

3.5 远端VTEP上的MAC VRF

Leaf-2# show system internal l2fwder event-history events | i 6806
    [117] [29724]: l2fwder_dbg_ev, 690 l2fwder_l2rib_add_remote_entry, 299Add remote mac entry mac: 0050.7966.6806 vni: 
20 sw_bd 20 vtep ip: 3.3.3.3
    [117] [29724]: l2fwder_dbg_ev, 690 l2fwder_l2rib_msg_cb, 453MAC address: 0050.7966.6806 
Leaf-2# sh system internal l2rib event-history mac | i 6806
[07/12/20 08:12:24.135 UTC 3 29681] Rcvd MAC ROUTE msg: (20, 0050.7966.6806), vni 0, admin_dist 0, seq 0, soo 0, 
[07/12/20 08:12:24.191 UTC 8 29681] (20,0050.7966.6806,5):Setting Recv flag
[07/12/20 08:12:24.191 UTC 9 29681] (20,0050.7966.6806,5):MAC route created with seq 0, flags  (Rcv), 
[07/12/20 08:12:24.191 UTC a 29681] (20,0050.7966.6806,5): soo 0, peerid 0, pc-ifindex 0
[07/12/20 08:12:24.191 UTC b 29681] (20,0050.7966.6806,5):Splitting a MAC/IP route, flags
[07/12/20 08:12:24.191 UTC c 29681] (20,0050.7966.6806):Mobility check for new rte from prod: 5
[07/12/20 08:12:24.192 UTC d 29681] (20,0050.7966.6806):Current non-del-pending route local:no, remote:yes, linked mac-i
p count:0
[07/12/20 08:12:24.192 UTC e 29681] (20,0050.7966.6806):Mobility type: remote-to-remote: 
[07/12/20 08:12:24.192 UTC f 29681] (20,0050.7966.6806): New route ESI: (F), SOO: 0, Seq num: 0Existing route ESI: (F), 
SOO: 0, Seq num: 0 , rt_type: 1
[07/12/20 08:12:24.192 UTC 10 29681] (20,0050.7966.6806,5):Setting Split flag
[07/12/20 08:12:24.192 UTC 11 29681] (20,0050.7966.6806,5):MAC route modified (rc=0) with seq num:0, flags: (SplRcv), so
o:0, peerid:0, MH<truncated>
[07/12/20 08:12:24.193 UTC 12 29681] (20,0050.7966.6806):Bound MAC-IP(172.16.2.1) to MAC, Total MAC-IP linked: 1
[07/12/20 08:12:24.382 UTC 13 29681] (20,0050.7966.6806,5):Encoding MAC route (ADD, client id 0)
[07/12/20 08:12:24.382 UTC 14 29681] (20,0050.7966.6806,5):vni:10020 rt_flags: admin_dist:20, seq_num:0 ecmp_label:0 soo
:0(--)
[07/12/20 08:12:24.382 UTC 15 29681] (20,0050.7966.6806,5):res:Regular esi:(F) peerid:1 nve_ifhdl:1224736769 mh_pc_ifidx
:0 nh_count:1
[07/12/20 08:12:24.382 UTC 16 29681] (20,0050.7966.6806,5):NH[0]:3.3.3.3
Leaf-2# show l2route evpn mac evi 20
Flags -(Rmac):Router MAC (Stt):Static (L):Local (R):Remote (V):vPC link 
(Dup):Duplicate (Spl):Split (Rcv):Recv (AD):Auto-Delete (D):Del Pending
(S):Stale (C):Clear, (Ps):Peer Sync (O):Re-Originated (Nho):NH-Override
(Pf):Permanently-Frozen

Topology    Mac Address    Prod   Flags         Seq No     Next-Hops      
----------- -------------- ------ ------------- ---------- ----------------
20          0050.7966.6806 BGP    SplRcv        0          3.3.3.3 
Leaf-2# sh vlan id 20 vn-segment


VLAN Segment-id
---- -----------
20   10020  

3.6 远端VTEP上的MAC地址表

Leaf-2# show system internal l2fwder mac
Legend: 
        * - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC
        age - seconds since last seen,+ - primary entry using vPC Peer-Link,
        (T) - True, (F) - False, C - ControlPlane MAC
   VLAN     MAC Address      Type      age     Secure NTFY Ports
---------+-----------------+--------+---------+------+----+------------------
*    20    0050.7966.6806    static   -          F     F  (0x47000001) nve-peer1 3.3.3.3 

四、同VNI内数据层面操作

4.1 ARP请求

4.2ARP回复

4.3 IMCP请求

4.4 IMCP回复

image.png

4.5 PC1 ping PC2

PC1> ping  172.16.2.2
84 bytes from 172.16.2.2 icmp_seq=1 ttl=64 time=85.358 ms
84 bytes from 172.16.2.2 icmp_seq=2 ttl=64 time=48.136 ms
84 bytes from 172.16.2.2 icmp_seq=3 ttl=64 time=54.086 ms
84 bytes from 172.16.2.2 icmp_seq=4 ttl=64 time=74.515 ms
84 bytes from 172.16.2.2 icmp_seq=5 ttl=64 time=62.960 ms

五、小结

六、引用参考

膜拜大佬:Toni Pasanen
https://nwktimes.blogspot.com/2018/05/vxlan-part-vii-vxlan-bgp-evpn-control.html

上一篇 下一篇

猜你喜欢

热点阅读