Compare commits
17 Commits
12ad491bf9
...
baa95a33c0
| Author | SHA1 | Date | |
|---|---|---|---|
| baa95a33c0 | |||
| 2e57976c56 | |||
| bd3dbc181c | |||
| 9bb168abe1 | |||
| ae4fd56635 | |||
| ef4211afe5 | |||
| 8a725ab5fe | |||
| 46c68b42bd | |||
| 97fbc1cebe | |||
| cb74dd118f | |||
| f7c44bc0fd | |||
| 2da238e3ae | |||
| ff15e90b5c | |||
| 6e0dcce746 | |||
| 4b4c1852c4 | |||
| d3b3c38ead | |||
| 5e4b39d05d |
@@ -22,19 +22,19 @@ This document provides a step-by-step guide to test the EVPN VXLAN fabric after
|
|||||||
### 1. Check MLAG Status on All Leaf Pairs
|
### 1. Check MLAG Status on All Leaf Pairs
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Leaf Pair 1 (leaf1 & leaf2)
|
# Leaf Pair 1 (dc-leaf1 & dc-leaf2)
|
||||||
ssh admin@clab-arista-evpn-fabric-leaf1 "show mlag detail"
|
ssh admin@clab-arista-evpn-fabric-leaf1 "show mlag detail"
|
||||||
ssh admin@clab-arista-evpn-fabric-leaf2 "show mlag detail"
|
ssh admin@clab-arista-evpn-fabric-leaf2 "show mlag detail"
|
||||||
|
|
||||||
# Leaf Pair 2 (leaf3 & leaf4)
|
# Leaf Pair 2 (dc-leaf3 & dc-leaf4)
|
||||||
ssh admin@clab-arista-evpn-fabric-leaf3 "show mlag detail"
|
ssh admin@clab-arista-evpn-fabric-leaf3 "show mlag detail"
|
||||||
ssh admin@clab-arista-evpn-fabric-leaf4 "show mlag detail"
|
ssh admin@clab-arista-evpn-fabric-leaf4 "show mlag detail"
|
||||||
|
|
||||||
# Leaf Pair 3 (leaf5 & leaf6)
|
# Leaf Pair 3 (dc-leaf5 & dc-leaf6)
|
||||||
ssh admin@clab-arista-evpn-fabric-leaf5 "show mlag detail"
|
ssh admin@clab-arista-evpn-fabric-leaf5 "show mlag detail"
|
||||||
ssh admin@clab-arista-evpn-fabric-leaf6 "show mlag detail"
|
ssh admin@clab-arista-evpn-fabric-leaf6 "show mlag detail"
|
||||||
|
|
||||||
# Leaf Pair 4 (leaf7 & leaf8)
|
# Leaf Pair 4 (dc-leaf7 & dc-leaf8)
|
||||||
ssh admin@clab-arista-evpn-fabric-leaf7 "show mlag detail"
|
ssh admin@clab-arista-evpn-fabric-leaf7 "show mlag detail"
|
||||||
ssh admin@clab-arista-evpn-fabric-leaf8 "show mlag detail"
|
ssh admin@clab-arista-evpn-fabric-leaf8 "show mlag detail"
|
||||||
```
|
```
|
||||||
@@ -69,11 +69,11 @@ ssh admin@clab-arista-evpn-fabric-leaf1 "show bgp evpn summary"
|
|||||||
#### Step 1: Verify Host Network Interfaces
|
#### Step 1: Verify Host Network Interfaces
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Check host1 VLAN interface
|
# Check dc-server1 VLAN interface
|
||||||
docker exec clab-arista-evpn-fabric-host1 ip -d link show bond0.40
|
docker exec clab-arista-evpn-fabric-host1 ip -d link show bond0.40
|
||||||
docker exec clab-arista-evpn-fabric-host1 ip addr show bond0.40
|
docker exec clab-arista-evpn-fabric-host1 ip addr show bond0.40
|
||||||
|
|
||||||
# Check host3 VLAN interface
|
# Check dc-server3 VLAN interface
|
||||||
docker exec clab-arista-evpn-fabric-host3 ip -d link show bond0.40
|
docker exec clab-arista-evpn-fabric-host3 ip -d link show bond0.40
|
||||||
docker exec clab-arista-evpn-fabric-host3 ip addr show bond0.40
|
docker exec clab-arista-evpn-fabric-host3 ip addr show bond0.40
|
||||||
```
|
```
|
||||||
@@ -103,12 +103,12 @@ timeout 10 docker exec clab-arista-evpn-fabric-host1 ping -c 4 10.40.40.103
|
|||||||
# On Leaf1 - check local MAC learning
|
# On Leaf1 - check local MAC learning
|
||||||
ssh admin@clab-arista-evpn-fabric-leaf1 "show mac address-table vlan 40"
|
ssh admin@clab-arista-evpn-fabric-leaf1 "show mac address-table vlan 40"
|
||||||
|
|
||||||
# Expected: MAC from host1 should appear on Port-Channel1
|
# Expected: MAC from dc-server1 should appear on Port-Channel1
|
||||||
|
|
||||||
# On Leaf5 - check MAC learning
|
# On Leaf5 - check MAC learning
|
||||||
ssh admin@clab-arista-evpn-fabric-leaf5 "show mac address-table vlan 40"
|
ssh admin@clab-arista-evpn-fabric-leaf5 "show mac address-table vlan 40"
|
||||||
|
|
||||||
# Expected: MAC from host3 should appear on Port-Channel1
|
# Expected: MAC from dc-server3 should appear on Port-Channel1
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Step 5: Verify VXLAN Learning
|
#### Step 5: Verify VXLAN Learning
|
||||||
@@ -132,8 +132,8 @@ ssh admin@clab-arista-evpn-fabric-leaf1 "show vxlan address-table"
|
|||||||
ssh admin@clab-arista-evpn-fabric-leaf1 "show bgp evpn route-type mac-ip"
|
ssh admin@clab-arista-evpn-fabric-leaf1 "show bgp evpn route-type mac-ip"
|
||||||
|
|
||||||
# Expected:
|
# Expected:
|
||||||
# - Local MAC (host1) with RD 65001:110040
|
# - Local MAC (dc-server1) with RD 65001:110040
|
||||||
# - Remote MAC (host3) with RD 65003:110040 pointing to VTEP 10.0.255.13
|
# - Remote MAC (dc-server3) with RD 65003:110040 pointing to VTEP 10.0.255.13
|
||||||
```
|
```
|
||||||
|
|
||||||
## L3 VXLAN Testing (VRF gold)
|
## L3 VXLAN Testing (VRF gold)
|
||||||
@@ -147,11 +147,11 @@ ssh admin@clab-arista-evpn-fabric-leaf1 "show bgp evpn route-type mac-ip"
|
|||||||
#### Step 1: Verify Host Network Interfaces
|
#### Step 1: Verify Host Network Interfaces
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Check host2 VLAN interface
|
# Check dc-server2 VLAN interface
|
||||||
docker exec clab-arista-evpn-fabric-host2 ip -d link show bond0.34
|
docker exec clab-arista-evpn-fabric-host2 ip -d link show bond0.34
|
||||||
docker exec clab-arista-evpn-fabric-host2 ip addr show bond0.34
|
docker exec clab-arista-evpn-fabric-host2 ip addr show bond0.34
|
||||||
|
|
||||||
# Check host4 VLAN interface
|
# Check dc-server4 VLAN interface
|
||||||
docker exec clab-arista-evpn-fabric-host4 ip -d link show bond0.78
|
docker exec clab-arista-evpn-fabric-host4 ip -d link show bond0.78
|
||||||
docker exec clab-arista-evpn-fabric-host4 ip addr show bond0.78
|
docker exec clab-arista-evpn-fabric-host4 ip addr show bond0.78
|
||||||
```
|
```
|
||||||
|
|||||||
436
README.md
436
README.md
@@ -1,304 +1,366 @@
|
|||||||
# Arista EVPN-VXLAN ContainerLab
|
# Arista EVPN-VXLAN ContainerLab — DC + Core + Campus
|
||||||
|
|
||||||
A production-ready Arista BGP EVPN-VXLAN data center fabric topology using ContainerLab and cEOS.
|
An extended Arista BGP EVPN-VXLAN multi-fabric lab using ContainerLab and cEOS. The topology interconnects a **Data Center fabric** and a **Campus fabric** through a dedicated **Core L3 transit zone**, with a VRF (`gold`) stretched end-to-end across both fabrics.
|
||||||
|
|
||||||
## 🎯 Overview
|
## 🎯 Overview
|
||||||
|
|
||||||
This lab demonstrates a complete 3-tier EVPN-VXLAN data center fabric with:
|
| Zone | Devices |
|
||||||
|
| ------ | --------------------------------------------------------------------------------------- |
|
||||||
|
| DC | 2 spines, 8 leafs (4 MLAG VTEPs), 2 border leafs (MLAG), 4 access switches, 4 hosts |
|
||||||
|
| Core | 2 core routers (iBGP AS 65500, OSPF underlay with BLs, eBGP to DC & Campus BLs) |
|
||||||
|
| Campus | 2 spines, 4 leafs (2 MLAG VTEPs), 2 border leafs (MLAG), 2 access switches, 2 hosts |
|
||||||
|
|
||||||
- **2 Spine switches** (BGP Route Reflectors)
|
Key design choices:
|
||||||
- **8 Leaf switches** forming 4 VTEPs (MLAG pairs)
|
|
||||||
- **4 Access switches** (L2-only, dual-homed to leaf MLAG pairs)
|
- **eBGP** in both fabrics (underlay + EVPN overlay) between spines and leafs / border leafs.
|
||||||
- **BGP EVPN overlay** with L2/L3 VXLAN
|
- **OSPF area 0 + eBGP multi-hop** between each Border Leaf pair and both Core routers (over dot1q subinterfaces: `.100` = default VRF underlay, `.200` = VRF `gold`).
|
||||||
- **MLAG configuration** for high availability
|
- **MLAG** everywhere there is dual-homing at the fabric layers (leaf pairs, border-leaf pairs, access → leafs, and DC host → access).
|
||||||
- **Test hosts** for validation
|
- **Host attachment pattern**:
|
||||||
|
- **DC hosts** (servers) are **dual-homed via LACP** to an access switch — typical DC
|
||||||
|
server redundancy.
|
||||||
|
- **Campus hosts** (user endpoints: PC, phone, printer) are **single-attached** to a
|
||||||
|
Campus access switch via one plain Ethernet link. Redundancy lives at the access-switch
|
||||||
|
layer (the access switch itself is dual-homed via LACP to its leaf MLAG pair), not at
|
||||||
|
the host.
|
||||||
|
- **VRF `gold`** is stretched end-to-end: DC leafs (VLAN 34 / 78) ↔ DC-BL ↔ Core ↔ Campus-BL ↔ Campus leafs (VLAN 60 / 70), all sharing L3 VNI `100001`.
|
||||||
|
- **VLAN 50** remains defined as a campus-local L2 VXLAN stretched between the two Campus VTEPs (infrastructure-only, not wired to any host in the current topology).
|
||||||
|
- **Convention**: L2 VNI = `110000 + vlan_id`, L3 VNI = `100001` for VRF `gold`, RT `1:100001` in both fabrics.
|
||||||
|
|
||||||
## 📐 Topology
|
## 📐 Topology
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
## 🚀 Quick Start
|
## 🚀 Quick Start
|
||||||
|
|
||||||
### Prerequisites
|
### Prerequisites
|
||||||
|
|
||||||
- ContainerLab installed
|
- ContainerLab
|
||||||
- Docker installed
|
- Docker
|
||||||
- Arista cEOS image: `ceos:4.35.0`
|
- Arista cEOS image: `ceos:4.36.0`
|
||||||
|
|
||||||
### Deploy the Lab
|
### Deploy the Lab
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Clone the repository
|
|
||||||
git clone https://gitea.arnodo.fr/Damien/arista-evpn-vxlan-clab.git
|
git clone https://gitea.arnodo.fr/Damien/arista-evpn-vxlan-clab.git
|
||||||
cd arista-evpn-vxlan-clab
|
cd arista-evpn-vxlan-clab
|
||||||
|
|
||||||
# Deploy the topology
|
|
||||||
sudo containerlab deploy -t evpn-lab.clab.yml
|
sudo containerlab deploy -t evpn-lab.clab.yml
|
||||||
|
|
||||||
# Check status
|
|
||||||
sudo containerlab inspect -t evpn-lab.clab.yml
|
sudo containerlab inspect -t evpn-lab.clab.yml
|
||||||
```
|
```
|
||||||
|
|
||||||
### Access Devices
|
### Access Devices
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# SSH to any device (password: admin)
|
# SSH (password: admin) — works for every cEOS node
|
||||||
ssh admin@clab-arista-evpn-fabric-leaf1
|
ssh admin@clab-arista-evpn-fabric-leaf1
|
||||||
|
ssh admin@clab-arista-evpn-fabric-core1
|
||||||
|
ssh admin@clab-arista-evpn-fabric-campus-leaf1
|
||||||
|
|
||||||
# Or use docker exec
|
# Or via docker exec
|
||||||
docker exec -it clab-arista-evpn-fabric-leaf1 Cli
|
docker exec -it clab-arista-evpn-fabric-dc-border-leaf1 Cli
|
||||||
```
|
```
|
||||||
|
|
||||||
## 📋 Configuration Details
|
## 📋 Architecture
|
||||||
|
|
||||||
### AS Numbers
|
### Node Inventory
|
||||||
|
|
||||||
- **Spine**: AS 65000
|
| Zone | Role | Nodes | AS |
|
||||||
- **VTEP1 (Leaf1/2)**: AS 65001
|
| ------ | ----------------------- | ------------------------------------------------------ | ------ |
|
||||||
- **VTEP2 (Leaf3/4)**: AS 65002
|
| DC | Spine | `dc-spine1`, `dc-spine2` | 65000 |
|
||||||
- **VTEP3 (Leaf5/6)**: AS 65003
|
| DC | Leaf VTEP1 (MLAG) | `dc-leaf1`, `dc-leaf2` | 65001 |
|
||||||
- **VTEP4 (Leaf7/8)**: AS 65004
|
| DC | Leaf VTEP2 (MLAG) | `dc-leaf3`, `dc-leaf4` | 65002 |
|
||||||
|
| DC | Leaf VTEP3 (MLAG) | `dc-leaf5`, `dc-leaf6` | 65003 |
|
||||||
|
| DC | Leaf VTEP4 (MLAG) | `dc-leaf7`, `dc-leaf8` | 65004 |
|
||||||
|
| DC | Border Leaf (MLAG) | `dc-border-leaf1`, `dc-border-leaf2` | 65005 |
|
||||||
|
| DC | Access (L2-only) | `dc-access1`-`dc-access4` | — |
|
||||||
|
| DC | Host | `dc-server1`-`dc-server4` | — |
|
||||||
|
| Core | Core router | `core1`, `core2` | 65500 |
|
||||||
|
| Campus | Spine | `campus-spine1`, `campus-spine2` | 66000 |
|
||||||
|
| Campus | Leaf VTEP1 (MLAG) | `campus-leaf1`, `campus-leaf2` | 66001 |
|
||||||
|
| Campus | Leaf VTEP2 (MLAG) | `campus-leaf3`, `campus-leaf4` | 66002 |
|
||||||
|
| Campus | Border Leaf (MLAG) | `campus-border-leaf1`, `campus-border-leaf2` | 66005 |
|
||||||
|
| Campus | Access (L2-only) | `campus-access1`, `campus-access2` | — |
|
||||||
|
| Campus | Host | `campus-host1`, `campus-host2` | — |
|
||||||
|
|
||||||
|
### AS Numbering
|
||||||
|
|
||||||
|
| AS | Role |
|
||||||
|
| ----- | ---------------------------------- |
|
||||||
|
| 65000 | DC Spine |
|
||||||
|
| 65001 | DC VTEP1 (dc-leaf1/2) |
|
||||||
|
| 65002 | DC VTEP2 (dc-leaf3/4) |
|
||||||
|
| 65003 | DC VTEP3 (dc-leaf5/6) |
|
||||||
|
| 65004 | DC VTEP4 (dc-leaf7/8) |
|
||||||
|
| 65005 | DC Border Leaf pair |
|
||||||
|
| 65500 | Core (iBGP between core1 & core2) |
|
||||||
|
| 66000 | Campus Spine |
|
||||||
|
| 66001 | Campus VTEP1 (campus-leaf1/2) |
|
||||||
|
| 66002 | Campus VTEP2 (campus-leaf3/4) |
|
||||||
|
| 66005 | Campus Border Leaf pair |
|
||||||
|
|
||||||
### Access Switches
|
### Access Switches
|
||||||
|
|
||||||
| Access Switch | Uplink Leaf Pair | VLAN(s) | Connected Host |
|
| Access Switch | Uplink Pair | VLANs | Host | Host attachment |
|
||||||
| ------------- | ---------------- | ------- | -------------- |
|
| --------------- | ------------------------ | -------- | -------------- | ------------------------- |
|
||||||
| access1 | Leaf1/2 (VTEP1) | 40 | host1 |
|
| dc-access1 | dc-leaf1/2 (VTEP1) | 40 | dc-server1 | LACP Po1 (dual-homed) |
|
||||||
| access2 | Leaf3/4 (VTEP2) | 34 | host2 |
|
| dc-access2 | dc-leaf3/4 (VTEP2) | 34 | dc-server2 | LACP Po1 (dual-homed) |
|
||||||
| access3 | Leaf5/6 (VTEP3) | 40 | host3 |
|
| dc-access3 | dc-leaf5/6 (VTEP3) | 40 | dc-server3 | LACP Po1 (dual-homed) |
|
||||||
| access4 | Leaf7/8 (VTEP4) | 78 | host4 |
|
| dc-access4 | dc-leaf7/8 (VTEP4) | 78 | dc-server4 | LACP Po1 (dual-homed) |
|
||||||
|
| campus-access1 | campus-leaf1/2 (VTEP1) | 60 | campus-host1 | access port (single link) |
|
||||||
|
| campus-access2 | campus-leaf3/4 (VTEP2) | 70 | campus-host2 | access port (single link) |
|
||||||
|
|
||||||
- L2-only switches with LACP uplinks (Port-Channel 10) to leaf MLAG pairs
|
All access switches are L2-only, LACP-bonded to their leaf MLAG pair via `Port-Channel10`. MSTP + edge-port BPDU guard.
|
||||||
- Host-facing downlinks via LACP (Port-Channel 1)
|
|
||||||
- STP mode MSTP with edge-port BPDU guard
|
|
||||||
|
|
||||||
### IP Addressing
|
Host-facing ports:
|
||||||
|
|
||||||
#### Management Network
|
- **DC access switches** run a `Port-Channel1` trunk (VLANs allowed per host) for a host
|
||||||
|
dual-homed in LACP (two physical links, one bond on the Linux side).
|
||||||
|
- **Campus access switches** use a plain `Ethernet3` in `switchport mode access` with
|
||||||
|
BPDU guard + portfast — the host connects with a single Ethernet link and no bonding.
|
||||||
|
|
||||||
- Subnet: `172.16.0.0/24`
|
## 🧭 IP Addressing Plan
|
||||||
- Spine1: `172.16.0.1`
|
|
||||||
- Spine2: `172.16.0.2`
|
|
||||||
- Leaf1: `172.16.0.25`, Leaf2: `172.16.0.50`, Leaf3-8: `172.16.0.27-32`
|
|
||||||
- Access1-4: `172.16.0.41-44`
|
|
||||||
|
|
||||||
#### Loopback Interfaces
|
### Management (`172.16.0.0/24`)
|
||||||
|
|
||||||
- **Router-ID Loopbacks (Lo0)**: `10.0.250.0/24`
|
| Node | IP | Node | IP |
|
||||||
- Spine1: `10.0.250.1/32`
|
| ------------------------- | --------------- | ------------------------- | --------------- |
|
||||||
- Spine2: `10.0.250.2/32`
|
| dc-spine1 | 172.16.0.1 | campus-spine1 | 172.16.0.20 |
|
||||||
- Leaf1-8: `10.0.250.11-18/32`
|
| dc-spine2 | 172.16.0.2 | campus-spine2 | 172.16.0.21 |
|
||||||
|
| dc-border-leaf1 | 172.16.0.3 | campus-border-leaf1 | 172.16.0.22 |
|
||||||
|
| dc-border-leaf2 | 172.16.0.4 | campus-border-leaf2 | 172.16.0.23 |
|
||||||
|
| core1 | 172.16.0.10 | campus-leaf1-4 | 172.16.0.51-54 |
|
||||||
|
| core2 | 172.16.0.11 | campus-access1 | 172.16.0.61 |
|
||||||
|
| dc-leaf1 | 172.16.0.25 | campus-access2 | 172.16.0.62 |
|
||||||
|
| dc-leaf2 | 172.16.0.50 | dc-server1-4 | 172.16.0.101-104|
|
||||||
|
| dc-leaf3-8 | 172.16.0.27-32 | campus-host1 | 172.16.0.105 |
|
||||||
|
| dc-access1-4 | 172.16.0.41-44 | campus-host2 | 172.16.0.106 |
|
||||||
|
|
||||||
- **VTEP Loopbacks (Lo1)**: `10.0.255.0/24`
|
Gateway: `172.16.0.254`.
|
||||||
- VTEP1: `10.0.255.11/32`
|
|
||||||
- VTEP2: `10.0.255.12/32`
|
|
||||||
- VTEP3: `10.0.255.13/32`
|
|
||||||
- VTEP4: `10.0.255.14/32`
|
|
||||||
|
|
||||||
#### Underlay P2P Links
|
### Router-ID Loopback0 (`Lo0`)
|
||||||
|
|
||||||
- Spine1 to Leafs: `10.0.1.0/31`, `10.0.1.2/31`, ... `10.0.1.14/31`
|
| Zone | Range | Nodes |
|
||||||
- Spine2 to Leafs: `10.0.2.0/31`, `10.0.2.2/31`, ... `10.0.2.14/31`
|
| ------ | ------------------- | --------------------------------------------------------------------- |
|
||||||
- MLAG iBGP peering: `10.0.3.0/31`, `10.0.3.2/31`, `10.0.3.4/31`, `10.0.3.6/31`
|
| DC | `10.0.250.0/24` | dc-spine1 .1, dc-spine2 .2, dc-leaf1-8 .11-.18, BL-dc1 .21, BL-dc2 .22 |
|
||||||
|
| Core | `10.0.200.0/24` | core1 `10.0.200.1`, core2 `10.0.200.2` |
|
||||||
|
| Campus | `10.1.250.0/24` | campus-spine1 .1, campus-spine2 .2, campus-leaf1-4 .11-.14, BL-campus1 .21, BL-campus2 .22 |
|
||||||
|
|
||||||
#### Host Network Addressing
|
### VTEP Loopback1 (`Lo1`) — shared per MLAG pair
|
||||||
|
|
||||||
| Host | VLAN | VRF | IP Address | Gateway | Type |
|
| Fabric | VTEP | Address | Leafs |
|
||||||
| ----- | ---- | ------- | --------------- | ---------- | -------- |
|
| ------ | ------ | --------------- | ---------------------- |
|
||||||
| host1 | 40 | default | 10.40.40.101/24 | - | L2 VXLAN |
|
| DC | VTEP1 | `10.0.255.11` | dc-leaf1, dc-leaf2 |
|
||||||
| host2 | 34 | gold | 10.34.34.102/24 | 10.34.34.1 | L3 VXLAN |
|
| DC | VTEP2 | `10.0.255.12` | dc-leaf3, dc-leaf4 |
|
||||||
| host3 | 40 | default | 10.40.40.103/24 | - | L2 VXLAN |
|
| DC | VTEP3 | `10.0.255.13` | dc-leaf5, dc-leaf6 |
|
||||||
| host4 | 78 | gold | 10.78.78.104/24 | 10.78.78.1 | L3 VXLAN |
|
| DC | VTEP4 | `10.0.255.14` | dc-leaf7, dc-leaf8 |
|
||||||
|
| DC | BL | `10.0.255.15` | dc-border-leaf1/2 |
|
||||||
|
| Campus | VTEP1 | `10.1.255.11` | campus-leaf1/2 |
|
||||||
|
| Campus | VTEP2 | `10.1.255.12` | campus-leaf3/4 |
|
||||||
|
| Campus | BL | `10.1.255.21` | campus-border-leaf1/2 |
|
||||||
|
|
||||||
**Notes:**
|
### Underlay P2P (`/31`)
|
||||||
|
|
||||||
- Host1 and Host3 are in VLAN 40 (L2 VXLAN only) and can communicate at Layer 2
|
| Segment | Subnets |
|
||||||
- Host2 and Host4 are in VRF "gold" with different subnets, communicating via EVPN Type-5 routes (L3 VXLAN)
|
| -------------------------------- | --------------------------------------- |
|
||||||
- All hosts use LACP bonding (802.3ad) with dual-homing to access switches
|
| DC dc-spine1 ↔ leaf/BL | `10.0.1.0/31` … `10.0.1.18/31` |
|
||||||
- Each access switch is dual-homed via LACP (Port-Channel) to a leaf MLAG pair
|
| DC dc-spine2 ↔ leaf/BL | `10.0.2.0/31` … `10.0.2.18/31` |
|
||||||
|
| DC MLAG iBGP SVIs (per pair) | `10.0.3.0/31`, `.2/31`, `.4/31`, `.6/31`, `.8/31` (BL) |
|
||||||
|
| DC MLAG peer-link SVIs | `10.0.199.240/31` … `10.0.199.246/31` |
|
||||||
|
| DC-BL ↔ Core (default, `.100`) | `10.0.4.0/31` .. `10.0.4.6/31` |
|
||||||
|
| DC-BL ↔ Core (VRF gold, `.200`) | `10.0.14.0/31` .. `10.0.14.6/31` |
|
||||||
|
| Campus-BL ↔ Core (default) | `10.0.5.0/31` .. `10.0.5.6/31` |
|
||||||
|
| Campus-BL ↔ Core (VRF gold) | `10.0.15.0/31` .. `10.0.15.6/31` |
|
||||||
|
| Core1 ↔ Core2 (default) | `10.0.200.128/31` |
|
||||||
|
| Core1 ↔ Core2 (VRF gold) | `10.0.200.130/31` |
|
||||||
|
| Campus dc-spine1 ↔ leaf/BL | `10.1.1.0/31` … `10.1.1.10/31` |
|
||||||
|
| Campus dc-spine2 ↔ leaf/BL | `10.1.2.0/31` … `10.1.2.10/31` |
|
||||||
|
| Campus MLAG iBGP SVIs | `10.1.3.0/31`, `.2/31`, `.4/31` |
|
||||||
|
| Campus MLAG peer-link SVIs | `10.1.199.250/31` … `10.1.199.254/31` |
|
||||||
|
|
||||||
### VXLAN Network Identifiers (VNI)
|
### Host Addressing
|
||||||
|
|
||||||
#### L2 VNI (VLAN to VNI Mapping)
|
| Host | VLAN | VRF | IP / Mask | Gateway | Purpose |
|
||||||
|
| ------------- | ---- | -------- | ----------------- | ------------ | ------------------------------ |
|
||||||
|
| dc-server1 | 40 | default | 10.40.40.101/24 | — | DC L2 stretched (VTEP1↔VTEP3) |
|
||||||
|
| dc-server2 | 34 | gold | 10.34.34.102/24 | 10.34.34.1 | DC L3 VRF gold |
|
||||||
|
| dc-server3 | 40 | default | 10.40.40.103/24 | — | DC L2 stretched |
|
||||||
|
| dc-server4 | 78 | gold | 10.78.78.104/24 | 10.78.78.1 | DC L3 VRF gold |
|
||||||
|
| campus-host1 | 60 | gold | 10.60.60.101/24 | 10.60.60.1 | Campus L3 VRF gold |
|
||||||
|
| campus-host2 | 70 | gold | 10.60.70.102/24 | 10.60.70.1 | Campus L3 VRF gold |
|
||||||
|
|
||||||
| VLAN | Description | VNI | VTEPs | Route Target | Route Distinguisher |
|
> DC hosts are dual-homed in LACP over `bond0` with tagged VLAN sub-interfaces.
|
||||||
| ---- | ------------- | ------ | ------------------------------- | ------------ | -------------------------- |
|
> Campus hosts are single-attached with one untagged `eth1` in a single access VLAN.
|
||||||
| 40 | test-l2-vxlan | 110040 | VTEP1, VTEP3 (Leaf1/2, Leaf5/6) | 40:110040 | 65001:110040, 65003:110040 |
|
|
||||||
|
|
||||||
**L2 VNI Details:**
|
## 🏷️ VXLAN Network Identifiers
|
||||||
|
|
||||||
- VLAN 40 is stretched across VTEP1 (Leaf1/2) and VTEP3 (Leaf5/6) for pure Layer 2 connectivity
|
### L2 VNI Mapping
|
||||||
- Hosts in VLAN 40 (host1 and host3) communicate at Layer 2 across the EVPN fabric
|
|
||||||
- EVPN Type-2 (MAC/IP) routes are used for MAC address learning and distribution
|
|
||||||
|
|
||||||
#### L3 VNI (VRF to VNI Mapping)
|
| VLAN | Description | VNI | Scope | RT |
|
||||||
|
| ---- | ------------------------------ | ------ | ------------------------------------------------------ | ---------- |
|
||||||
|
| 40 | DC L2 VXLAN (stretched) | 110040 | DC VTEP1 (dc-leaf1/2) + VTEP3 (dc-leaf5/6) | 40:110040 |
|
||||||
|
| 50 | Campus L2 VXLAN (stretched) | 110050 | Campus VTEP1 (campus-leaf1/2) + VTEP2 (campus-leaf3/4) | 50:110050 |
|
||||||
|
| 34 | DC VRF gold subnet (local) | 110034 | DC VTEP2 only (anycast GW 10.34.34.1) | 34:110034 |
|
||||||
|
| 78 | DC VRF gold subnet (local) | 110078 | DC VTEP4 only (anycast GW 10.78.78.1) | 78:110078 |
|
||||||
|
| 60 | Campus VRF gold subnet (local) | 110060 | Campus VTEP1 only (anycast GW 10.60.60.1) | 60:110060 |
|
||||||
|
| 70 | Campus VRF gold subnet (local) | 110070 | Campus VTEP2 only (anycast GW 10.60.70.1) | 70:110070 |
|
||||||
|
|
||||||
| VRF | Description | VNI | VTEPs | Route Target | VLANs |
|
### L3 VNI Mapping (end-to-end)
|
||||||
| ---- | ------------------------------- | ------ | ------------------------------- | ------------ | ------ |
|
|
||||||
| gold | L3 VRF for inter-subnet routing | 100001 | VTEP2, VTEP4 (Leaf3/4, Leaf7/8) | 1:100001 | 34, 78 |
|
|
||||||
|
|
||||||
**L3 VNI Details:**
|
| VRF | L3 VNI | RT | Scope |
|
||||||
|
| ---- | ------- | ---------- | ----------------------------------------------------- |
|
||||||
|
| gold | 100001 | 1:100001 | DC VTEP2/VTEP4/DC-BL + Campus VTEP1/VTEP2/Campus-BL |
|
||||||
|
|
||||||
- VRF "gold" uses VNI 100001 for Layer 3 VXLAN routing between different subnets
|
VRF `gold` is announced over EVPN Type-5 (IP prefix) inside each fabric, and **stitched by the Core** via eBGP IPv4 unicast in VRF gold (over the `.200` dot1q subinterfaces). L3 VNI `100001` is re-used end-to-end for symmetry; RT `1:100001` is consistent across both fabrics.
|
||||||
- VLAN 34 (10.34.34.0/24) on VTEP2 and VLAN 78 (10.78.78.0/24) on VTEP4 are both in VRF gold
|
|
||||||
- EVPN Type-5 (IP Prefix) routes are used for inter-subnet routing
|
|
||||||
- Each VTEP advertises its local subnets via EVPN, enabling routed connectivity between host2 and host4
|
|
||||||
|
|
||||||
#### VNI Summary
|
### Route Distinguisher Convention
|
||||||
|
|
||||||
| VNI Type | VNI | Purpose | EVPN Route Type |
|
- Leafs / BLs: `rd <Loopback0>:1` for VRF gold; `rd <AS>:<L2_VNI>` per L2 VLAN (e.g. `65001:110040`, `66002:110050`).
|
||||||
| -------- | ------ | ----------------------------- | ------------------ |
|
- Cores: `rd <Loopback0>:100001` for VRF gold (transit only — no EVPN, IPv4 unicast with `redistribute connected`).
|
||||||
| L2 VNI | 110040 | Layer 2 extension for VLAN 40 | Type-2 (MAC/IP) |
|
|
||||||
| L3 VNI | 100001 | Layer 3 routing for VRF gold | Type-5 (IP Prefix) |
|
|
||||||
|
|
||||||
### Features Implemented
|
## 🔀 Control Plane Summary
|
||||||
|
|
||||||
✅ **Underlay**
|
| Segment | Protocol | Notes |
|
||||||
|
| ----------------------------------- | ------------------------------------ | ------------------------------------- |
|
||||||
- BGP IPv4 Unicast
|
| DC spine ↔ leaf/BL underlay | eBGP IPv4 (AS 65000 ↔ 650xx) | `maximum-paths 4 ecmp 64` |
|
||||||
- ECMP with 4 paths
|
| DC spine ↔ leaf/BL overlay | eBGP EVPN via Loopback0, multi-hop 3 | Spines reflect via `ebgp peer-group` |
|
||||||
- eBGP between Spine-Leaf
|
| DC MLAG pair iBGP | iBGP over VLAN 4091 SVI | `next-hop-self` |
|
||||||
- iBGP between MLAG pairs
|
| DC-BL ↔ Core (default) | OSPF area 0 + eBGP AS 65005 ↔ 65500 | on `.100` dot1q subinterface |
|
||||||
|
| DC-BL ↔ Core (VRF gold) | eBGP AS 65005 ↔ 65500 | on `.200` dot1q subinterface |
|
||||||
✅ **Overlay**
|
| Core1 ↔ Core2 (default) | OSPF area 0 + iBGP AS 65500 | via Loopback0 |
|
||||||
|
| Core1 ↔ Core2 (VRF gold) | iBGP AS 65500 | VRF-aware over `.200` subinterface |
|
||||||
- BGP EVPN address family
|
| Campus-BL ↔ Core (default / gold) | OSPF + eBGP AS 66005 ↔ 65500 | same pattern as DC-BL |
|
||||||
- VXLAN data plane
|
| Campus spine ↔ leaf/BL underlay | eBGP IPv4 (AS 66000 ↔ 660xx) | |
|
||||||
- EVPN Type-2 (MAC/IP routes)
|
| Campus spine ↔ leaf/BL overlay | eBGP EVPN via Loopback0, multi-hop 3 | |
|
||||||
- EVPN Type-5 (IP Prefix routes)
|
| Campus MLAG pair iBGP | iBGP over VLAN 4091 SVI | |
|
||||||
|
|
||||||
✅ **High Availability**
|
|
||||||
|
|
||||||
- MLAG dual-homing
|
|
||||||
- Dual-active detection
|
|
||||||
- Anycast VTEP gateway
|
|
||||||
|
|
||||||
## 🧪 Testing & Validation
|
## 🧪 Testing & Validation
|
||||||
|
|
||||||
### Verify BGP EVPN Neighbors
|
### Fabric health
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# On any spine
|
# DC
|
||||||
show bgp evpn summary
|
ssh admin@clab-arista-evpn-fabric-spine1 "show bgp evpn summary"
|
||||||
|
ssh admin@clab-arista-evpn-fabric-leaf3 "show bgp evpn summary"
|
||||||
|
ssh admin@clab-arista-evpn-fabric-dc-border-leaf1 "show bgp evpn summary"
|
||||||
|
|
||||||
# On any leaf
|
# Campus
|
||||||
show bgp evpn summary
|
ssh admin@clab-arista-evpn-fabric-campus-spine1 "show bgp evpn summary"
|
||||||
|
ssh admin@clab-arista-evpn-fabric-campus-leaf1 "show bgp evpn summary"
|
||||||
|
|
||||||
|
# Core transit (no EVPN — IPv4 only)
|
||||||
|
ssh admin@clab-arista-evpn-fabric-core1 "show ip bgp summary"
|
||||||
|
ssh admin@clab-arista-evpn-fabric-core1 "show ip bgp summary vrf gold"
|
||||||
|
ssh admin@clab-arista-evpn-fabric-core1 "show ip ospf neighbor"
|
||||||
```
|
```
|
||||||
|
|
||||||
### Verify VXLAN
|
### VXLAN
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Check VXLAN interface
|
# On any leaf/BL
|
||||||
show interface vxlan1
|
show interface vxlan1
|
||||||
|
|
||||||
# Check remote VTEPs
|
|
||||||
show vxlan vtep
|
show vxlan vtep
|
||||||
|
|
||||||
# Check VXLAN address table
|
|
||||||
show vxlan address-table
|
show vxlan address-table
|
||||||
```
|
```
|
||||||
|
|
||||||
### Verify MLAG
|
### MLAG
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Check MLAG status
|
|
||||||
show mlag
|
show mlag
|
||||||
|
show mlag interfaces detail
|
||||||
# Check MLAG interfaces
|
|
||||||
show mlag interfaces
|
|
||||||
```
|
```
|
||||||
|
|
||||||
### Test Connectivity
|
### Intra-DC connectivity (existing tests)
|
||||||
|
|
||||||
#### L2 VXLAN Testing (VLAN 40)
|
|
||||||
|
|
||||||
Test Layer 2 connectivity between host1 and host3 across the EVPN fabric:
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# From host1 to host3 (same VLAN 40, different VTEPs)
|
# L2 VLAN 40: dc-server1 ↔ dc-server3
|
||||||
docker exec -it clab-arista-evpn-fabric-host1 ping -c 4 10.40.40.103
|
docker exec -it clab-arista-evpn-fabric-host1 ping -c 3 10.40.40.103
|
||||||
|
|
||||||
# Check host1 interface
|
# L3 VRF gold (DC only): dc-server2 ↔ dc-server4
|
||||||
docker exec -it clab-arista-evpn-fabric-host1 ip addr show bond0
|
docker exec -it clab-arista-evpn-fabric-host2 ping -c 3 10.78.78.104
|
||||||
|
|
||||||
# From host3 to host1
|
|
||||||
docker exec -it clab-arista-evpn-fabric-host3 ping -c 4 10.40.40.101
|
|
||||||
```
|
```
|
||||||
|
|
||||||
#### L3 VXLAN Testing (VRF gold)
|
### Intra-Campus connectivity
|
||||||
|
|
||||||
Test Layer 3 connectivity between host2 and host4 in VRF "gold":
|
Campus hosts sit in VRF `gold` — use the L3 test to validate VTEP1↔VTEP2 via campus spines.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# From host2 to host4 (different subnets via EVPN Type-5)
|
# L3 VRF gold (Campus only): campus-host1 ↔ campus-host2
|
||||||
docker exec -it clab-arista-evpn-fabric-host2 ping -c 4 10.78.78.104
|
docker exec -it clab-arista-evpn-fabric-campus-host1 ping -c 3 10.60.70.102
|
||||||
|
docker exec -it clab-arista-evpn-fabric-campus-host2 ping -c 3 10.60.60.101
|
||||||
# From host4 to host2
|
|
||||||
docker exec -it clab-arista-evpn-fabric-host4 ping -c 4 10.34.34.102
|
|
||||||
|
|
||||||
# Check routing table on hosts
|
|
||||||
docker exec -it clab-arista-evpn-fabric-host2 ip route
|
|
||||||
docker exec -it clab-arista-evpn-fabric-host4 ip route
|
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Verify EVPN Routes on Switches
|
> VLAN 50 (stretched L2 VXLAN) is still provisioned on the campus VTEPs as an
|
||||||
|
> infrastructure example but is not wired to any host in the current topology.
|
||||||
|
|
||||||
|
### End-to-end Campus ↔ DC (VRF gold via Core)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Check EVPN Type-2 routes (MAC/IP) - for VLAN 40
|
# campus-host1 (10.60.60.101, VRF gold Campus) → dc-server2 (10.34.34.102, VRF gold DC)
|
||||||
ssh admin@clab-arista-evpn-fabric-leaf1
|
docker exec -it clab-arista-evpn-fabric-campus-host1 ping -c 3 10.34.34.102
|
||||||
show bgp evpn route-type mac-ip
|
|
||||||
|
|
||||||
# Check EVPN Type-5 routes (IP Prefix) - for VRF gold
|
# campus-host2 (10.60.70.102) → dc-server4 (10.78.78.104)
|
||||||
ssh admin@clab-arista-evpn-fabric-leaf3
|
docker exec -it clab-arista-evpn-fabric-campus-host2 ping -c 3 10.78.78.104
|
||||||
show bgp evpn route-type ip-prefix ipv4
|
|
||||||
|
|
||||||
# Verify VXLAN learned MACs
|
# Reverse direction
|
||||||
show vxlan address-table
|
docker exec -it clab-arista-evpn-fabric-host2 ping -c 3 10.60.60.101
|
||||||
|
docker exec -it clab-arista-evpn-fabric-host4 ping -c 3 10.60.70.102
|
||||||
|
|
||||||
# Check MAC addresses learned via EVPN
|
# Traceroute: expected path campus-leaf → campus-BL → core → DC-BL → DC-leaf
|
||||||
show mac address-table
|
docker exec -it clab-arista-evpn-fabric-campus-host1 traceroute 10.34.34.102
|
||||||
|
```
|
||||||
|
|
||||||
|
### Inspect the Core transit path
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Check VRF gold routes on core1 — both DC and Campus prefixes should be present
|
||||||
|
ssh admin@clab-arista-evpn-fabric-core1 "show ip route vrf gold"
|
||||||
|
ssh admin@clab-arista-evpn-fabric-core1 "show ip bgp vrf gold"
|
||||||
|
|
||||||
|
# EVPN Type-5 on DC-BL (imported from DC fabric, redistributed from Core into EVPN)
|
||||||
|
ssh admin@clab-arista-evpn-fabric-dc-border-leaf1 "show bgp evpn route-type ip-prefix ipv4"
|
||||||
|
|
||||||
|
# EVPN Type-5 on Campus-BL
|
||||||
|
ssh admin@clab-arista-evpn-fabric-campus-border-leaf1 "show bgp evpn route-type ip-prefix ipv4"
|
||||||
```
|
```
|
||||||
|
|
||||||
## 📁 Repository Structure
|
## 📁 Repository Structure
|
||||||
|
|
||||||
```
|
```
|
||||||
arista-evpn-vxlan-clab/
|
arista-evpn-vxlan-clab/
|
||||||
├── README.md # This file
|
├── README.md
|
||||||
├── TROUBLESHOOTING.md # Troubleshooting guide
|
├── TROUBLESHOOTING.md
|
||||||
├── END_TO_END_TESTING.md # Testing procedures
|
├── END_TO_END_TESTING.md
|
||||||
├── evpn-lab.clab.yml # ContainerLab topology
|
├── evpn-lab.clab.yml
|
||||||
|
├── evpn-lab.clab.yml.annotations.json
|
||||||
├── assets/
|
├── assets/
|
||||||
│ └── arista-evpn-fabric.svg # Topology diagram
|
│ └── arista-evpn-fabric.svg
|
||||||
├── configs/ # Device configurations
|
├── configs/
|
||||||
│ ├── spine1.cfg
|
│ ├── dc-spine1.cfg, dc-spine2.cfg
|
||||||
│ ├── spine2.cfg
|
│ ├── dc-leaf1.cfg … dc-leaf8.cfg
|
||||||
│ ├── leaf1.cfg through leaf8.cfg
|
│ ├── dc-border-leaf1.cfg, dc-border-leaf2.cfg
|
||||||
│ ├── access1.cfg
|
│ ├── dc-access1.cfg … dc-access4.cfg
|
||||||
│ ├── access2.cfg
|
│ ├── core1.cfg, core2.cfg
|
||||||
│ ├── access3.cfg
|
│ ├── campus-spine1.cfg, campus-spine2.cfg
|
||||||
│ └── access4.cfg
|
│ ├── campus-leaf1.cfg … campus-leaf4.cfg
|
||||||
└── hosts/ # Host interface configurations
|
│ ├── campus-border-leaf1.cfg, campus-border-leaf2.cfg
|
||||||
|
│ └── campus-access1.cfg, campus-access2.cfg
|
||||||
|
└── hosts/
|
||||||
├── README.md
|
├── README.md
|
||||||
├── host1_interfaces
|
├── dc-server1_interfaces … dc-server4_interfaces
|
||||||
├── host2_interfaces
|
├── campus-dc-server1_interfaces
|
||||||
├── host3_interfaces
|
└── campus-dc-server2_interfaces
|
||||||
└── host4_interfaces
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## 🗑️ Cleanup
|
## 🗑️ Cleanup
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Destroy the lab
|
|
||||||
sudo containerlab destroy -t evpn-lab.clab.yml
|
|
||||||
|
|
||||||
# Remove all related containers and networks
|
|
||||||
sudo containerlab destroy -t evpn-lab.clab.yml --cleanup
|
sudo containerlab destroy -t evpn-lab.clab.yml --cleanup
|
||||||
```
|
```
|
||||||
|
|
||||||
## 📚 References
|
## 📚 References
|
||||||
|
|
||||||
- [Original Configuration Guide](https://overlaid.net/2019/01/27/arista-bgp-evpn-configuration-example/)
|
|
||||||
- [Arista EOS Documentation](https://www.arista.com/en/support/product-documentation)
|
- [Arista EOS Documentation](https://www.arista.com/en/support/product-documentation)
|
||||||
- [ContainerLab Documentation](https://containerlab.dev/)
|
- [ContainerLab Documentation](https://containerlab.dev/)
|
||||||
- [RFC 7432 - BGP MPLS-Based Ethernet VPN](https://tools.ietf.org/html/rfc7432)
|
- [RFC 7432 — BGP MPLS-Based Ethernet VPN](https://tools.ietf.org/html/rfc7432)
|
||||||
- [RFC 8365 - A Network Virtualization Overlay Solution Using EVPN](https://tools.ietf.org/html/rfc8365)
|
- [RFC 8365 — A Network Virtualization Overlay Solution Using EVPN](https://tools.ietf.org/html/rfc8365)
|
||||||
|
- [RFC 9135 — Integrated Routing and Bridging in EVPN](https://tools.ietf.org/html/rfc9135)
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ Ethernet11 is up, line protocol is up (connected)
|
|||||||
|
|
||||||
### 2.1 Verify MLAG Peering
|
### 2.1 Verify MLAG Peering
|
||||||
|
|
||||||
**On each MLAG leaf pair (e.g., leaf1/leaf2):**
|
**On each MLAG leaf pair (e.g., dc-leaf1/dc-leaf2):**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# MLAG global status
|
# MLAG global status
|
||||||
@@ -173,7 +173,7 @@ Active Ports: Ethernet1
|
|||||||
local/remote
|
local/remote
|
||||||
mlag desc state local remote status
|
mlag desc state local remote status
|
||||||
------ -------------- ------------- ----------- ------------ ---------------
|
------ -------------- ------------- ----------- ------------ ---------------
|
||||||
1 host1 active-full Po1 Po1 up/up
|
1 dc-server1 active-full Po1 Po1 up/up
|
||||||
```
|
```
|
||||||
|
|
||||||
**Troubleshooting:**
|
**Troubleshooting:**
|
||||||
@@ -528,7 +528,7 @@ Shows which remote VTEP the MAC is behind!
|
|||||||
|
|
||||||
## End-to-End Traffic Flow
|
## End-to-End Traffic Flow
|
||||||
|
|
||||||
### Scenario: host1 (VTEP1) pings host3 (VTEP3) - L2 VXLAN
|
### Scenario: dc-server1 (VTEP1) pings dc-server3 (VTEP3) - L2 VXLAN
|
||||||
|
|
||||||
Both hosts in VLAN 40 (10.40.40.0/24)
|
Both hosts in VLAN 40 (10.40.40.0/24)
|
||||||
|
|
||||||
@@ -536,7 +536,7 @@ Both hosts in VLAN 40 (10.40.40.0/24)
|
|||||||
|
|
||||||
#### Step 1: Host Sends Packet
|
#### Step 1: Host Sends Packet
|
||||||
|
|
||||||
**On host1:**
|
**On dc-server1:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker exec -it clab-arista-evpn-fabric-host1 sh
|
docker exec -it clab-arista-evpn-fabric-host1 sh
|
||||||
@@ -558,9 +558,9 @@ ping 10.40.40.103
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
#### Step 2: Packet Arrives at leaf1 (VTEP1)
|
#### Step 2: Packet Arrives at dc-leaf1 (VTEP1)
|
||||||
|
|
||||||
**On leaf1:**
|
**On dc-leaf1:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Check Port-Channel received the packet
|
# Check Port-Channel received the packet
|
||||||
@@ -569,13 +569,13 @@ show interfaces Port-Channel1 | include packets
|
|||||||
# Check MAC learning
|
# Check MAC learning
|
||||||
show mac address-table dynamic vlan 40
|
show mac address-table dynamic vlan 40
|
||||||
|
|
||||||
# Should see host1's MAC on Po1
|
# Should see dc-server1's MAC on Po1
|
||||||
```
|
```
|
||||||
|
|
||||||
**Traffic flow:**
|
**Traffic flow:**
|
||||||
|
|
||||||
```
|
```
|
||||||
host1:bond0.40 → [802.1Q VLAN 40] → leaf1:Eth1 → Po1
|
dc-server1:bond0.40 → [802.1Q VLAN 40] → dc-leaf1:Eth1 → Po1
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -603,12 +603,12 @@ show vxlan address-table address 00c1.ab00.0033
|
|||||||
**Encapsulation:**
|
**Encapsulation:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Original: [Eth: host1→host3][IP: 10.40.40.101→103][ICMP]
|
Original: [Eth: dc-server1→dc-server3][IP: 10.40.40.101→103][ICMP]
|
||||||
|
|
||||||
VXLAN: [Outer IP: 10.0.255.11→10.0.255.13]
|
VXLAN: [Outer IP: 10.0.255.11→10.0.255.13]
|
||||||
[Outer UDP: src=random, dst=4789]
|
[Outer UDP: src=random, dst=4789]
|
||||||
[VXLAN Header: VNI=110040]
|
[VXLAN Header: VNI=110040]
|
||||||
[Inner Eth: host1→host3][IP: 10.40.40.101→103][ICMP]
|
[Inner Eth: dc-server1→dc-server3][IP: 10.40.40.101→103][ICMP]
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -622,27 +622,27 @@ VXLAN: [Outer IP: 10.0.255.11→10.0.255.13]
|
|||||||
show ip route 10.0.255.13
|
show ip route 10.0.255.13
|
||||||
|
|
||||||
# Output:
|
# Output:
|
||||||
# via 10.0.1.0, Ethernet11 (spine1)
|
# via 10.0.1.0, Ethernet11 (dc-spine1)
|
||||||
# via 10.0.2.0, Ethernet12 (spine2)
|
# via 10.0.2.0, Ethernet12 (dc-spine2)
|
||||||
```
|
```
|
||||||
|
|
||||||
ECMP: Packet can go via spine1 OR spine2!
|
ECMP: Packet can go via dc-spine1 OR dc-spine2!
|
||||||
|
|
||||||
**Spine forwards based on outer IP:**
|
**Spine forwards based on outer IP:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# On spine1
|
# On dc-spine1
|
||||||
show ip route 10.0.255.13
|
show ip route 10.0.255.13
|
||||||
|
|
||||||
# Output:
|
# Output:
|
||||||
# via 10.0.1.5, Ethernet3 (leaf5)
|
# via 10.0.1.5, Ethernet3 (dc-leaf5)
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
#### Step 5: Packet Arrives at leaf5 (VTEP3)
|
#### Step 5: Packet Arrives at dc-leaf5 (VTEP3)
|
||||||
|
|
||||||
**On leaf5:**
|
**On dc-leaf5:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Check VXLAN received the packet
|
# Check VXLAN received the packet
|
||||||
@@ -655,7 +655,7 @@ show interfaces Vxlan1 | include packets
|
|||||||
|
|
||||||
```
|
```
|
||||||
VXLAN packet → Strip outer IP/UDP/VXLAN headers
|
VXLAN packet → Strip outer IP/UDP/VXLAN headers
|
||||||
→ Original frame: [Eth: host1→host3][IP: 10.40.40.101→103][ICMP]
|
→ Original frame: [Eth: dc-server1→dc-server3][IP: 10.40.40.101→103][ICMP]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Leaf5 checks MAC table:**
|
**Leaf5 checks MAC table:**
|
||||||
@@ -669,13 +669,13 @@ show mac address-table address 00c1.ab00.0033
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
#### Step 6: Packet Delivered to host3
|
#### Step 6: Packet Delivered to dc-server3
|
||||||
|
|
||||||
```
|
```
|
||||||
leaf5:Vxlan1 → VLAN 40 → Po1 → Eth1 → host3:bond0.40
|
dc-leaf5:Vxlan1 → VLAN 40 → Po1 → Eth1 → dc-server3:bond0.40
|
||||||
```
|
```
|
||||||
|
|
||||||
**On host3:**
|
**On dc-server3:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker exec -it clab-arista-evpn-fabric-host3 sh
|
docker exec -it clab-arista-evpn-fabric-host3 sh
|
||||||
@@ -693,19 +693,19 @@ ping 10.40.40.101 # Reply should work!
|
|||||||
│ L2 VXLAN Traffic Flow │
|
│ L2 VXLAN Traffic Flow │
|
||||||
└─────────────────────────────────────────────────────────────────┘
|
└─────────────────────────────────────────────────────────────────┘
|
||||||
|
|
||||||
host1 (10.40.40.101) host3 (10.40.40.103)
|
dc-server1 (10.40.40.101) dc-server3 (10.40.40.103)
|
||||||
│ ▲
|
│ ▲
|
||||||
│ 1. Send ping to 10.40.40.103 │
|
│ 1. Send ping to 10.40.40.103 │
|
||||||
│ [VLAN 40 tag] │ 6. Receive reply
|
│ [VLAN 40 tag] │ 6. Receive reply
|
||||||
│ │ [VLAN 40 tag]
|
│ │ [VLAN 40 tag]
|
||||||
▼ │
|
▼ │
|
||||||
leaf1:Po1 leaf5:Po1
|
dc-leaf1:Po1 dc-leaf5:Po1
|
||||||
│ ▲
|
│ ▲
|
||||||
│ 2. MAC lookup: │ 5. MAC lookup:
|
│ 2. MAC lookup: │ 5. MAC lookup:
|
||||||
│ 00c1.ab00.0033 → Vx1 → 10.0.255.13 │ 00c1.ab00.0011 → Vx1
|
│ 00c1.ab00.0033 → Vx1 → 10.0.255.13 │ 00c1.ab00.0011 → Vx1
|
||||||
│ │
|
│ │
|
||||||
▼ │
|
▼ │
|
||||||
leaf1:Vxlan1 leaf5:Vxlan1
|
dc-leaf1:Vxlan1 dc-leaf5:Vxlan1
|
||||||
│ ▲
|
│ ▲
|
||||||
│ 3. VXLAN encap: │ 4. VXLAN decap:
|
│ 3. VXLAN encap: │ 4. VXLAN decap:
|
||||||
│ Outer: 10.0.255.11 → 10.0.255.13 │ Strip outer headers
|
│ Outer: 10.0.255.11 → 10.0.255.13 │ Strip outer headers
|
||||||
@@ -713,7 +713,7 @@ leaf1:Vxlan1 leaf5:Vxlan1
|
|||||||
│ Inner: original frame │
|
│ Inner: original frame │
|
||||||
│ │
|
│ │
|
||||||
▼ │
|
▼ │
|
||||||
leaf1:Eth11 ──────► spine1 ──────► leaf5:Eth11 ──────────┘
|
dc-leaf1:Eth11 ──────► dc-spine1 ──────► dc-leaf5:Eth11 ──────────┘
|
||||||
(underlay BGP routing)
|
(underlay BGP routing)
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -776,7 +776,7 @@ show vxlan address-table vlan 40
|
|||||||
|
|
||||||
**Symptoms:**
|
**Symptoms:**
|
||||||
|
|
||||||
- host2 (10.34.34.102) cannot ping host4 (10.78.78.104)
|
- dc-server2 (10.34.34.102) cannot ping dc-server4 (10.78.78.104)
|
||||||
- Both in VRF gold
|
- Both in VRF gold
|
||||||
|
|
||||||
**Troubleshooting Steps:**
|
**Troubleshooting Steps:**
|
||||||
@@ -956,14 +956,14 @@ show mac address-table count
|
|||||||
**Test L2 VXLAN (VLAN 40):**
|
**Test L2 VXLAN (VLAN 40):**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# On host1
|
# On dc-server1
|
||||||
ping 10.40.40.103 -c 3
|
ping 10.40.40.103 -c 3
|
||||||
|
|
||||||
# On leaf1 (VTEP1)
|
# On dc-leaf1 (VTEP1)
|
||||||
show mac address-table address 00c1.ab00.0033
|
show mac address-table address 00c1.ab00.0033
|
||||||
show vxlan address-table address 00c1.ab00.0033
|
show vxlan address-table address 00c1.ab00.0033
|
||||||
|
|
||||||
# On leaf5 (VTEP3)
|
# On dc-leaf5 (VTEP3)
|
||||||
show mac address-table address 00c1.ab00.0011
|
show mac address-table address 00c1.ab00.0011
|
||||||
show vxlan address-table address 00c1.ab00.0011
|
show vxlan address-table address 00c1.ab00.0011
|
||||||
```
|
```
|
||||||
@@ -971,14 +971,14 @@ show vxlan address-table address 00c1.ab00.0011
|
|||||||
**Test L3 VXLAN (VRF gold):**
|
**Test L3 VXLAN (VRF gold):**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# On host2
|
# On dc-server2
|
||||||
ping 10.78.78.104 -c 3
|
ping 10.78.78.104 -c 3
|
||||||
|
|
||||||
# On leaf3 (VTEP2)
|
# On dc-leaf3 (VTEP2)
|
||||||
show ip route vrf gold 10.78.78.0/24
|
show ip route vrf gold 10.78.78.0/24
|
||||||
show bgp evpn route-type ip-prefix ipv4 10.78.78.0/24
|
show bgp evpn route-type ip-prefix ipv4 10.78.78.0/24
|
||||||
|
|
||||||
# On leaf7 (VTEP4)
|
# On dc-leaf7 (VTEP4)
|
||||||
show ip route vrf gold 10.34.34.0/24
|
show ip route vrf gold 10.34.34.0/24
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 49 KiB |
997
assets/evpn-lab.clab.drawio
Normal file
997
assets/evpn-lab.clab.drawio
Normal file
@@ -0,0 +1,997 @@
|
|||||||
|
<mxfile type="device" compressed="false">
|
||||||
|
<diagram id="Network Topology" name="Network Topology">
|
||||||
|
<mxGraphModel dx="1360" dy="864" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="6275.0" pageHeight="1565.0" math="0" shadow="0" background="none">
|
||||||
|
<root>
|
||||||
|
<mxCell id="0" />
|
||||||
|
<mxCell id="1" parent="0" />
|
||||||
|
<object id="clab-arista-evpn-fabric-dc-spine1" label="dc-spine1">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="4285.0" y="100.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-spine2" label="dc-spine2">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="5365.0" y="100.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-leaf1" label="dc-leaf1">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="3970.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-leaf2" label="dc-leaf2">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="4285.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-leaf3" label="dc-leaf3">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="4600.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-leaf4" label="dc-leaf4">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="4915.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-leaf5" label="dc-leaf5">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="5230.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-leaf6" label="dc-leaf6">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="5545.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-leaf7" label="dc-leaf7">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="5860.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-leaf8" label="dc-leaf8">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="6175.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-border-leaf1" label="dc-border-leaf1">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="3340.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-border-leaf2" label="dc-border-leaf2">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="3655.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-access1" label="dc-access1">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="4105.0" y="1097.5" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-access2" label="dc-access2">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="4735.0" y="1097.5" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-access3" label="dc-access3">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="5365.0" y="1097.5" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-access4" label="dc-access4">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="5995.0" y="1097.5" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-server1" label="dc-server1">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="4105.0" y="1465.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-server2" label="dc-server2">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="4735.0" y="1465.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-server3" label="dc-server3">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="5365.0" y="1465.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-dc-server4" label="dc-server4">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="5995.0" y="1465.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-core1" label="core1">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="2395.0" y="467.5" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-core2" label="core2">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="2890.0" y="467.5" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-campus-spine1" label="campus-spine1">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="505.0" y="100.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-campus-spine2" label="campus-spine2">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="1180.0" y="100.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-campus-border-leaf1" label="campus-border-leaf1">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="1450.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-campus-border-leaf2" label="campus-border-leaf2">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="1765.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-campus-leaf1" label="campus-leaf1">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="100.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-campus-leaf2" label="campus-leaf2">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="415.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-campus-leaf3" label="campus-leaf3">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="775.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-campus-leaf4" label="campus-leaf4">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="1090.0" y="730.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-campus-access1" label="campus-access1">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="325.0" y="1097.5" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-campus-access2" label="campus-access2">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="955.0" y="1097.5" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-campus-host1" label="campus-host1">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="325.0" y="1465.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><object id="clab-arista-evpn-fabric-campus-host2" label="campus-host2">
|
||||||
|
<mxCell style="shape=image;imageAlign=center;imageVerticalAlign=middle;labelPosition=left;align=right;verticalLabelPosition=top;spacingLeft=0;verticalAlign=bottom;spacingTop=0;spacing=0;editableCssRules=\.st[0-2]$;labelBackgroundColor=none;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMjAgMTIwO2VkaXRhYmxlQ3NzUnVsZXM9Lio7IiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgeT0iMHB4IiB4PSIwcHgiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjEiPiYjeGE7PHN0eWxlIHR5cGU9InRleHQvY3NzIj4mI3hhOwkuc3Qwe2ZpbGw6IzAwMTEzNTt9JiN4YTsJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Qye2ZpbGw6I0ZGRkZGRjt9JiN4YTsJLnN0M3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDR7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0NXtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q2e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0N3tmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3Q5e2ZpbGw6I0ZGRkZGRjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDt9JiN4YTsJLnN0MTB7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O30mI3hhOwkuc3QxMXtmaWxsOiMyNjI2MjY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQuMjMzMzt9JiN4YTsJLnN0MTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1taXRlcmxpbWl0OjEwO30mI3hhOwkuc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjQ7fSYjeGE7CS5zdDE0e2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NC4yMzMzO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTsJLnN0MTV7ZmlsbDpub25lO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO30mI3hhOwkuc3QxNntmaWxsOiNGRkZGRkY7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fSYjeGE7CS5zdDE3e2ZpbGw6IzI2MjYyNjtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9JiN4YTsJLnN0MTh7ZmlsbDojRkZGRkZGO3N0cm9rZTojRkZGRkZGO3N0cm9rZS13aWR0aDo0O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDt9JiN4YTs8L3N0eWxlPiYjeGE7PHJlY3QgaGVpZ2h0PSIxMjAiIHdpZHRoPSIxMjAiIGNsYXNzPSJzdDAiLz4mI3hhOzxnPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNzEuNywxOS43VjQ4aDI4IiBjbGFzcz0ic3QxIi8+JiN4YTsJCTxwYXRoIGQ9Ik05MS4yLDM4LjVsNy41LDcuNmMxLjMsMS4zLDEuMywzLjEsMCw0LjNMOTEuMSw1OCIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTIwLDQ3LjhoMjguNHYtMjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTM4LjgsMjguM2w3LjYtNy41YzEuMy0xLjMsMy4xLTEuMyw0LjMsMGw3LjcsNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7CTxnPiYjeGE7CQk8cGF0aCBkPSJNNDgsMTAwLjNWNzJIMjAiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTI4LjUsODEuNUwyMSw3My45Yy0xLjMtMS4zLTEuMy0zLjEsMC00LjNsNy42LTcuNyIgY2xhc3M9InN0MSIvPiYjeGE7CTwvZz4mI3hhOwk8Zz4mI3hhOwkJPHBhdGggZD0iTTEwMCw3MS45SDcxLjZ2MjgiIGNsYXNzPSJzdDEiLz4mI3hhOwkJPHBhdGggZD0iTTgxLjIsOTEuNGwtNy42LDcuNWMtMS4zLDEuMy0zLjEsMS4zLTQuMywwbC03LjctNy42IiBjbGFzcz0ic3QxIi8+JiN4YTsJPC9nPiYjeGE7PC9nPiYjeGE7PC9zdmc+;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="955.0" y="1465.0" width="75" height="75" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth1:clab-arista-evpn-fabric-dc-leaf1:eth11-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth1:clab-arista-evpn-fabric-dc-leaf1:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth1:clab-arista-evpn-fabric-dc-leaf1:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth1:clab-arista-evpn-fabric-dc-leaf1:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth1:clab-arista-evpn-fabric-dc-leaf1:eth11" label="" src_label="eth1" trgt_label="eth11" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth2:clab-arista-evpn-fabric-dc-leaf2:eth11-src" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth2:clab-arista-evpn-fabric-dc-leaf2:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth2:clab-arista-evpn-fabric-dc-leaf2:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth2:clab-arista-evpn-fabric-dc-leaf2:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth2:clab-arista-evpn-fabric-dc-leaf2:eth11" label="" src_label="eth2" trgt_label="eth11" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth3:clab-arista-evpn-fabric-dc-leaf3:eth11-src" value="eth3" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth3:clab-arista-evpn-fabric-dc-leaf3:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth3:clab-arista-evpn-fabric-dc-leaf3:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth3:clab-arista-evpn-fabric-dc-leaf3:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth3:clab-arista-evpn-fabric-dc-leaf3:eth11" label="" src_label="eth3" trgt_label="eth11" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf3">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf3">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth4:clab-arista-evpn-fabric-dc-leaf4:eth11-src" value="eth4" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth4:clab-arista-evpn-fabric-dc-leaf4:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth4:clab-arista-evpn-fabric-dc-leaf4:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth4:clab-arista-evpn-fabric-dc-leaf4:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth4:clab-arista-evpn-fabric-dc-leaf4:eth11" label="" src_label="eth4" trgt_label="eth11" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf4">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf4">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth5:clab-arista-evpn-fabric-dc-leaf5:eth11-src" value="eth5" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth5:clab-arista-evpn-fabric-dc-leaf5:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth5:clab-arista-evpn-fabric-dc-leaf5:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth5:clab-arista-evpn-fabric-dc-leaf5:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth5:clab-arista-evpn-fabric-dc-leaf5:eth11" label="" src_label="eth5" trgt_label="eth11" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf5">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf5">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth6:clab-arista-evpn-fabric-dc-leaf6:eth11-src" value="eth6" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth6:clab-arista-evpn-fabric-dc-leaf6:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth6:clab-arista-evpn-fabric-dc-leaf6:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth6:clab-arista-evpn-fabric-dc-leaf6:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth6:clab-arista-evpn-fabric-dc-leaf6:eth11" label="" src_label="eth6" trgt_label="eth11" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf6">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf6">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth7:clab-arista-evpn-fabric-dc-leaf7:eth11-src" value="eth7" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth7:clab-arista-evpn-fabric-dc-leaf7:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth7:clab-arista-evpn-fabric-dc-leaf7:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth7:clab-arista-evpn-fabric-dc-leaf7:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth7:clab-arista-evpn-fabric-dc-leaf7:eth11" label="" src_label="eth7" trgt_label="eth11" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf7">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf7">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth8:clab-arista-evpn-fabric-dc-leaf8:eth11-src" value="eth8" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth8:clab-arista-evpn-fabric-dc-leaf8:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth8:clab-arista-evpn-fabric-dc-leaf8:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth8:clab-arista-evpn-fabric-dc-leaf8:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth8:clab-arista-evpn-fabric-dc-leaf8:eth11" label="" src_label="eth8" trgt_label="eth11" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf8">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-leaf8">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth9:clab-arista-evpn-fabric-dc-border-leaf1:eth11-src" value="eth9" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth9:clab-arista-evpn-fabric-dc-border-leaf1:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth9:clab-arista-evpn-fabric-dc-border-leaf1:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth9:clab-arista-evpn-fabric-dc-border-leaf1:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth9:clab-arista-evpn-fabric-dc-border-leaf1:eth11" label="" src_label="eth9" trgt_label="eth11" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-border-leaf1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-border-leaf1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth11-src" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine1:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth11" label="" src_label="eth10" trgt_label="eth11" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-border-leaf2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine1" target="clab-arista-evpn-fabric-dc-border-leaf2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth1:clab-arista-evpn-fabric-dc-leaf1:eth12-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth1:clab-arista-evpn-fabric-dc-leaf1:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth1:clab-arista-evpn-fabric-dc-leaf1:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth1:clab-arista-evpn-fabric-dc-leaf1:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth1:clab-arista-evpn-fabric-dc-leaf1:eth12" label="" src_label="eth1" trgt_label="eth12" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth2:clab-arista-evpn-fabric-dc-leaf2:eth12-src" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth2:clab-arista-evpn-fabric-dc-leaf2:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth2:clab-arista-evpn-fabric-dc-leaf2:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth2:clab-arista-evpn-fabric-dc-leaf2:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth2:clab-arista-evpn-fabric-dc-leaf2:eth12" label="" src_label="eth2" trgt_label="eth12" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth3:clab-arista-evpn-fabric-dc-leaf3:eth12-src" value="eth3" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth3:clab-arista-evpn-fabric-dc-leaf3:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth3:clab-arista-evpn-fabric-dc-leaf3:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth3:clab-arista-evpn-fabric-dc-leaf3:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth3:clab-arista-evpn-fabric-dc-leaf3:eth12" label="" src_label="eth3" trgt_label="eth12" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf3">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf3">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth4:clab-arista-evpn-fabric-dc-leaf4:eth12-src" value="eth4" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth4:clab-arista-evpn-fabric-dc-leaf4:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth4:clab-arista-evpn-fabric-dc-leaf4:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth4:clab-arista-evpn-fabric-dc-leaf4:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth4:clab-arista-evpn-fabric-dc-leaf4:eth12" label="" src_label="eth4" trgt_label="eth12" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf4">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf4">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth5:clab-arista-evpn-fabric-dc-leaf5:eth12-src" value="eth5" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth5:clab-arista-evpn-fabric-dc-leaf5:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth5:clab-arista-evpn-fabric-dc-leaf5:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth5:clab-arista-evpn-fabric-dc-leaf5:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth5:clab-arista-evpn-fabric-dc-leaf5:eth12" label="" src_label="eth5" trgt_label="eth12" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf5">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf5">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth6:clab-arista-evpn-fabric-dc-leaf6:eth12-src" value="eth6" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth6:clab-arista-evpn-fabric-dc-leaf6:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth6:clab-arista-evpn-fabric-dc-leaf6:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth6:clab-arista-evpn-fabric-dc-leaf6:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth6:clab-arista-evpn-fabric-dc-leaf6:eth12" label="" src_label="eth6" trgt_label="eth12" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf6">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf6">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth7:clab-arista-evpn-fabric-dc-leaf7:eth12-src" value="eth7" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth7:clab-arista-evpn-fabric-dc-leaf7:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth7:clab-arista-evpn-fabric-dc-leaf7:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth7:clab-arista-evpn-fabric-dc-leaf7:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth7:clab-arista-evpn-fabric-dc-leaf7:eth12" label="" src_label="eth7" trgt_label="eth12" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf7">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf7">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth8:clab-arista-evpn-fabric-dc-leaf8:eth12-src" value="eth8" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth8:clab-arista-evpn-fabric-dc-leaf8:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth8:clab-arista-evpn-fabric-dc-leaf8:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth8:clab-arista-evpn-fabric-dc-leaf8:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth8:clab-arista-evpn-fabric-dc-leaf8:eth12" label="" src_label="eth8" trgt_label="eth12" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf8">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-leaf8">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth9:clab-arista-evpn-fabric-dc-border-leaf1:eth12-src" value="eth9" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth9:clab-arista-evpn-fabric-dc-border-leaf1:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth9:clab-arista-evpn-fabric-dc-border-leaf1:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth9:clab-arista-evpn-fabric-dc-border-leaf1:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth9:clab-arista-evpn-fabric-dc-border-leaf1:eth12" label="" src_label="eth9" trgt_label="eth12" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-border-leaf1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-border-leaf1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth12-src" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-spine2:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth12" label="" src_label="eth10" trgt_label="eth12" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-border-leaf2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-spine2" target="clab-arista-evpn-fabric-dc-border-leaf2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf1:eth10:clab-arista-evpn-fabric-dc-leaf2:eth10-src" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf1:eth10:clab-arista-evpn-fabric-dc-leaf2:eth10">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf1:eth10:clab-arista-evpn-fabric-dc-leaf2:eth10-trgt" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf1:eth10:clab-arista-evpn-fabric-dc-leaf2:eth10">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-leaf1:eth10:clab-arista-evpn-fabric-dc-leaf2:eth10" label="" src_label="eth10" trgt_label="eth10" source="clab-arista-evpn-fabric-dc-leaf1" target="clab-arista-evpn-fabric-dc-leaf2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0.5;exitY=0.5;entryX=0;exitX=1;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-leaf1" target="clab-arista-evpn-fabric-dc-leaf2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf1:eth1:clab-arista-evpn-fabric-dc-access1:eth1-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf1:eth1:clab-arista-evpn-fabric-dc-access1:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf1:eth1:clab-arista-evpn-fabric-dc-access1:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf1:eth1:clab-arista-evpn-fabric-dc-access1:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-leaf1:eth1:clab-arista-evpn-fabric-dc-access1:eth1" label="" src_label="eth1" trgt_label="eth1" source="clab-arista-evpn-fabric-dc-leaf1" target="clab-arista-evpn-fabric-dc-access1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-leaf1" target="clab-arista-evpn-fabric-dc-access1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf2:eth1:clab-arista-evpn-fabric-dc-access1:eth2-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf2:eth1:clab-arista-evpn-fabric-dc-access1:eth2">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf2:eth1:clab-arista-evpn-fabric-dc-access1:eth2-trgt" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf2:eth1:clab-arista-evpn-fabric-dc-access1:eth2">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-leaf2:eth1:clab-arista-evpn-fabric-dc-access1:eth2" label="" src_label="eth1" trgt_label="eth2" source="clab-arista-evpn-fabric-dc-leaf2" target="clab-arista-evpn-fabric-dc-access1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-leaf2" target="clab-arista-evpn-fabric-dc-access1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf3:eth10:clab-arista-evpn-fabric-dc-leaf4:eth10-src" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf3:eth10:clab-arista-evpn-fabric-dc-leaf4:eth10">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf3:eth10:clab-arista-evpn-fabric-dc-leaf4:eth10-trgt" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf3:eth10:clab-arista-evpn-fabric-dc-leaf4:eth10">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-leaf3:eth10:clab-arista-evpn-fabric-dc-leaf4:eth10" label="" src_label="eth10" trgt_label="eth10" source="clab-arista-evpn-fabric-dc-leaf3" target="clab-arista-evpn-fabric-dc-leaf4">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0.5;exitY=0.5;entryX=0;exitX=1;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-leaf3" target="clab-arista-evpn-fabric-dc-leaf4">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf3:eth1:clab-arista-evpn-fabric-dc-access2:eth1-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf3:eth1:clab-arista-evpn-fabric-dc-access2:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf3:eth1:clab-arista-evpn-fabric-dc-access2:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf3:eth1:clab-arista-evpn-fabric-dc-access2:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-leaf3:eth1:clab-arista-evpn-fabric-dc-access2:eth1" label="" src_label="eth1" trgt_label="eth1" source="clab-arista-evpn-fabric-dc-leaf3" target="clab-arista-evpn-fabric-dc-access2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-leaf3" target="clab-arista-evpn-fabric-dc-access2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf4:eth1:clab-arista-evpn-fabric-dc-access2:eth2-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf4:eth1:clab-arista-evpn-fabric-dc-access2:eth2">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf4:eth1:clab-arista-evpn-fabric-dc-access2:eth2-trgt" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf4:eth1:clab-arista-evpn-fabric-dc-access2:eth2">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-leaf4:eth1:clab-arista-evpn-fabric-dc-access2:eth2" label="" src_label="eth1" trgt_label="eth2" source="clab-arista-evpn-fabric-dc-leaf4" target="clab-arista-evpn-fabric-dc-access2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-leaf4" target="clab-arista-evpn-fabric-dc-access2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf5:eth10:clab-arista-evpn-fabric-dc-leaf6:eth10-src" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf5:eth10:clab-arista-evpn-fabric-dc-leaf6:eth10">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf5:eth10:clab-arista-evpn-fabric-dc-leaf6:eth10-trgt" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf5:eth10:clab-arista-evpn-fabric-dc-leaf6:eth10">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-leaf5:eth10:clab-arista-evpn-fabric-dc-leaf6:eth10" label="" src_label="eth10" trgt_label="eth10" source="clab-arista-evpn-fabric-dc-leaf5" target="clab-arista-evpn-fabric-dc-leaf6">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0.5;exitY=0.5;entryX=0;exitX=1;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-leaf5" target="clab-arista-evpn-fabric-dc-leaf6">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf5:eth1:clab-arista-evpn-fabric-dc-access3:eth1-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf5:eth1:clab-arista-evpn-fabric-dc-access3:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf5:eth1:clab-arista-evpn-fabric-dc-access3:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf5:eth1:clab-arista-evpn-fabric-dc-access3:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-leaf5:eth1:clab-arista-evpn-fabric-dc-access3:eth1" label="" src_label="eth1" trgt_label="eth1" source="clab-arista-evpn-fabric-dc-leaf5" target="clab-arista-evpn-fabric-dc-access3">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-leaf5" target="clab-arista-evpn-fabric-dc-access3">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf6:eth1:clab-arista-evpn-fabric-dc-access3:eth2-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf6:eth1:clab-arista-evpn-fabric-dc-access3:eth2">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf6:eth1:clab-arista-evpn-fabric-dc-access3:eth2-trgt" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf6:eth1:clab-arista-evpn-fabric-dc-access3:eth2">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-leaf6:eth1:clab-arista-evpn-fabric-dc-access3:eth2" label="" src_label="eth1" trgt_label="eth2" source="clab-arista-evpn-fabric-dc-leaf6" target="clab-arista-evpn-fabric-dc-access3">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-leaf6" target="clab-arista-evpn-fabric-dc-access3">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf7:eth10:clab-arista-evpn-fabric-dc-leaf8:eth10-src" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf7:eth10:clab-arista-evpn-fabric-dc-leaf8:eth10">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf7:eth10:clab-arista-evpn-fabric-dc-leaf8:eth10-trgt" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf7:eth10:clab-arista-evpn-fabric-dc-leaf8:eth10">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-leaf7:eth10:clab-arista-evpn-fabric-dc-leaf8:eth10" label="" src_label="eth10" trgt_label="eth10" source="clab-arista-evpn-fabric-dc-leaf7" target="clab-arista-evpn-fabric-dc-leaf8">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0.5;exitY=0.5;entryX=0;exitX=1;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-leaf7" target="clab-arista-evpn-fabric-dc-leaf8">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf7:eth1:clab-arista-evpn-fabric-dc-access4:eth1-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf7:eth1:clab-arista-evpn-fabric-dc-access4:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf7:eth1:clab-arista-evpn-fabric-dc-access4:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf7:eth1:clab-arista-evpn-fabric-dc-access4:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-leaf7:eth1:clab-arista-evpn-fabric-dc-access4:eth1" label="" src_label="eth1" trgt_label="eth1" source="clab-arista-evpn-fabric-dc-leaf7" target="clab-arista-evpn-fabric-dc-access4">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-leaf7" target="clab-arista-evpn-fabric-dc-access4">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf8:eth1:clab-arista-evpn-fabric-dc-access4:eth2-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf8:eth1:clab-arista-evpn-fabric-dc-access4:eth2">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-leaf8:eth1:clab-arista-evpn-fabric-dc-access4:eth2-trgt" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-leaf8:eth1:clab-arista-evpn-fabric-dc-access4:eth2">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-leaf8:eth1:clab-arista-evpn-fabric-dc-access4:eth2" label="" src_label="eth1" trgt_label="eth2" source="clab-arista-evpn-fabric-dc-leaf8" target="clab-arista-evpn-fabric-dc-access4">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-leaf8" target="clab-arista-evpn-fabric-dc-access4">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth10-src" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth10">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth10-trgt" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth10">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth10:clab-arista-evpn-fabric-dc-border-leaf2:eth10" label="" src_label="eth10" trgt_label="eth10" source="clab-arista-evpn-fabric-dc-border-leaf1" target="clab-arista-evpn-fabric-dc-border-leaf2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0.5;exitY=0.5;entryX=0;exitX=1;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-border-leaf1" target="clab-arista-evpn-fabric-dc-border-leaf2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth13:clab-arista-evpn-fabric-core1:eth1-src" value="eth13" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth13:clab-arista-evpn-fabric-core1:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth13:clab-arista-evpn-fabric-core1:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth13:clab-arista-evpn-fabric-core1:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth13:clab-arista-evpn-fabric-core1:eth1" label="" src_label="eth13" trgt_label="eth1" source="clab-arista-evpn-fabric-dc-border-leaf1" target="clab-arista-evpn-fabric-core1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=1;exitY=0;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-border-leaf1" target="clab-arista-evpn-fabric-core1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth14:clab-arista-evpn-fabric-core2:eth1-src" value="eth14" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth14:clab-arista-evpn-fabric-core2:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth14:clab-arista-evpn-fabric-core2:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth14:clab-arista-evpn-fabric-core2:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf1:eth14:clab-arista-evpn-fabric-core2:eth1" label="" src_label="eth14" trgt_label="eth1" source="clab-arista-evpn-fabric-dc-border-leaf1" target="clab-arista-evpn-fabric-core2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=1;exitY=0;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-border-leaf1" target="clab-arista-evpn-fabric-core2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf2:eth13:clab-arista-evpn-fabric-core1:eth2-src" value="eth13" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-border-leaf2:eth13:clab-arista-evpn-fabric-core1:eth2">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf2:eth13:clab-arista-evpn-fabric-core1:eth2-trgt" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-border-leaf2:eth13:clab-arista-evpn-fabric-core1:eth2">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf2:eth13:clab-arista-evpn-fabric-core1:eth2" label="" src_label="eth13" trgt_label="eth2" source="clab-arista-evpn-fabric-dc-border-leaf2" target="clab-arista-evpn-fabric-core1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=1;exitY=0;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-border-leaf2" target="clab-arista-evpn-fabric-core1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf2:eth14:clab-arista-evpn-fabric-core2:eth2-src" value="eth14" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-border-leaf2:eth14:clab-arista-evpn-fabric-core2:eth2">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf2:eth14:clab-arista-evpn-fabric-core2:eth2-trgt" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-border-leaf2:eth14:clab-arista-evpn-fabric-core2:eth2">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-border-leaf2:eth14:clab-arista-evpn-fabric-core2:eth2" label="" src_label="eth14" trgt_label="eth2" source="clab-arista-evpn-fabric-dc-border-leaf2" target="clab-arista-evpn-fabric-core2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=1;exitY=0;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-border-leaf2" target="clab-arista-evpn-fabric-core2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access1:eth3:clab-arista-evpn-fabric-dc-server1:eth1-src" value="eth3" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access1:eth3:clab-arista-evpn-fabric-dc-server1:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access1:eth3:clab-arista-evpn-fabric-dc-server1:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access1:eth3:clab-arista-evpn-fabric-dc-server1:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-access1:eth3:clab-arista-evpn-fabric-dc-server1:eth1" label="" src_label="eth3" trgt_label="eth1" source="clab-arista-evpn-fabric-dc-access1" target="clab-arista-evpn-fabric-dc-server1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-access1" target="clab-arista-evpn-fabric-dc-server1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access1:eth4:clab-arista-evpn-fabric-dc-server1:eth2-src" value="eth4" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access1:eth4:clab-arista-evpn-fabric-dc-server1:eth2">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access1:eth4:clab-arista-evpn-fabric-dc-server1:eth2-trgt" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access1:eth4:clab-arista-evpn-fabric-dc-server1:eth2">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-access1:eth4:clab-arista-evpn-fabric-dc-server1:eth2" label="" src_label="eth4" trgt_label="eth2" source="clab-arista-evpn-fabric-dc-access1" target="clab-arista-evpn-fabric-dc-server1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-access1" target="clab-arista-evpn-fabric-dc-server1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access2:eth3:clab-arista-evpn-fabric-dc-server2:eth1-src" value="eth3" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access2:eth3:clab-arista-evpn-fabric-dc-server2:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access2:eth3:clab-arista-evpn-fabric-dc-server2:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access2:eth3:clab-arista-evpn-fabric-dc-server2:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-access2:eth3:clab-arista-evpn-fabric-dc-server2:eth1" label="" src_label="eth3" trgt_label="eth1" source="clab-arista-evpn-fabric-dc-access2" target="clab-arista-evpn-fabric-dc-server2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-access2" target="clab-arista-evpn-fabric-dc-server2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access2:eth4:clab-arista-evpn-fabric-dc-server2:eth2-src" value="eth4" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access2:eth4:clab-arista-evpn-fabric-dc-server2:eth2">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access2:eth4:clab-arista-evpn-fabric-dc-server2:eth2-trgt" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access2:eth4:clab-arista-evpn-fabric-dc-server2:eth2">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-access2:eth4:clab-arista-evpn-fabric-dc-server2:eth2" label="" src_label="eth4" trgt_label="eth2" source="clab-arista-evpn-fabric-dc-access2" target="clab-arista-evpn-fabric-dc-server2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-access2" target="clab-arista-evpn-fabric-dc-server2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access3:eth3:clab-arista-evpn-fabric-dc-server3:eth1-src" value="eth3" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access3:eth3:clab-arista-evpn-fabric-dc-server3:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access3:eth3:clab-arista-evpn-fabric-dc-server3:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access3:eth3:clab-arista-evpn-fabric-dc-server3:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-access3:eth3:clab-arista-evpn-fabric-dc-server3:eth1" label="" src_label="eth3" trgt_label="eth1" source="clab-arista-evpn-fabric-dc-access3" target="clab-arista-evpn-fabric-dc-server3">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-access3" target="clab-arista-evpn-fabric-dc-server3">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access3:eth4:clab-arista-evpn-fabric-dc-server3:eth2-src" value="eth4" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access3:eth4:clab-arista-evpn-fabric-dc-server3:eth2">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access3:eth4:clab-arista-evpn-fabric-dc-server3:eth2-trgt" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access3:eth4:clab-arista-evpn-fabric-dc-server3:eth2">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-access3:eth4:clab-arista-evpn-fabric-dc-server3:eth2" label="" src_label="eth4" trgt_label="eth2" source="clab-arista-evpn-fabric-dc-access3" target="clab-arista-evpn-fabric-dc-server3">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-access3" target="clab-arista-evpn-fabric-dc-server3">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access4:eth3:clab-arista-evpn-fabric-dc-server4:eth1-src" value="eth3" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access4:eth3:clab-arista-evpn-fabric-dc-server4:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access4:eth3:clab-arista-evpn-fabric-dc-server4:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access4:eth3:clab-arista-evpn-fabric-dc-server4:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-access4:eth3:clab-arista-evpn-fabric-dc-server4:eth1" label="" src_label="eth3" trgt_label="eth1" source="clab-arista-evpn-fabric-dc-access4" target="clab-arista-evpn-fabric-dc-server4">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-access4" target="clab-arista-evpn-fabric-dc-server4">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access4:eth4:clab-arista-evpn-fabric-dc-server4:eth2-src" value="eth4" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access4:eth4:clab-arista-evpn-fabric-dc-server4:eth2">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-dc-access4:eth4:clab-arista-evpn-fabric-dc-server4:eth2-trgt" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-dc-access4:eth4:clab-arista-evpn-fabric-dc-server4:eth2">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-dc-access4:eth4:clab-arista-evpn-fabric-dc-server4:eth2" label="" src_label="eth4" trgt_label="eth2" source="clab-arista-evpn-fabric-dc-access4" target="clab-arista-evpn-fabric-dc-server4">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-dc-access4" target="clab-arista-evpn-fabric-dc-server4">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-core1:eth5:clab-arista-evpn-fabric-core2:eth5-src" value="eth5" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-core1:eth5:clab-arista-evpn-fabric-core2:eth5">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-core1:eth5:clab-arista-evpn-fabric-core2:eth5-trgt" value="eth5" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-core1:eth5:clab-arista-evpn-fabric-core2:eth5">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-core1:eth5:clab-arista-evpn-fabric-core2:eth5" label="" src_label="eth5" trgt_label="eth5" source="clab-arista-evpn-fabric-core1" target="clab-arista-evpn-fabric-core2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0.5;exitY=0.5;entryX=0;exitX=1;" edge="1" parent="1" source="clab-arista-evpn-fabric-core1" target="clab-arista-evpn-fabric-core2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth1:clab-arista-evpn-fabric-campus-leaf1:eth11-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth1:clab-arista-evpn-fabric-campus-leaf1:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth1:clab-arista-evpn-fabric-campus-leaf1:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth1:clab-arista-evpn-fabric-campus-leaf1:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth1:clab-arista-evpn-fabric-campus-leaf1:eth11" label="" src_label="eth1" trgt_label="eth11" source="clab-arista-evpn-fabric-campus-spine1" target="clab-arista-evpn-fabric-campus-leaf1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-spine1" target="clab-arista-evpn-fabric-campus-leaf1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth2:clab-arista-evpn-fabric-campus-leaf2:eth11-src" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth2:clab-arista-evpn-fabric-campus-leaf2:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth2:clab-arista-evpn-fabric-campus-leaf2:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth2:clab-arista-evpn-fabric-campus-leaf2:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth2:clab-arista-evpn-fabric-campus-leaf2:eth11" label="" src_label="eth2" trgt_label="eth11" source="clab-arista-evpn-fabric-campus-spine1" target="clab-arista-evpn-fabric-campus-leaf2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-spine1" target="clab-arista-evpn-fabric-campus-leaf2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth3:clab-arista-evpn-fabric-campus-leaf3:eth11-src" value="eth3" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth3:clab-arista-evpn-fabric-campus-leaf3:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth3:clab-arista-evpn-fabric-campus-leaf3:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth3:clab-arista-evpn-fabric-campus-leaf3:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth3:clab-arista-evpn-fabric-campus-leaf3:eth11" label="" src_label="eth3" trgt_label="eth11" source="clab-arista-evpn-fabric-campus-spine1" target="clab-arista-evpn-fabric-campus-leaf3">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-spine1" target="clab-arista-evpn-fabric-campus-leaf3">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth4:clab-arista-evpn-fabric-campus-leaf4:eth11-src" value="eth4" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth4:clab-arista-evpn-fabric-campus-leaf4:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth4:clab-arista-evpn-fabric-campus-leaf4:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth4:clab-arista-evpn-fabric-campus-leaf4:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth4:clab-arista-evpn-fabric-campus-leaf4:eth11" label="" src_label="eth4" trgt_label="eth11" source="clab-arista-evpn-fabric-campus-spine1" target="clab-arista-evpn-fabric-campus-leaf4">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-spine1" target="clab-arista-evpn-fabric-campus-leaf4">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth5:clab-arista-evpn-fabric-campus-border-leaf1:eth11-src" value="eth5" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth5:clab-arista-evpn-fabric-campus-border-leaf1:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth5:clab-arista-evpn-fabric-campus-border-leaf1:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth5:clab-arista-evpn-fabric-campus-border-leaf1:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth5:clab-arista-evpn-fabric-campus-border-leaf1:eth11" label="" src_label="eth5" trgt_label="eth11" source="clab-arista-evpn-fabric-campus-spine1" target="clab-arista-evpn-fabric-campus-border-leaf1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-spine1" target="clab-arista-evpn-fabric-campus-border-leaf1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth6:clab-arista-evpn-fabric-campus-border-leaf2:eth11-src" value="eth6" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth6:clab-arista-evpn-fabric-campus-border-leaf2:eth11">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth6:clab-arista-evpn-fabric-campus-border-leaf2:eth11-trgt" value="eth11" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth6:clab-arista-evpn-fabric-campus-border-leaf2:eth11">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-spine1:eth6:clab-arista-evpn-fabric-campus-border-leaf2:eth11" label="" src_label="eth6" trgt_label="eth11" source="clab-arista-evpn-fabric-campus-spine1" target="clab-arista-evpn-fabric-campus-border-leaf2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-spine1" target="clab-arista-evpn-fabric-campus-border-leaf2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth1:clab-arista-evpn-fabric-campus-leaf1:eth12-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth1:clab-arista-evpn-fabric-campus-leaf1:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth1:clab-arista-evpn-fabric-campus-leaf1:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth1:clab-arista-evpn-fabric-campus-leaf1:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth1:clab-arista-evpn-fabric-campus-leaf1:eth12" label="" src_label="eth1" trgt_label="eth12" source="clab-arista-evpn-fabric-campus-spine2" target="clab-arista-evpn-fabric-campus-leaf1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-spine2" target="clab-arista-evpn-fabric-campus-leaf1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth2:clab-arista-evpn-fabric-campus-leaf2:eth12-src" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth2:clab-arista-evpn-fabric-campus-leaf2:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth2:clab-arista-evpn-fabric-campus-leaf2:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth2:clab-arista-evpn-fabric-campus-leaf2:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth2:clab-arista-evpn-fabric-campus-leaf2:eth12" label="" src_label="eth2" trgt_label="eth12" source="clab-arista-evpn-fabric-campus-spine2" target="clab-arista-evpn-fabric-campus-leaf2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-spine2" target="clab-arista-evpn-fabric-campus-leaf2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth3:clab-arista-evpn-fabric-campus-leaf3:eth12-src" value="eth3" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth3:clab-arista-evpn-fabric-campus-leaf3:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth3:clab-arista-evpn-fabric-campus-leaf3:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth3:clab-arista-evpn-fabric-campus-leaf3:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth3:clab-arista-evpn-fabric-campus-leaf3:eth12" label="" src_label="eth3" trgt_label="eth12" source="clab-arista-evpn-fabric-campus-spine2" target="clab-arista-evpn-fabric-campus-leaf3">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-spine2" target="clab-arista-evpn-fabric-campus-leaf3">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth4:clab-arista-evpn-fabric-campus-leaf4:eth12-src" value="eth4" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth4:clab-arista-evpn-fabric-campus-leaf4:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth4:clab-arista-evpn-fabric-campus-leaf4:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth4:clab-arista-evpn-fabric-campus-leaf4:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth4:clab-arista-evpn-fabric-campus-leaf4:eth12" label="" src_label="eth4" trgt_label="eth12" source="clab-arista-evpn-fabric-campus-spine2" target="clab-arista-evpn-fabric-campus-leaf4">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-spine2" target="clab-arista-evpn-fabric-campus-leaf4">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth5:clab-arista-evpn-fabric-campus-border-leaf1:eth12-src" value="eth5" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth5:clab-arista-evpn-fabric-campus-border-leaf1:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth5:clab-arista-evpn-fabric-campus-border-leaf1:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth5:clab-arista-evpn-fabric-campus-border-leaf1:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth5:clab-arista-evpn-fabric-campus-border-leaf1:eth12" label="" src_label="eth5" trgt_label="eth12" source="clab-arista-evpn-fabric-campus-spine2" target="clab-arista-evpn-fabric-campus-border-leaf1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-spine2" target="clab-arista-evpn-fabric-campus-border-leaf1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth6:clab-arista-evpn-fabric-campus-border-leaf2:eth12-src" value="eth6" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth6:clab-arista-evpn-fabric-campus-border-leaf2:eth12">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth6:clab-arista-evpn-fabric-campus-border-leaf2:eth12-trgt" value="eth12" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth6:clab-arista-evpn-fabric-campus-border-leaf2:eth12">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-spine2:eth6:clab-arista-evpn-fabric-campus-border-leaf2:eth12" label="" src_label="eth6" trgt_label="eth12" source="clab-arista-evpn-fabric-campus-spine2" target="clab-arista-evpn-fabric-campus-border-leaf2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-spine2" target="clab-arista-evpn-fabric-campus-border-leaf2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth13:clab-arista-evpn-fabric-core1:eth3-src" value="eth13" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth13:clab-arista-evpn-fabric-core1:eth3">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth13:clab-arista-evpn-fabric-core1:eth3-trgt" value="eth3" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth13:clab-arista-evpn-fabric-core1:eth3">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth13:clab-arista-evpn-fabric-core1:eth3" label="" src_label="eth13" trgt_label="eth3" source="clab-arista-evpn-fabric-campus-border-leaf1" target="clab-arista-evpn-fabric-core1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=1;exitY=0;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-border-leaf1" target="clab-arista-evpn-fabric-core1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth14:clab-arista-evpn-fabric-core2:eth3-src" value="eth14" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth14:clab-arista-evpn-fabric-core2:eth3">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth14:clab-arista-evpn-fabric-core2:eth3-trgt" value="eth3" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth14:clab-arista-evpn-fabric-core2:eth3">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth14:clab-arista-evpn-fabric-core2:eth3" label="" src_label="eth14" trgt_label="eth3" source="clab-arista-evpn-fabric-campus-border-leaf1" target="clab-arista-evpn-fabric-core2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=1;exitY=0;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-border-leaf1" target="clab-arista-evpn-fabric-core2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth10:clab-arista-evpn-fabric-campus-border-leaf2:eth10-src" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth10:clab-arista-evpn-fabric-campus-border-leaf2:eth10">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth10:clab-arista-evpn-fabric-campus-border-leaf2:eth10-trgt" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth10:clab-arista-evpn-fabric-campus-border-leaf2:eth10">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf1:eth10:clab-arista-evpn-fabric-campus-border-leaf2:eth10" label="" src_label="eth10" trgt_label="eth10" source="clab-arista-evpn-fabric-campus-border-leaf1" target="clab-arista-evpn-fabric-campus-border-leaf2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0.5;exitY=0.5;entryX=0;exitX=1;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-border-leaf1" target="clab-arista-evpn-fabric-campus-border-leaf2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf2:eth13:clab-arista-evpn-fabric-core1:eth4-src" value="eth13" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-border-leaf2:eth13:clab-arista-evpn-fabric-core1:eth4">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf2:eth13:clab-arista-evpn-fabric-core1:eth4-trgt" value="eth4" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-border-leaf2:eth13:clab-arista-evpn-fabric-core1:eth4">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf2:eth13:clab-arista-evpn-fabric-core1:eth4" label="" src_label="eth13" trgt_label="eth4" source="clab-arista-evpn-fabric-campus-border-leaf2" target="clab-arista-evpn-fabric-core1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=1;exitY=0;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-border-leaf2" target="clab-arista-evpn-fabric-core1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf2:eth14:clab-arista-evpn-fabric-core2:eth4-src" value="eth14" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-border-leaf2:eth14:clab-arista-evpn-fabric-core2:eth4">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf2:eth14:clab-arista-evpn-fabric-core2:eth4-trgt" value="eth4" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-border-leaf2:eth14:clab-arista-evpn-fabric-core2:eth4">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-border-leaf2:eth14:clab-arista-evpn-fabric-core2:eth4" label="" src_label="eth14" trgt_label="eth4" source="clab-arista-evpn-fabric-campus-border-leaf2" target="clab-arista-evpn-fabric-core2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=1;exitY=0;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-border-leaf2" target="clab-arista-evpn-fabric-core2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-leaf1:eth10:clab-arista-evpn-fabric-campus-leaf2:eth10-src" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-leaf1:eth10:clab-arista-evpn-fabric-campus-leaf2:eth10">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-leaf1:eth10:clab-arista-evpn-fabric-campus-leaf2:eth10-trgt" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-leaf1:eth10:clab-arista-evpn-fabric-campus-leaf2:eth10">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-leaf1:eth10:clab-arista-evpn-fabric-campus-leaf2:eth10" label="" src_label="eth10" trgt_label="eth10" source="clab-arista-evpn-fabric-campus-leaf1" target="clab-arista-evpn-fabric-campus-leaf2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0.5;exitY=0.5;entryX=0;exitX=1;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-leaf1" target="clab-arista-evpn-fabric-campus-leaf2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-leaf1:eth1:clab-arista-evpn-fabric-campus-access1:eth1-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-leaf1:eth1:clab-arista-evpn-fabric-campus-access1:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-leaf1:eth1:clab-arista-evpn-fabric-campus-access1:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-leaf1:eth1:clab-arista-evpn-fabric-campus-access1:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-leaf1:eth1:clab-arista-evpn-fabric-campus-access1:eth1" label="" src_label="eth1" trgt_label="eth1" source="clab-arista-evpn-fabric-campus-leaf1" target="clab-arista-evpn-fabric-campus-access1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-leaf1" target="clab-arista-evpn-fabric-campus-access1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-leaf2:eth1:clab-arista-evpn-fabric-campus-access1:eth2-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-leaf2:eth1:clab-arista-evpn-fabric-campus-access1:eth2">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-leaf2:eth1:clab-arista-evpn-fabric-campus-access1:eth2-trgt" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-leaf2:eth1:clab-arista-evpn-fabric-campus-access1:eth2">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-leaf2:eth1:clab-arista-evpn-fabric-campus-access1:eth2" label="" src_label="eth1" trgt_label="eth2" source="clab-arista-evpn-fabric-campus-leaf2" target="clab-arista-evpn-fabric-campus-access1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-leaf2" target="clab-arista-evpn-fabric-campus-access1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-leaf3:eth10:clab-arista-evpn-fabric-campus-leaf4:eth10-src" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-leaf3:eth10:clab-arista-evpn-fabric-campus-leaf4:eth10">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-leaf3:eth10:clab-arista-evpn-fabric-campus-leaf4:eth10-trgt" value="eth10" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-leaf3:eth10:clab-arista-evpn-fabric-campus-leaf4:eth10">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-leaf3:eth10:clab-arista-evpn-fabric-campus-leaf4:eth10" label="" src_label="eth10" trgt_label="eth10" source="clab-arista-evpn-fabric-campus-leaf3" target="clab-arista-evpn-fabric-campus-leaf4">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0.5;exitY=0.5;entryX=0;exitX=1;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-leaf3" target="clab-arista-evpn-fabric-campus-leaf4">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-leaf3:eth1:clab-arista-evpn-fabric-campus-access2:eth1-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-leaf3:eth1:clab-arista-evpn-fabric-campus-access2:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-leaf3:eth1:clab-arista-evpn-fabric-campus-access2:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-leaf3:eth1:clab-arista-evpn-fabric-campus-access2:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-leaf3:eth1:clab-arista-evpn-fabric-campus-access2:eth1" label="" src_label="eth1" trgt_label="eth1" source="clab-arista-evpn-fabric-campus-leaf3" target="clab-arista-evpn-fabric-campus-access2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-leaf3" target="clab-arista-evpn-fabric-campus-access2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-leaf4:eth1:clab-arista-evpn-fabric-campus-access2:eth2-src" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-leaf4:eth1:clab-arista-evpn-fabric-campus-access2:eth2">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-leaf4:eth1:clab-arista-evpn-fabric-campus-access2:eth2-trgt" value="eth2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-leaf4:eth1:clab-arista-evpn-fabric-campus-access2:eth2">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-leaf4:eth1:clab-arista-evpn-fabric-campus-access2:eth2" label="" src_label="eth1" trgt_label="eth2" source="clab-arista-evpn-fabric-campus-leaf4" target="clab-arista-evpn-fabric-campus-access2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-leaf4" target="clab-arista-evpn-fabric-campus-access2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-access1:eth3:clab-arista-evpn-fabric-campus-host1:eth1-src" value="eth3" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-access1:eth3:clab-arista-evpn-fabric-campus-host1:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-access1:eth3:clab-arista-evpn-fabric-campus-host1:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-access1:eth3:clab-arista-evpn-fabric-campus-host1:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-access1:eth3:clab-arista-evpn-fabric-campus-host1:eth1" label="" src_label="eth3" trgt_label="eth1" source="clab-arista-evpn-fabric-campus-access1" target="clab-arista-evpn-fabric-campus-host1">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-access1" target="clab-arista-evpn-fabric-campus-host1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-access2:eth3:clab-arista-evpn-fabric-campus-host2:eth1-src" value="eth3" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-access2:eth3:clab-arista-evpn-fabric-campus-host2:eth1">
|
||||||
|
<mxGeometry x="-0.5" relative="1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><mxCell id="link_id:link:clab-arista-evpn-fabric-campus-access2:eth3:clab-arista-evpn-fabric-campus-host2:eth1-trgt" value="eth1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];;" vertex="1" connectable="0" parent="link_id:link:clab-arista-evpn-fabric-campus-access2:eth3:clab-arista-evpn-fabric-campus-host2:eth1">
|
||||||
|
<mxGeometry x="0.5" relative="-1" as="geometry">
|
||||||
|
<mxPoint as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell><object id="link_id:link:clab-arista-evpn-fabric-campus-access2:eth3:clab-arista-evpn-fabric-campus-host2:eth1" label="" src_label="eth3" trgt_label="eth1" source="clab-arista-evpn-fabric-campus-access2" target="clab-arista-evpn-fabric-campus-host2">
|
||||||
|
<mxCell style="endArrow=none;jumpStyle=gap;entryY=0;exitY=1;entryX=0.5;exitX=0.5;" edge="1" parent="1" source="clab-arista-evpn-fabric-campus-access2" target="clab-arista-evpn-fabric-campus-host2">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</object></root>
|
||||||
|
</mxGraphModel>
|
||||||
|
</diagram></mxfile>
|
||||||
1
assets/evpn-lab.clab.svg
Normal file
1
assets/evpn-lab.clab.svg
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 282 KiB |
56
configs/campus-access1.cfg
Normal file
56
configs/campus-access1.cfg
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
! Campus-Access1 Configuration
|
||||||
|
! L2-only access switch for Campus VTEP1 (campus-leaf1/dc-leaf2)
|
||||||
|
!
|
||||||
|
hostname campus-access1
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! VLANs
|
||||||
|
vlan 60
|
||||||
|
name vrf-gold-campus-subnet1
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.61/24
|
||||||
|
!
|
||||||
|
! Spanning-tree
|
||||||
|
spanning-tree mode mstp
|
||||||
|
spanning-tree edge-port bpduguard default
|
||||||
|
!
|
||||||
|
! Uplink to campus leaf MLAG pair (Port-Channel 10)
|
||||||
|
interface Ethernet1
|
||||||
|
description campus-leaf1-uplink
|
||||||
|
channel-group 10 mode active
|
||||||
|
!
|
||||||
|
interface Ethernet2
|
||||||
|
description campus-leaf2-uplink
|
||||||
|
channel-group 10 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel10
|
||||||
|
description uplink-to-campus-leaf-mlag
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk allowed vlan 60
|
||||||
|
no shutdown
|
||||||
|
!
|
||||||
|
! Host-facing access port (single-attached endpoint in VLAN 60)
|
||||||
|
interface Ethernet3
|
||||||
|
description campus-host1
|
||||||
|
switchport mode access
|
||||||
|
switchport access vlan 60
|
||||||
|
spanning-tree portfast
|
||||||
|
spanning-tree bpduguard enable
|
||||||
|
no shutdown
|
||||||
|
!
|
||||||
|
! Default route for management
|
||||||
|
ip route 0.0.0.0/0 172.16.0.254
|
||||||
|
!
|
||||||
|
end
|
||||||
56
configs/campus-access2.cfg
Normal file
56
configs/campus-access2.cfg
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
! Campus-Access2 Configuration
|
||||||
|
! L2-only access switch for Campus VTEP2 (campus-leaf3/dc-leaf4)
|
||||||
|
!
|
||||||
|
hostname campus-access2
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! VLANs
|
||||||
|
vlan 70
|
||||||
|
name vrf-gold-campus-subnet2
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.62/24
|
||||||
|
!
|
||||||
|
! Spanning-tree
|
||||||
|
spanning-tree mode mstp
|
||||||
|
spanning-tree edge-port bpduguard default
|
||||||
|
!
|
||||||
|
! Uplink to campus leaf MLAG pair (Port-Channel 10)
|
||||||
|
interface Ethernet1
|
||||||
|
description campus-leaf3-uplink
|
||||||
|
channel-group 10 mode active
|
||||||
|
!
|
||||||
|
interface Ethernet2
|
||||||
|
description campus-leaf4-uplink
|
||||||
|
channel-group 10 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel10
|
||||||
|
description uplink-to-campus-leaf-mlag
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk allowed vlan 70
|
||||||
|
no shutdown
|
||||||
|
!
|
||||||
|
! Host-facing access port (single-attached endpoint in VLAN 70)
|
||||||
|
interface Ethernet3
|
||||||
|
description campus-host2
|
||||||
|
switchport mode access
|
||||||
|
switchport access vlan 70
|
||||||
|
spanning-tree portfast
|
||||||
|
spanning-tree bpduguard enable
|
||||||
|
no shutdown
|
||||||
|
!
|
||||||
|
! Default route for management
|
||||||
|
ip route 0.0.0.0/0 172.16.0.254
|
||||||
|
!
|
||||||
|
end
|
||||||
238
configs/campus-border-leaf1.cfg
Normal file
238
configs/campus-border-leaf1.cfg
Normal file
@@ -0,0 +1,238 @@
|
|||||||
|
! Campus-Border-Leaf1 Configuration
|
||||||
|
! Campus Border Leaf - AS 66005 (MLAG pair with campus-border-leaf2)
|
||||||
|
! Provides egress from Campus EVPN-VXLAN fabric to Core L3 network
|
||||||
|
!
|
||||||
|
hostname campus-border-leaf1
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! Enable IP routing
|
||||||
|
ip routing
|
||||||
|
!
|
||||||
|
! Enable routing protocols
|
||||||
|
service routing protocols model multi-agent
|
||||||
|
!
|
||||||
|
! VRF Definition
|
||||||
|
vrf instance gold
|
||||||
|
!
|
||||||
|
! VLANs
|
||||||
|
vlan 4090
|
||||||
|
name mlag-peer
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
vlan 4091
|
||||||
|
name mlag-ibgp
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.22/24
|
||||||
|
!
|
||||||
|
! MLAG Peer-link SVI
|
||||||
|
interface Vlan4090
|
||||||
|
description MLAG Peer-Link
|
||||||
|
ip address 10.1.199.254/31
|
||||||
|
no autostate
|
||||||
|
!
|
||||||
|
! iBGP Peering SVI
|
||||||
|
interface Vlan4091
|
||||||
|
description MLAG iBGP Peering
|
||||||
|
ip address 10.1.3.4/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Loopbacks
|
||||||
|
interface Loopback0
|
||||||
|
description Router-ID
|
||||||
|
ip address 10.1.250.21/32
|
||||||
|
!
|
||||||
|
interface Loopback1
|
||||||
|
description VTEP
|
||||||
|
ip address 10.1.255.21/32
|
||||||
|
!
|
||||||
|
interface Loopback2
|
||||||
|
description VRF-Gold-health
|
||||||
|
vrf gold
|
||||||
|
ip address 10.1.250.221/32
|
||||||
|
!
|
||||||
|
! MLAG Peer-link
|
||||||
|
interface Ethernet10
|
||||||
|
description mlag peer link
|
||||||
|
channel-group 999 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel999
|
||||||
|
description MLAG Peer
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk group mlag-peer
|
||||||
|
spanning-tree link-type point-to-point
|
||||||
|
!
|
||||||
|
! Underlay P2P interfaces to Campus Spines
|
||||||
|
interface Ethernet11
|
||||||
|
description campus-spine1
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.1.9/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet12
|
||||||
|
description campus-spine2
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.2.9/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Uplink to Core1 (subinterfaced: .100 default VRF, .200 VRF gold)
|
||||||
|
interface Ethernet13
|
||||||
|
description core1
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet13.100
|
||||||
|
description core1-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.5.1/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet13.200
|
||||||
|
description core1-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.15.1/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Uplink to Core2
|
||||||
|
interface Ethernet14
|
||||||
|
description core2
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet14.100
|
||||||
|
description core2-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.5.5/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet14.200
|
||||||
|
description core2-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.15.5/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Spanning-tree
|
||||||
|
no spanning-tree vlan 4090
|
||||||
|
no spanning-tree vlan 4091
|
||||||
|
!
|
||||||
|
! Virtual MAC for Anycast Gateway
|
||||||
|
ip virtual-router mac-address c001.cafe.babe
|
||||||
|
!
|
||||||
|
! MLAG Configuration
|
||||||
|
mlag configuration
|
||||||
|
domain-id border-leafs-campus
|
||||||
|
local-interface Vlan4090
|
||||||
|
peer-address 10.1.199.255
|
||||||
|
peer-link Port-Channel999
|
||||||
|
dual-primary detection delay 10 action errdisable all-interfaces
|
||||||
|
peer-address heartbeat 172.16.0.23 vrf mgmt
|
||||||
|
!
|
||||||
|
! VXLAN Interface
|
||||||
|
interface Vxlan1
|
||||||
|
vxlan source-interface Loopback1
|
||||||
|
vxlan udp-port 4789
|
||||||
|
vxlan learn-restrict any
|
||||||
|
vxlan vrf gold vni 100001
|
||||||
|
!
|
||||||
|
! IP Routing
|
||||||
|
ip routing
|
||||||
|
ip routing vrf gold
|
||||||
|
ip route 100.64.0.0/10 172.16.0.254
|
||||||
|
!
|
||||||
|
! OSPF for loopback reachability with Core (default VRF)
|
||||||
|
router ospf 1
|
||||||
|
router-id 10.1.250.21
|
||||||
|
passive-interface default
|
||||||
|
no passive-interface Ethernet13.100
|
||||||
|
no passive-interface Ethernet14.100
|
||||||
|
network 10.1.250.21/32 area 0
|
||||||
|
network 10.0.5.0/31 area 0
|
||||||
|
network 10.0.5.4/31 area 0
|
||||||
|
max-lsa 12000
|
||||||
|
!
|
||||||
|
! BGP Configuration
|
||||||
|
router bgp 66005
|
||||||
|
router-id 10.1.250.21
|
||||||
|
no bgp default ipv4-unicast
|
||||||
|
bgp log-neighbor-changes
|
||||||
|
distance bgp 20 200 200
|
||||||
|
maximum-paths 4 ecmp 64
|
||||||
|
!
|
||||||
|
! Underlay peer-group (to Campus spines)
|
||||||
|
neighbor underlay peer group
|
||||||
|
neighbor underlay remote-as 66000
|
||||||
|
neighbor underlay maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.1.1.8 peer group underlay
|
||||||
|
neighbor 10.1.2.8 peer group underlay
|
||||||
|
!
|
||||||
|
! iBGP peer-group (to MLAG peer)
|
||||||
|
neighbor underlay_ibgp peer group
|
||||||
|
neighbor underlay_ibgp remote-as 66005
|
||||||
|
neighbor underlay_ibgp maximum-routes 12000 warning-only
|
||||||
|
neighbor underlay_ibgp next-hop-self
|
||||||
|
neighbor 10.1.3.5 peer group underlay_ibgp
|
||||||
|
!
|
||||||
|
! EVPN peer-group (to Campus spines)
|
||||||
|
neighbor evpn peer group
|
||||||
|
neighbor evpn remote-as 66000
|
||||||
|
neighbor evpn update-source Loopback0
|
||||||
|
neighbor evpn ebgp-multihop 3
|
||||||
|
neighbor evpn send-community extended
|
||||||
|
neighbor evpn maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.1.250.1 peer group evpn
|
||||||
|
neighbor 10.1.250.2 peer group evpn
|
||||||
|
!
|
||||||
|
! eBGP to Core routers (default VRF)
|
||||||
|
neighbor core peer group
|
||||||
|
neighbor core remote-as 65500
|
||||||
|
neighbor core send-community extended
|
||||||
|
neighbor core maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.5.0 peer group core
|
||||||
|
neighbor 10.0.5.4 peer group core
|
||||||
|
!
|
||||||
|
! IPv4 address family
|
||||||
|
address-family ipv4
|
||||||
|
neighbor underlay activate
|
||||||
|
neighbor underlay_ibgp activate
|
||||||
|
neighbor core activate
|
||||||
|
network 10.1.250.21/32
|
||||||
|
network 10.1.255.21/32
|
||||||
|
!
|
||||||
|
! EVPN address family
|
||||||
|
address-family evpn
|
||||||
|
neighbor evpn activate
|
||||||
|
!
|
||||||
|
! VRF Gold configuration
|
||||||
|
vrf gold
|
||||||
|
rd 10.1.250.21:1
|
||||||
|
route-target import evpn 1:100001
|
||||||
|
route-target export evpn 1:100001
|
||||||
|
router-id 10.1.250.21
|
||||||
|
neighbor 10.0.15.0 remote-as 65500
|
||||||
|
neighbor 10.0.15.0 send-community extended
|
||||||
|
neighbor 10.0.15.0 maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.15.4 remote-as 65500
|
||||||
|
neighbor 10.0.15.4 send-community extended
|
||||||
|
neighbor 10.0.15.4 maximum-routes 12000 warning-only
|
||||||
|
!
|
||||||
|
address-family ipv4
|
||||||
|
neighbor 10.0.15.0 activate
|
||||||
|
neighbor 10.0.15.4 activate
|
||||||
|
!
|
||||||
|
redistribute connected
|
||||||
|
!
|
||||||
|
end
|
||||||
238
configs/campus-border-leaf2.cfg
Normal file
238
configs/campus-border-leaf2.cfg
Normal file
@@ -0,0 +1,238 @@
|
|||||||
|
! Campus-Border-Leaf2 Configuration
|
||||||
|
! Campus Border Leaf - AS 66005 (MLAG pair with campus-border-leaf1)
|
||||||
|
! Provides egress from Campus EVPN-VXLAN fabric to Core L3 network
|
||||||
|
!
|
||||||
|
hostname campus-border-leaf2
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! Enable IP routing
|
||||||
|
ip routing
|
||||||
|
!
|
||||||
|
! Enable routing protocols
|
||||||
|
service routing protocols model multi-agent
|
||||||
|
!
|
||||||
|
! VRF Definition
|
||||||
|
vrf instance gold
|
||||||
|
!
|
||||||
|
! VLANs
|
||||||
|
vlan 4090
|
||||||
|
name mlag-peer
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
vlan 4091
|
||||||
|
name mlag-ibgp
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.23/24
|
||||||
|
!
|
||||||
|
! MLAG Peer-link SVI
|
||||||
|
interface Vlan4090
|
||||||
|
description MLAG Peer-Link
|
||||||
|
ip address 10.1.199.255/31
|
||||||
|
no autostate
|
||||||
|
!
|
||||||
|
! iBGP Peering SVI
|
||||||
|
interface Vlan4091
|
||||||
|
description MLAG iBGP Peering
|
||||||
|
ip address 10.1.3.5/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Loopbacks
|
||||||
|
interface Loopback0
|
||||||
|
description Router-ID
|
||||||
|
ip address 10.1.250.22/32
|
||||||
|
!
|
||||||
|
interface Loopback1
|
||||||
|
description VTEP
|
||||||
|
ip address 10.1.255.21/32
|
||||||
|
!
|
||||||
|
interface Loopback2
|
||||||
|
description VRF-Gold-health
|
||||||
|
vrf gold
|
||||||
|
ip address 10.1.250.222/32
|
||||||
|
!
|
||||||
|
! MLAG Peer-link
|
||||||
|
interface Ethernet10
|
||||||
|
description mlag peer link
|
||||||
|
channel-group 999 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel999
|
||||||
|
description MLAG Peer
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk group mlag-peer
|
||||||
|
spanning-tree link-type point-to-point
|
||||||
|
!
|
||||||
|
! Underlay P2P interfaces to Campus Spines
|
||||||
|
interface Ethernet11
|
||||||
|
description campus-spine1
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.1.11/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet12
|
||||||
|
description campus-spine2
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.2.11/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Uplink to Core1 (subinterfaced: .100 default VRF, .200 VRF gold)
|
||||||
|
interface Ethernet13
|
||||||
|
description core1
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet13.100
|
||||||
|
description core1-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.5.3/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet13.200
|
||||||
|
description core1-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.15.3/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Uplink to Core2
|
||||||
|
interface Ethernet14
|
||||||
|
description core2
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet14.100
|
||||||
|
description core2-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.5.7/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet14.200
|
||||||
|
description core2-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.15.7/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Spanning-tree
|
||||||
|
no spanning-tree vlan 4090
|
||||||
|
no spanning-tree vlan 4091
|
||||||
|
!
|
||||||
|
! Virtual MAC for Anycast Gateway
|
||||||
|
ip virtual-router mac-address c001.cafe.babe
|
||||||
|
!
|
||||||
|
! MLAG Configuration
|
||||||
|
mlag configuration
|
||||||
|
domain-id border-leafs-campus
|
||||||
|
local-interface Vlan4090
|
||||||
|
peer-address 10.1.199.254
|
||||||
|
peer-link Port-Channel999
|
||||||
|
dual-primary detection delay 10 action errdisable all-interfaces
|
||||||
|
peer-address heartbeat 172.16.0.22 vrf mgmt
|
||||||
|
!
|
||||||
|
! VXLAN Interface
|
||||||
|
interface Vxlan1
|
||||||
|
vxlan source-interface Loopback1
|
||||||
|
vxlan udp-port 4789
|
||||||
|
vxlan learn-restrict any
|
||||||
|
vxlan vrf gold vni 100001
|
||||||
|
!
|
||||||
|
! IP Routing
|
||||||
|
ip routing
|
||||||
|
ip routing vrf gold
|
||||||
|
ip route 100.64.0.0/10 172.16.0.254
|
||||||
|
!
|
||||||
|
! OSPF for loopback reachability with Core (default VRF)
|
||||||
|
router ospf 1
|
||||||
|
router-id 10.1.250.22
|
||||||
|
passive-interface default
|
||||||
|
no passive-interface Ethernet13.100
|
||||||
|
no passive-interface Ethernet14.100
|
||||||
|
network 10.1.250.22/32 area 0
|
||||||
|
network 10.0.5.2/31 area 0
|
||||||
|
network 10.0.5.6/31 area 0
|
||||||
|
max-lsa 12000
|
||||||
|
!
|
||||||
|
! BGP Configuration
|
||||||
|
router bgp 66005
|
||||||
|
router-id 10.1.250.22
|
||||||
|
no bgp default ipv4-unicast
|
||||||
|
bgp log-neighbor-changes
|
||||||
|
distance bgp 20 200 200
|
||||||
|
maximum-paths 4 ecmp 64
|
||||||
|
!
|
||||||
|
! Underlay peer-group (to Campus spines)
|
||||||
|
neighbor underlay peer group
|
||||||
|
neighbor underlay remote-as 66000
|
||||||
|
neighbor underlay maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.1.1.10 peer group underlay
|
||||||
|
neighbor 10.1.2.10 peer group underlay
|
||||||
|
!
|
||||||
|
! iBGP peer-group (to MLAG peer)
|
||||||
|
neighbor underlay_ibgp peer group
|
||||||
|
neighbor underlay_ibgp remote-as 66005
|
||||||
|
neighbor underlay_ibgp maximum-routes 12000 warning-only
|
||||||
|
neighbor underlay_ibgp next-hop-self
|
||||||
|
neighbor 10.1.3.4 peer group underlay_ibgp
|
||||||
|
!
|
||||||
|
! EVPN peer-group (to Campus spines)
|
||||||
|
neighbor evpn peer group
|
||||||
|
neighbor evpn remote-as 66000
|
||||||
|
neighbor evpn update-source Loopback0
|
||||||
|
neighbor evpn ebgp-multihop 3
|
||||||
|
neighbor evpn send-community extended
|
||||||
|
neighbor evpn maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.1.250.1 peer group evpn
|
||||||
|
neighbor 10.1.250.2 peer group evpn
|
||||||
|
!
|
||||||
|
! eBGP to Core routers (default VRF)
|
||||||
|
neighbor core peer group
|
||||||
|
neighbor core remote-as 65500
|
||||||
|
neighbor core send-community extended
|
||||||
|
neighbor core maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.5.2 peer group core
|
||||||
|
neighbor 10.0.5.6 peer group core
|
||||||
|
!
|
||||||
|
! IPv4 address family
|
||||||
|
address-family ipv4
|
||||||
|
neighbor underlay activate
|
||||||
|
neighbor underlay_ibgp activate
|
||||||
|
neighbor core activate
|
||||||
|
network 10.1.250.22/32
|
||||||
|
network 10.1.255.21/32
|
||||||
|
!
|
||||||
|
! EVPN address family
|
||||||
|
address-family evpn
|
||||||
|
neighbor evpn activate
|
||||||
|
!
|
||||||
|
! VRF Gold configuration
|
||||||
|
vrf gold
|
||||||
|
rd 10.1.250.22:1
|
||||||
|
route-target import evpn 1:100001
|
||||||
|
route-target export evpn 1:100001
|
||||||
|
router-id 10.1.250.22
|
||||||
|
neighbor 10.0.15.2 remote-as 65500
|
||||||
|
neighbor 10.0.15.2 send-community extended
|
||||||
|
neighbor 10.0.15.2 maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.15.6 remote-as 65500
|
||||||
|
neighbor 10.0.15.6 send-community extended
|
||||||
|
neighbor 10.0.15.6 maximum-routes 12000 warning-only
|
||||||
|
!
|
||||||
|
address-family ipv4
|
||||||
|
neighbor 10.0.15.2 activate
|
||||||
|
neighbor 10.0.15.6 activate
|
||||||
|
!
|
||||||
|
redistribute connected
|
||||||
|
!
|
||||||
|
end
|
||||||
195
configs/campus-leaf1.cfg
Normal file
195
configs/campus-leaf1.cfg
Normal file
@@ -0,0 +1,195 @@
|
|||||||
|
! Campus-Leaf1 Configuration
|
||||||
|
! Campus VTEP1 - AS 66001 (MLAG pair with campus-leaf2)
|
||||||
|
!
|
||||||
|
hostname campus-leaf1
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! Enable IP routing
|
||||||
|
ip routing
|
||||||
|
!
|
||||||
|
! Enable routing protocols
|
||||||
|
service routing protocols model multi-agent
|
||||||
|
!
|
||||||
|
! VRF Definition
|
||||||
|
vrf instance gold
|
||||||
|
!
|
||||||
|
! VLANs
|
||||||
|
vlan 50
|
||||||
|
name test-l2-vxlan-campus
|
||||||
|
!
|
||||||
|
vlan 60
|
||||||
|
name vrf-gold-campus-subnet1
|
||||||
|
!
|
||||||
|
vlan 4090
|
||||||
|
name mlag-peer
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
vlan 4091
|
||||||
|
name mlag-ibgp
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.51/24
|
||||||
|
!
|
||||||
|
! MLAG Peer-link SVI
|
||||||
|
interface Vlan4090
|
||||||
|
description MLAG Peer-Link
|
||||||
|
ip address 10.1.199.252/31
|
||||||
|
no autostate
|
||||||
|
!
|
||||||
|
! iBGP Peering SVI
|
||||||
|
interface Vlan4091
|
||||||
|
description MLAG iBGP Peering
|
||||||
|
ip address 10.1.3.0/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! VRF VLAN Interface
|
||||||
|
interface Vlan60
|
||||||
|
vrf gold
|
||||||
|
ip address 10.60.60.2/24
|
||||||
|
ip virtual-router address 10.60.60.1
|
||||||
|
!
|
||||||
|
! Loopbacks
|
||||||
|
interface Loopback0
|
||||||
|
description Router-ID
|
||||||
|
ip address 10.1.250.11/32
|
||||||
|
!
|
||||||
|
interface Loopback1
|
||||||
|
description VTEP
|
||||||
|
ip address 10.1.255.11/32
|
||||||
|
!
|
||||||
|
! MLAG Peer-link
|
||||||
|
interface Ethernet10
|
||||||
|
description mlag peer link
|
||||||
|
channel-group 999 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel999
|
||||||
|
description MLAG Peer
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk group mlag-peer
|
||||||
|
spanning-tree link-type point-to-point
|
||||||
|
!
|
||||||
|
! Underlay P2P interfaces to Campus Spines
|
||||||
|
interface Ethernet11
|
||||||
|
description campus-spine1
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.1.1/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet12
|
||||||
|
description campus-spine2
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.2.1/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Access-facing interface (MLAG with LACP)
|
||||||
|
interface Ethernet1
|
||||||
|
description campus-access1
|
||||||
|
channel-group 1 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel1
|
||||||
|
description campus-access1
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk allowed vlan 60
|
||||||
|
mlag 1
|
||||||
|
port-channel lacp fallback timeout 5
|
||||||
|
port-channel lacp fallback individual
|
||||||
|
no shutdown
|
||||||
|
!
|
||||||
|
! Spanning-tree
|
||||||
|
no spanning-tree vlan 4090
|
||||||
|
no spanning-tree vlan 4091
|
||||||
|
!
|
||||||
|
! Virtual MAC for Anycast Gateway
|
||||||
|
ip virtual-router mac-address c001.cafe.babe
|
||||||
|
!
|
||||||
|
! MLAG Configuration
|
||||||
|
mlag configuration
|
||||||
|
domain-id campus-leafs
|
||||||
|
local-interface Vlan4090
|
||||||
|
peer-address 10.1.199.253
|
||||||
|
peer-link Port-Channel999
|
||||||
|
dual-primary detection delay 10 action errdisable all-interfaces
|
||||||
|
peer-address heartbeat 172.16.0.52 vrf mgmt
|
||||||
|
!
|
||||||
|
! VXLAN Interface
|
||||||
|
interface Vxlan1
|
||||||
|
vxlan source-interface Loopback1
|
||||||
|
vxlan udp-port 4789
|
||||||
|
vxlan learn-restrict any
|
||||||
|
vxlan vlan 50 vni 110050
|
||||||
|
vxlan vrf gold vni 100001
|
||||||
|
!
|
||||||
|
! IP Routing
|
||||||
|
ip routing
|
||||||
|
ip routing vrf gold
|
||||||
|
ip route 100.64.0.0/10 172.16.0.254
|
||||||
|
!
|
||||||
|
! BGP Configuration
|
||||||
|
router bgp 66001
|
||||||
|
router-id 10.1.250.11
|
||||||
|
no bgp default ipv4-unicast
|
||||||
|
bgp log-neighbor-changes
|
||||||
|
distance bgp 20 200 200
|
||||||
|
maximum-paths 4 ecmp 64
|
||||||
|
!
|
||||||
|
! Underlay peer-group
|
||||||
|
neighbor underlay peer group
|
||||||
|
neighbor underlay remote-as 66000
|
||||||
|
neighbor underlay maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.1.1.0 peer group underlay
|
||||||
|
neighbor 10.1.2.0 peer group underlay
|
||||||
|
!
|
||||||
|
! iBGP peer-group
|
||||||
|
neighbor underlay_ibgp peer group
|
||||||
|
neighbor underlay_ibgp remote-as 66001
|
||||||
|
neighbor underlay_ibgp maximum-routes 12000 warning-only
|
||||||
|
neighbor underlay_ibgp next-hop-self
|
||||||
|
neighbor 10.1.3.1 peer group underlay_ibgp
|
||||||
|
!
|
||||||
|
! EVPN peer-group
|
||||||
|
neighbor evpn peer group
|
||||||
|
neighbor evpn remote-as 66000
|
||||||
|
neighbor evpn update-source Loopback0
|
||||||
|
neighbor evpn ebgp-multihop 3
|
||||||
|
neighbor evpn send-community extended
|
||||||
|
neighbor evpn maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.1.250.1 peer group evpn
|
||||||
|
neighbor 10.1.250.2 peer group evpn
|
||||||
|
!
|
||||||
|
! VLAN 50 for L2 VXLAN (stretched across Campus VTEPs)
|
||||||
|
vlan 50
|
||||||
|
rd 66001:110050
|
||||||
|
route-target both 50:110050
|
||||||
|
redistribute learned
|
||||||
|
!
|
||||||
|
! IPv4 address family
|
||||||
|
address-family ipv4
|
||||||
|
neighbor underlay activate
|
||||||
|
neighbor underlay_ibgp activate
|
||||||
|
network 10.1.250.11/32
|
||||||
|
network 10.1.255.11/32
|
||||||
|
!
|
||||||
|
! EVPN address family
|
||||||
|
address-family evpn
|
||||||
|
neighbor evpn activate
|
||||||
|
!
|
||||||
|
! VRF Gold configuration
|
||||||
|
vrf gold
|
||||||
|
rd 10.1.250.11:1
|
||||||
|
route-target import evpn 1:100001
|
||||||
|
route-target export evpn 1:100001
|
||||||
|
redistribute connected
|
||||||
|
!
|
||||||
|
end
|
||||||
195
configs/campus-leaf2.cfg
Normal file
195
configs/campus-leaf2.cfg
Normal file
@@ -0,0 +1,195 @@
|
|||||||
|
! Campus-Leaf2 Configuration
|
||||||
|
! Campus VTEP1 - AS 66001 (MLAG pair with campus-leaf1)
|
||||||
|
!
|
||||||
|
hostname campus-leaf2
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! Enable IP routing
|
||||||
|
ip routing
|
||||||
|
!
|
||||||
|
! Enable routing protocols
|
||||||
|
service routing protocols model multi-agent
|
||||||
|
!
|
||||||
|
! VRF Definition
|
||||||
|
vrf instance gold
|
||||||
|
!
|
||||||
|
! VLANs
|
||||||
|
vlan 50
|
||||||
|
name test-l2-vxlan-campus
|
||||||
|
!
|
||||||
|
vlan 60
|
||||||
|
name vrf-gold-campus-subnet1
|
||||||
|
!
|
||||||
|
vlan 4090
|
||||||
|
name mlag-peer
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
vlan 4091
|
||||||
|
name mlag-ibgp
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.52/24
|
||||||
|
!
|
||||||
|
! MLAG Peer-link SVI
|
||||||
|
interface Vlan4090
|
||||||
|
description MLAG Peer-Link
|
||||||
|
ip address 10.1.199.253/31
|
||||||
|
no autostate
|
||||||
|
!
|
||||||
|
! iBGP Peering SVI
|
||||||
|
interface Vlan4091
|
||||||
|
description MLAG iBGP Peering
|
||||||
|
ip address 10.1.3.1/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! VRF VLAN Interface
|
||||||
|
interface Vlan60
|
||||||
|
vrf gold
|
||||||
|
ip address 10.60.60.3/24
|
||||||
|
ip virtual-router address 10.60.60.1
|
||||||
|
!
|
||||||
|
! Loopbacks
|
||||||
|
interface Loopback0
|
||||||
|
description Router-ID
|
||||||
|
ip address 10.1.250.12/32
|
||||||
|
!
|
||||||
|
interface Loopback1
|
||||||
|
description VTEP
|
||||||
|
ip address 10.1.255.11/32
|
||||||
|
!
|
||||||
|
! MLAG Peer-link
|
||||||
|
interface Ethernet10
|
||||||
|
description mlag peer link
|
||||||
|
channel-group 999 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel999
|
||||||
|
description MLAG Peer
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk group mlag-peer
|
||||||
|
spanning-tree link-type point-to-point
|
||||||
|
!
|
||||||
|
! Underlay P2P interfaces to Campus Spines
|
||||||
|
interface Ethernet11
|
||||||
|
description campus-spine1
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.1.3/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet12
|
||||||
|
description campus-spine2
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.2.3/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Access-facing interface (MLAG with LACP)
|
||||||
|
interface Ethernet1
|
||||||
|
description campus-access1
|
||||||
|
channel-group 1 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel1
|
||||||
|
description campus-access1
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk allowed vlan 60
|
||||||
|
mlag 1
|
||||||
|
port-channel lacp fallback timeout 5
|
||||||
|
port-channel lacp fallback individual
|
||||||
|
no shutdown
|
||||||
|
!
|
||||||
|
! Spanning-tree
|
||||||
|
no spanning-tree vlan 4090
|
||||||
|
no spanning-tree vlan 4091
|
||||||
|
!
|
||||||
|
! Virtual MAC for Anycast Gateway
|
||||||
|
ip virtual-router mac-address c001.cafe.babe
|
||||||
|
!
|
||||||
|
! MLAG Configuration
|
||||||
|
mlag configuration
|
||||||
|
domain-id campus-leafs
|
||||||
|
local-interface Vlan4090
|
||||||
|
peer-address 10.1.199.252
|
||||||
|
peer-link Port-Channel999
|
||||||
|
dual-primary detection delay 10 action errdisable all-interfaces
|
||||||
|
peer-address heartbeat 172.16.0.51 vrf mgmt
|
||||||
|
!
|
||||||
|
! VXLAN Interface
|
||||||
|
interface Vxlan1
|
||||||
|
vxlan source-interface Loopback1
|
||||||
|
vxlan udp-port 4789
|
||||||
|
vxlan learn-restrict any
|
||||||
|
vxlan vlan 50 vni 110050
|
||||||
|
vxlan vrf gold vni 100001
|
||||||
|
!
|
||||||
|
! IP Routing
|
||||||
|
ip routing
|
||||||
|
ip routing vrf gold
|
||||||
|
ip route 100.64.0.0/10 172.16.0.254
|
||||||
|
!
|
||||||
|
! BGP Configuration
|
||||||
|
router bgp 66001
|
||||||
|
router-id 10.1.250.12
|
||||||
|
no bgp default ipv4-unicast
|
||||||
|
bgp log-neighbor-changes
|
||||||
|
distance bgp 20 200 200
|
||||||
|
maximum-paths 4 ecmp 64
|
||||||
|
!
|
||||||
|
! Underlay peer-group
|
||||||
|
neighbor underlay peer group
|
||||||
|
neighbor underlay remote-as 66000
|
||||||
|
neighbor underlay maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.1.1.2 peer group underlay
|
||||||
|
neighbor 10.1.2.2 peer group underlay
|
||||||
|
!
|
||||||
|
! iBGP peer-group
|
||||||
|
neighbor underlay_ibgp peer group
|
||||||
|
neighbor underlay_ibgp remote-as 66001
|
||||||
|
neighbor underlay_ibgp maximum-routes 12000 warning-only
|
||||||
|
neighbor underlay_ibgp next-hop-self
|
||||||
|
neighbor 10.1.3.0 peer group underlay_ibgp
|
||||||
|
!
|
||||||
|
! EVPN peer-group
|
||||||
|
neighbor evpn peer group
|
||||||
|
neighbor evpn remote-as 66000
|
||||||
|
neighbor evpn update-source Loopback0
|
||||||
|
neighbor evpn ebgp-multihop 3
|
||||||
|
neighbor evpn send-community extended
|
||||||
|
neighbor evpn maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.1.250.1 peer group evpn
|
||||||
|
neighbor 10.1.250.2 peer group evpn
|
||||||
|
!
|
||||||
|
! VLAN 50 for L2 VXLAN (stretched across Campus VTEPs)
|
||||||
|
vlan 50
|
||||||
|
rd 66001:110050
|
||||||
|
route-target both 50:110050
|
||||||
|
redistribute learned
|
||||||
|
!
|
||||||
|
! IPv4 address family
|
||||||
|
address-family ipv4
|
||||||
|
neighbor underlay activate
|
||||||
|
neighbor underlay_ibgp activate
|
||||||
|
network 10.1.250.12/32
|
||||||
|
network 10.1.255.11/32
|
||||||
|
!
|
||||||
|
! EVPN address family
|
||||||
|
address-family evpn
|
||||||
|
neighbor evpn activate
|
||||||
|
!
|
||||||
|
! VRF Gold configuration
|
||||||
|
vrf gold
|
||||||
|
rd 10.1.250.12:1
|
||||||
|
route-target import evpn 1:100001
|
||||||
|
route-target export evpn 1:100001
|
||||||
|
redistribute connected
|
||||||
|
!
|
||||||
|
end
|
||||||
195
configs/campus-leaf3.cfg
Normal file
195
configs/campus-leaf3.cfg
Normal file
@@ -0,0 +1,195 @@
|
|||||||
|
! Campus-Leaf3 Configuration
|
||||||
|
! Campus VTEP2 - AS 66002 (MLAG pair with campus-leaf4)
|
||||||
|
!
|
||||||
|
hostname campus-leaf3
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! Enable IP routing
|
||||||
|
ip routing
|
||||||
|
!
|
||||||
|
! Enable routing protocols
|
||||||
|
service routing protocols model multi-agent
|
||||||
|
!
|
||||||
|
! VRF Definition
|
||||||
|
vrf instance gold
|
||||||
|
!
|
||||||
|
! VLANs
|
||||||
|
vlan 50
|
||||||
|
name test-l2-vxlan-campus
|
||||||
|
!
|
||||||
|
vlan 70
|
||||||
|
name vrf-gold-campus-subnet2
|
||||||
|
!
|
||||||
|
vlan 4090
|
||||||
|
name mlag-peer
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
vlan 4091
|
||||||
|
name mlag-ibgp
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.53/24
|
||||||
|
!
|
||||||
|
! MLAG Peer-link SVI
|
||||||
|
interface Vlan4090
|
||||||
|
description MLAG Peer-Link
|
||||||
|
ip address 10.1.199.250/31
|
||||||
|
no autostate
|
||||||
|
!
|
||||||
|
! iBGP Peering SVI
|
||||||
|
interface Vlan4091
|
||||||
|
description MLAG iBGP Peering
|
||||||
|
ip address 10.1.3.2/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! VRF VLAN Interface
|
||||||
|
interface Vlan70
|
||||||
|
vrf gold
|
||||||
|
ip address 10.60.70.2/24
|
||||||
|
ip virtual-router address 10.60.70.1
|
||||||
|
!
|
||||||
|
! Loopbacks
|
||||||
|
interface Loopback0
|
||||||
|
description Router-ID
|
||||||
|
ip address 10.1.250.13/32
|
||||||
|
!
|
||||||
|
interface Loopback1
|
||||||
|
description VTEP
|
||||||
|
ip address 10.1.255.12/32
|
||||||
|
!
|
||||||
|
! MLAG Peer-link
|
||||||
|
interface Ethernet10
|
||||||
|
description mlag peer link
|
||||||
|
channel-group 999 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel999
|
||||||
|
description MLAG Peer
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk group mlag-peer
|
||||||
|
spanning-tree link-type point-to-point
|
||||||
|
!
|
||||||
|
! Underlay P2P interfaces to Campus Spines
|
||||||
|
interface Ethernet11
|
||||||
|
description campus-spine1
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.1.5/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet12
|
||||||
|
description campus-spine2
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.2.5/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Access-facing interface (MLAG with LACP)
|
||||||
|
interface Ethernet1
|
||||||
|
description campus-access2
|
||||||
|
channel-group 1 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel1
|
||||||
|
description campus-access2
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk allowed vlan 70
|
||||||
|
mlag 1
|
||||||
|
port-channel lacp fallback timeout 5
|
||||||
|
port-channel lacp fallback individual
|
||||||
|
no shutdown
|
||||||
|
!
|
||||||
|
! Spanning-tree
|
||||||
|
no spanning-tree vlan 4090
|
||||||
|
no spanning-tree vlan 4091
|
||||||
|
!
|
||||||
|
! Virtual MAC for Anycast Gateway
|
||||||
|
ip virtual-router mac-address c001.cafe.babe
|
||||||
|
!
|
||||||
|
! MLAG Configuration
|
||||||
|
mlag configuration
|
||||||
|
domain-id campus-leafs
|
||||||
|
local-interface Vlan4090
|
||||||
|
peer-address 10.1.199.251
|
||||||
|
peer-link Port-Channel999
|
||||||
|
dual-primary detection delay 10 action errdisable all-interfaces
|
||||||
|
peer-address heartbeat 172.16.0.54 vrf mgmt
|
||||||
|
!
|
||||||
|
! VXLAN Interface
|
||||||
|
interface Vxlan1
|
||||||
|
vxlan source-interface Loopback1
|
||||||
|
vxlan udp-port 4789
|
||||||
|
vxlan learn-restrict any
|
||||||
|
vxlan vlan 50 vni 110050
|
||||||
|
vxlan vrf gold vni 100001
|
||||||
|
!
|
||||||
|
! IP Routing
|
||||||
|
ip routing
|
||||||
|
ip routing vrf gold
|
||||||
|
ip route 100.64.0.0/10 172.16.0.254
|
||||||
|
!
|
||||||
|
! BGP Configuration
|
||||||
|
router bgp 66002
|
||||||
|
router-id 10.1.250.13
|
||||||
|
no bgp default ipv4-unicast
|
||||||
|
bgp log-neighbor-changes
|
||||||
|
distance bgp 20 200 200
|
||||||
|
maximum-paths 4 ecmp 64
|
||||||
|
!
|
||||||
|
! Underlay peer-group
|
||||||
|
neighbor underlay peer group
|
||||||
|
neighbor underlay remote-as 66000
|
||||||
|
neighbor underlay maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.1.1.4 peer group underlay
|
||||||
|
neighbor 10.1.2.4 peer group underlay
|
||||||
|
!
|
||||||
|
! iBGP peer-group
|
||||||
|
neighbor underlay_ibgp peer group
|
||||||
|
neighbor underlay_ibgp remote-as 66002
|
||||||
|
neighbor underlay_ibgp maximum-routes 12000 warning-only
|
||||||
|
neighbor underlay_ibgp next-hop-self
|
||||||
|
neighbor 10.1.3.3 peer group underlay_ibgp
|
||||||
|
!
|
||||||
|
! EVPN peer-group
|
||||||
|
neighbor evpn peer group
|
||||||
|
neighbor evpn remote-as 66000
|
||||||
|
neighbor evpn update-source Loopback0
|
||||||
|
neighbor evpn ebgp-multihop 3
|
||||||
|
neighbor evpn send-community extended
|
||||||
|
neighbor evpn maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.1.250.1 peer group evpn
|
||||||
|
neighbor 10.1.250.2 peer group evpn
|
||||||
|
!
|
||||||
|
! VLAN 50 for L2 VXLAN (stretched across Campus VTEPs)
|
||||||
|
vlan 50
|
||||||
|
rd 66002:110050
|
||||||
|
route-target both 50:110050
|
||||||
|
redistribute learned
|
||||||
|
!
|
||||||
|
! IPv4 address family
|
||||||
|
address-family ipv4
|
||||||
|
neighbor underlay activate
|
||||||
|
neighbor underlay_ibgp activate
|
||||||
|
network 10.1.250.13/32
|
||||||
|
network 10.1.255.12/32
|
||||||
|
!
|
||||||
|
! EVPN address family
|
||||||
|
address-family evpn
|
||||||
|
neighbor evpn activate
|
||||||
|
!
|
||||||
|
! VRF Gold configuration
|
||||||
|
vrf gold
|
||||||
|
rd 10.1.250.13:1
|
||||||
|
route-target import evpn 1:100001
|
||||||
|
route-target export evpn 1:100001
|
||||||
|
redistribute connected
|
||||||
|
!
|
||||||
|
end
|
||||||
195
configs/campus-leaf4.cfg
Normal file
195
configs/campus-leaf4.cfg
Normal file
@@ -0,0 +1,195 @@
|
|||||||
|
! Campus-Leaf4 Configuration
|
||||||
|
! Campus VTEP2 - AS 66002 (MLAG pair with campus-leaf3)
|
||||||
|
!
|
||||||
|
hostname campus-leaf4
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! Enable IP routing
|
||||||
|
ip routing
|
||||||
|
!
|
||||||
|
! Enable routing protocols
|
||||||
|
service routing protocols model multi-agent
|
||||||
|
!
|
||||||
|
! VRF Definition
|
||||||
|
vrf instance gold
|
||||||
|
!
|
||||||
|
! VLANs
|
||||||
|
vlan 50
|
||||||
|
name test-l2-vxlan-campus
|
||||||
|
!
|
||||||
|
vlan 70
|
||||||
|
name vrf-gold-campus-subnet2
|
||||||
|
!
|
||||||
|
vlan 4090
|
||||||
|
name mlag-peer
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
vlan 4091
|
||||||
|
name mlag-ibgp
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.54/24
|
||||||
|
!
|
||||||
|
! MLAG Peer-link SVI
|
||||||
|
interface Vlan4090
|
||||||
|
description MLAG Peer-Link
|
||||||
|
ip address 10.1.199.251/31
|
||||||
|
no autostate
|
||||||
|
!
|
||||||
|
! iBGP Peering SVI
|
||||||
|
interface Vlan4091
|
||||||
|
description MLAG iBGP Peering
|
||||||
|
ip address 10.1.3.3/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! VRF VLAN Interface
|
||||||
|
interface Vlan70
|
||||||
|
vrf gold
|
||||||
|
ip address 10.60.70.3/24
|
||||||
|
ip virtual-router address 10.60.70.1
|
||||||
|
!
|
||||||
|
! Loopbacks
|
||||||
|
interface Loopback0
|
||||||
|
description Router-ID
|
||||||
|
ip address 10.1.250.14/32
|
||||||
|
!
|
||||||
|
interface Loopback1
|
||||||
|
description VTEP
|
||||||
|
ip address 10.1.255.12/32
|
||||||
|
!
|
||||||
|
! MLAG Peer-link
|
||||||
|
interface Ethernet10
|
||||||
|
description mlag peer link
|
||||||
|
channel-group 999 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel999
|
||||||
|
description MLAG Peer
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk group mlag-peer
|
||||||
|
spanning-tree link-type point-to-point
|
||||||
|
!
|
||||||
|
! Underlay P2P interfaces to Campus Spines
|
||||||
|
interface Ethernet11
|
||||||
|
description campus-spine1
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.1.7/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet12
|
||||||
|
description campus-spine2
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.2.7/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Access-facing interface (MLAG with LACP)
|
||||||
|
interface Ethernet1
|
||||||
|
description campus-access2
|
||||||
|
channel-group 1 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel1
|
||||||
|
description campus-access2
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk allowed vlan 70
|
||||||
|
mlag 1
|
||||||
|
port-channel lacp fallback timeout 5
|
||||||
|
port-channel lacp fallback individual
|
||||||
|
no shutdown
|
||||||
|
!
|
||||||
|
! Spanning-tree
|
||||||
|
no spanning-tree vlan 4090
|
||||||
|
no spanning-tree vlan 4091
|
||||||
|
!
|
||||||
|
! Virtual MAC for Anycast Gateway
|
||||||
|
ip virtual-router mac-address c001.cafe.babe
|
||||||
|
!
|
||||||
|
! MLAG Configuration
|
||||||
|
mlag configuration
|
||||||
|
domain-id campus-leafs
|
||||||
|
local-interface Vlan4090
|
||||||
|
peer-address 10.1.199.250
|
||||||
|
peer-link Port-Channel999
|
||||||
|
dual-primary detection delay 10 action errdisable all-interfaces
|
||||||
|
peer-address heartbeat 172.16.0.53 vrf mgmt
|
||||||
|
!
|
||||||
|
! VXLAN Interface
|
||||||
|
interface Vxlan1
|
||||||
|
vxlan source-interface Loopback1
|
||||||
|
vxlan udp-port 4789
|
||||||
|
vxlan learn-restrict any
|
||||||
|
vxlan vlan 50 vni 110050
|
||||||
|
vxlan vrf gold vni 100001
|
||||||
|
!
|
||||||
|
! IP Routing
|
||||||
|
ip routing
|
||||||
|
ip routing vrf gold
|
||||||
|
ip route 100.64.0.0/10 172.16.0.254
|
||||||
|
!
|
||||||
|
! BGP Configuration
|
||||||
|
router bgp 66002
|
||||||
|
router-id 10.1.250.14
|
||||||
|
no bgp default ipv4-unicast
|
||||||
|
bgp log-neighbor-changes
|
||||||
|
distance bgp 20 200 200
|
||||||
|
maximum-paths 4 ecmp 64
|
||||||
|
!
|
||||||
|
! Underlay peer-group
|
||||||
|
neighbor underlay peer group
|
||||||
|
neighbor underlay remote-as 66000
|
||||||
|
neighbor underlay maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.1.1.6 peer group underlay
|
||||||
|
neighbor 10.1.2.6 peer group underlay
|
||||||
|
!
|
||||||
|
! iBGP peer-group
|
||||||
|
neighbor underlay_ibgp peer group
|
||||||
|
neighbor underlay_ibgp remote-as 66002
|
||||||
|
neighbor underlay_ibgp maximum-routes 12000 warning-only
|
||||||
|
neighbor underlay_ibgp next-hop-self
|
||||||
|
neighbor 10.1.3.2 peer group underlay_ibgp
|
||||||
|
!
|
||||||
|
! EVPN peer-group
|
||||||
|
neighbor evpn peer group
|
||||||
|
neighbor evpn remote-as 66000
|
||||||
|
neighbor evpn update-source Loopback0
|
||||||
|
neighbor evpn ebgp-multihop 3
|
||||||
|
neighbor evpn send-community extended
|
||||||
|
neighbor evpn maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.1.250.1 peer group evpn
|
||||||
|
neighbor 10.1.250.2 peer group evpn
|
||||||
|
!
|
||||||
|
! VLAN 50 for L2 VXLAN (stretched across Campus VTEPs)
|
||||||
|
vlan 50
|
||||||
|
rd 66002:110050
|
||||||
|
route-target both 50:110050
|
||||||
|
redistribute learned
|
||||||
|
!
|
||||||
|
! IPv4 address family
|
||||||
|
address-family ipv4
|
||||||
|
neighbor underlay activate
|
||||||
|
neighbor underlay_ibgp activate
|
||||||
|
network 10.1.250.14/32
|
||||||
|
network 10.1.255.12/32
|
||||||
|
!
|
||||||
|
! EVPN address family
|
||||||
|
address-family evpn
|
||||||
|
neighbor evpn activate
|
||||||
|
!
|
||||||
|
! VRF Gold configuration
|
||||||
|
vrf gold
|
||||||
|
rd 10.1.250.14:1
|
||||||
|
route-target import evpn 1:100001
|
||||||
|
route-target export evpn 1:100001
|
||||||
|
redistribute connected
|
||||||
|
!
|
||||||
|
end
|
||||||
124
configs/campus-spine1.cfg
Normal file
124
configs/campus-spine1.cfg
Normal file
@@ -0,0 +1,124 @@
|
|||||||
|
! Campus-Spine1 Configuration
|
||||||
|
! Campus BGP EVPN Spine - AS 66000
|
||||||
|
!
|
||||||
|
hostname campus-spine1
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! Enable IP routing
|
||||||
|
ip routing
|
||||||
|
ip route 100.64.0.0/10 172.16.0.254
|
||||||
|
!
|
||||||
|
! Enable routing protocols
|
||||||
|
service routing protocols model multi-agent
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.20/24
|
||||||
|
!
|
||||||
|
! Loopback for BGP Router-ID
|
||||||
|
interface Loopback0
|
||||||
|
ip address 10.1.250.1/32
|
||||||
|
!
|
||||||
|
! Underlay P2P interfaces to Campus Leafs
|
||||||
|
interface Ethernet1
|
||||||
|
description campus-leaf1
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.1.0/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet2
|
||||||
|
description campus-leaf2
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.1.2/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet3
|
||||||
|
description campus-leaf3
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.1.4/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet4
|
||||||
|
description campus-leaf4
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.1.6/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Underlay P2P interfaces to Campus Border Leafs
|
||||||
|
interface Ethernet5
|
||||||
|
description campus-border-leaf1
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.1.8/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet6
|
||||||
|
description campus-border-leaf2
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.1.10/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! BGP Configuration
|
||||||
|
router bgp 66000
|
||||||
|
router-id 10.1.250.1
|
||||||
|
no bgp default ipv4-unicast
|
||||||
|
bgp log-neighbor-changes
|
||||||
|
distance bgp 20 200 200
|
||||||
|
maximum-paths 4 ecmp 64
|
||||||
|
!
|
||||||
|
! Underlay IPv4 neighbors
|
||||||
|
neighbor 10.1.1.1 remote-as 66001
|
||||||
|
neighbor 10.1.1.3 remote-as 66001
|
||||||
|
neighbor 10.1.1.5 remote-as 66002
|
||||||
|
neighbor 10.1.1.7 remote-as 66002
|
||||||
|
neighbor 10.1.1.9 remote-as 66005
|
||||||
|
neighbor 10.1.1.11 remote-as 66005
|
||||||
|
!
|
||||||
|
! EVPN peer-group configuration
|
||||||
|
neighbor evpn peer group
|
||||||
|
neighbor evpn next-hop-unchanged
|
||||||
|
neighbor evpn update-source Loopback0
|
||||||
|
neighbor evpn ebgp-multihop 3
|
||||||
|
neighbor evpn send-community extended
|
||||||
|
neighbor evpn maximum-routes 12000 warning-only
|
||||||
|
!
|
||||||
|
! EVPN neighbors (to campus leaf loopbacks)
|
||||||
|
neighbor 10.1.250.11 peer group evpn
|
||||||
|
neighbor 10.1.250.11 remote-as 66001
|
||||||
|
neighbor 10.1.250.12 peer group evpn
|
||||||
|
neighbor 10.1.250.12 remote-as 66001
|
||||||
|
neighbor 10.1.250.13 peer group evpn
|
||||||
|
neighbor 10.1.250.13 remote-as 66002
|
||||||
|
neighbor 10.1.250.14 peer group evpn
|
||||||
|
neighbor 10.1.250.14 remote-as 66002
|
||||||
|
!
|
||||||
|
! EVPN neighbors (to campus border-leaf loopbacks)
|
||||||
|
neighbor 10.1.250.21 peer group evpn
|
||||||
|
neighbor 10.1.250.21 remote-as 66005
|
||||||
|
neighbor 10.1.250.22 peer group evpn
|
||||||
|
neighbor 10.1.250.22 remote-as 66005
|
||||||
|
!
|
||||||
|
! IPv4 address family
|
||||||
|
address-family ipv4
|
||||||
|
neighbor 10.1.1.1 activate
|
||||||
|
neighbor 10.1.1.3 activate
|
||||||
|
neighbor 10.1.1.5 activate
|
||||||
|
neighbor 10.1.1.7 activate
|
||||||
|
neighbor 10.1.1.9 activate
|
||||||
|
neighbor 10.1.1.11 activate
|
||||||
|
network 10.1.250.1/32
|
||||||
|
!
|
||||||
|
! EVPN address family
|
||||||
|
address-family evpn
|
||||||
|
neighbor evpn activate
|
||||||
|
!
|
||||||
|
end
|
||||||
124
configs/campus-spine2.cfg
Normal file
124
configs/campus-spine2.cfg
Normal file
@@ -0,0 +1,124 @@
|
|||||||
|
! Campus-Spine2 Configuration
|
||||||
|
! Campus BGP EVPN Spine - AS 66000
|
||||||
|
!
|
||||||
|
hostname campus-spine2
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! Enable IP routing
|
||||||
|
ip routing
|
||||||
|
ip route 100.64.0.0/10 172.16.0.254
|
||||||
|
!
|
||||||
|
! Enable routing protocols
|
||||||
|
service routing protocols model multi-agent
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.21/24
|
||||||
|
!
|
||||||
|
! Loopback for BGP Router-ID
|
||||||
|
interface Loopback0
|
||||||
|
ip address 10.1.250.2/32
|
||||||
|
!
|
||||||
|
! Underlay P2P interfaces to Campus Leafs
|
||||||
|
interface Ethernet1
|
||||||
|
description campus-leaf1
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.2.0/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet2
|
||||||
|
description campus-leaf2
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.2.2/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet3
|
||||||
|
description campus-leaf3
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.2.4/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet4
|
||||||
|
description campus-leaf4
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.2.6/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Underlay P2P interfaces to Campus Border Leafs
|
||||||
|
interface Ethernet5
|
||||||
|
description campus-border-leaf1
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.2.8/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet6
|
||||||
|
description campus-border-leaf2
|
||||||
|
no switchport
|
||||||
|
ip address 10.1.2.10/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! BGP Configuration
|
||||||
|
router bgp 66000
|
||||||
|
router-id 10.1.250.2
|
||||||
|
no bgp default ipv4-unicast
|
||||||
|
bgp log-neighbor-changes
|
||||||
|
distance bgp 20 200 200
|
||||||
|
maximum-paths 4 ecmp 64
|
||||||
|
!
|
||||||
|
! Underlay IPv4 neighbors
|
||||||
|
neighbor 10.1.2.1 remote-as 66001
|
||||||
|
neighbor 10.1.2.3 remote-as 66001
|
||||||
|
neighbor 10.1.2.5 remote-as 66002
|
||||||
|
neighbor 10.1.2.7 remote-as 66002
|
||||||
|
neighbor 10.1.2.9 remote-as 66005
|
||||||
|
neighbor 10.1.2.11 remote-as 66005
|
||||||
|
!
|
||||||
|
! EVPN peer-group configuration
|
||||||
|
neighbor evpn peer group
|
||||||
|
neighbor evpn next-hop-unchanged
|
||||||
|
neighbor evpn update-source Loopback0
|
||||||
|
neighbor evpn ebgp-multihop 3
|
||||||
|
neighbor evpn send-community extended
|
||||||
|
neighbor evpn maximum-routes 12000 warning-only
|
||||||
|
!
|
||||||
|
! EVPN neighbors (to campus leaf loopbacks)
|
||||||
|
neighbor 10.1.250.11 peer group evpn
|
||||||
|
neighbor 10.1.250.11 remote-as 66001
|
||||||
|
neighbor 10.1.250.12 peer group evpn
|
||||||
|
neighbor 10.1.250.12 remote-as 66001
|
||||||
|
neighbor 10.1.250.13 peer group evpn
|
||||||
|
neighbor 10.1.250.13 remote-as 66002
|
||||||
|
neighbor 10.1.250.14 peer group evpn
|
||||||
|
neighbor 10.1.250.14 remote-as 66002
|
||||||
|
!
|
||||||
|
! EVPN neighbors (to campus border-leaf loopbacks)
|
||||||
|
neighbor 10.1.250.21 peer group evpn
|
||||||
|
neighbor 10.1.250.21 remote-as 66005
|
||||||
|
neighbor 10.1.250.22 peer group evpn
|
||||||
|
neighbor 10.1.250.22 remote-as 66005
|
||||||
|
!
|
||||||
|
! IPv4 address family
|
||||||
|
address-family ipv4
|
||||||
|
neighbor 10.1.2.1 activate
|
||||||
|
neighbor 10.1.2.3 activate
|
||||||
|
neighbor 10.1.2.5 activate
|
||||||
|
neighbor 10.1.2.7 activate
|
||||||
|
neighbor 10.1.2.9 activate
|
||||||
|
neighbor 10.1.2.11 activate
|
||||||
|
network 10.1.250.2/32
|
||||||
|
!
|
||||||
|
! EVPN address family
|
||||||
|
address-family evpn
|
||||||
|
neighbor evpn activate
|
||||||
|
!
|
||||||
|
end
|
||||||
232
configs/core1.cfg
Normal file
232
configs/core1.cfg
Normal file
@@ -0,0 +1,232 @@
|
|||||||
|
! Core1 Configuration
|
||||||
|
! Core Router - AS 65500
|
||||||
|
! Transit between DC Border Leafs and Campus Border Leafs
|
||||||
|
!
|
||||||
|
hostname core1
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! Enable IP routing
|
||||||
|
ip routing
|
||||||
|
!
|
||||||
|
! Enable routing protocols
|
||||||
|
service routing protocols model multi-agent
|
||||||
|
!
|
||||||
|
! VRF Definition
|
||||||
|
vrf instance gold
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.10/24
|
||||||
|
!
|
||||||
|
! Loopback for BGP Router-ID (default VRF)
|
||||||
|
interface Loopback0
|
||||||
|
description Router-ID
|
||||||
|
ip address 10.0.200.1/32
|
||||||
|
!
|
||||||
|
! Loopback in VRF Gold (router-id and health)
|
||||||
|
interface Loopback1
|
||||||
|
description VRF-Gold-RouterID
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.200.101/32
|
||||||
|
!
|
||||||
|
! Link to DC Border Leaf 1 (subinterfaced: .100 default VRF, .200 VRF gold)
|
||||||
|
interface Ethernet1
|
||||||
|
description dc-border-leaf1
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet1.100
|
||||||
|
description dc-border-leaf1-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.4.0/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet1.200
|
||||||
|
description dc-border-leaf1-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.14.0/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Link to DC Border Leaf 2
|
||||||
|
interface Ethernet2
|
||||||
|
description dc-border-leaf2
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet2.100
|
||||||
|
description dc-border-leaf2-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.4.2/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet2.200
|
||||||
|
description dc-border-leaf2-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.14.2/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Link to Campus Border Leaf 1
|
||||||
|
interface Ethernet3
|
||||||
|
description campus-border-leaf1
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet3.100
|
||||||
|
description campus-border-leaf1-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.5.0/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet3.200
|
||||||
|
description campus-border-leaf1-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.15.0/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Link to Campus Border Leaf 2
|
||||||
|
interface Ethernet4
|
||||||
|
description campus-border-leaf2
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet4.100
|
||||||
|
description campus-border-leaf2-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.5.2/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet4.200
|
||||||
|
description campus-border-leaf2-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.15.2/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Inter-Core link
|
||||||
|
interface Ethernet5
|
||||||
|
description core2
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet5.100
|
||||||
|
description core2-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.200.128/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet5.200
|
||||||
|
description core2-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.200.130/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! IP Routing
|
||||||
|
ip routing
|
||||||
|
ip routing vrf gold
|
||||||
|
ip route 100.64.0.0/10 172.16.0.254
|
||||||
|
!
|
||||||
|
! OSPF for loopback reachability (default VRF)
|
||||||
|
router ospf 1
|
||||||
|
router-id 10.0.200.1
|
||||||
|
passive-interface default
|
||||||
|
no passive-interface Ethernet1.100
|
||||||
|
no passive-interface Ethernet2.100
|
||||||
|
no passive-interface Ethernet3.100
|
||||||
|
no passive-interface Ethernet4.100
|
||||||
|
no passive-interface Ethernet5.100
|
||||||
|
network 10.0.200.1/32 area 0
|
||||||
|
network 10.0.4.0/31 area 0
|
||||||
|
network 10.0.4.2/31 area 0
|
||||||
|
network 10.0.5.0/31 area 0
|
||||||
|
network 10.0.5.2/31 area 0
|
||||||
|
network 10.0.200.128/31 area 0
|
||||||
|
max-lsa 12000
|
||||||
|
!
|
||||||
|
! BGP Configuration
|
||||||
|
router bgp 65500
|
||||||
|
router-id 10.0.200.1
|
||||||
|
no bgp default ipv4-unicast
|
||||||
|
bgp log-neighbor-changes
|
||||||
|
distance bgp 20 200 200
|
||||||
|
maximum-paths 4 ecmp 64
|
||||||
|
!
|
||||||
|
! iBGP to core2 (loopback-based, default VRF)
|
||||||
|
neighbor core_ibgp peer group
|
||||||
|
neighbor core_ibgp remote-as 65500
|
||||||
|
neighbor core_ibgp update-source Loopback0
|
||||||
|
neighbor core_ibgp next-hop-self
|
||||||
|
neighbor core_ibgp send-community extended
|
||||||
|
neighbor core_ibgp maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.200.2 peer group core_ibgp
|
||||||
|
!
|
||||||
|
! eBGP to DC Border Leafs (default VRF)
|
||||||
|
neighbor dc_bl peer group
|
||||||
|
neighbor dc_bl remote-as 65005
|
||||||
|
neighbor dc_bl send-community extended
|
||||||
|
neighbor dc_bl maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.4.1 peer group dc_bl
|
||||||
|
neighbor 10.0.4.3 peer group dc_bl
|
||||||
|
!
|
||||||
|
! eBGP to Campus Border Leafs (default VRF)
|
||||||
|
neighbor campus_bl peer group
|
||||||
|
neighbor campus_bl remote-as 66005
|
||||||
|
neighbor campus_bl send-community extended
|
||||||
|
neighbor campus_bl maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.5.1 peer group campus_bl
|
||||||
|
neighbor 10.0.5.3 peer group campus_bl
|
||||||
|
!
|
||||||
|
! IPv4 address family (default VRF)
|
||||||
|
address-family ipv4
|
||||||
|
neighbor core_ibgp activate
|
||||||
|
neighbor dc_bl activate
|
||||||
|
neighbor campus_bl activate
|
||||||
|
network 10.0.200.1/32
|
||||||
|
!
|
||||||
|
! VRF Gold configuration - transit for inter-fabric routing
|
||||||
|
vrf gold
|
||||||
|
rd 10.0.200.1:100001
|
||||||
|
router-id 10.0.200.1
|
||||||
|
! iBGP to core2 in VRF gold (P2P)
|
||||||
|
neighbor 10.0.200.131 remote-as 65500
|
||||||
|
neighbor 10.0.200.131 next-hop-self
|
||||||
|
neighbor 10.0.200.131 send-community extended
|
||||||
|
neighbor 10.0.200.131 maximum-routes 12000 warning-only
|
||||||
|
! eBGP to DC Border Leafs in VRF gold
|
||||||
|
neighbor 10.0.14.1 remote-as 65005
|
||||||
|
neighbor 10.0.14.1 send-community extended
|
||||||
|
neighbor 10.0.14.1 maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.14.3 remote-as 65005
|
||||||
|
neighbor 10.0.14.3 send-community extended
|
||||||
|
neighbor 10.0.14.3 maximum-routes 12000 warning-only
|
||||||
|
! eBGP to Campus Border Leafs in VRF gold
|
||||||
|
neighbor 10.0.15.1 remote-as 66005
|
||||||
|
neighbor 10.0.15.1 send-community extended
|
||||||
|
neighbor 10.0.15.1 maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.15.3 remote-as 66005
|
||||||
|
neighbor 10.0.15.3 send-community extended
|
||||||
|
neighbor 10.0.15.3 maximum-routes 12000 warning-only
|
||||||
|
!
|
||||||
|
address-family ipv4
|
||||||
|
neighbor 10.0.14.1 activate
|
||||||
|
neighbor 10.0.14.3 activate
|
||||||
|
neighbor 10.0.15.1 activate
|
||||||
|
neighbor 10.0.15.3 activate
|
||||||
|
neighbor 10.0.200.131 activate
|
||||||
|
!
|
||||||
|
redistribute connected
|
||||||
|
!
|
||||||
|
end
|
||||||
232
configs/core2.cfg
Normal file
232
configs/core2.cfg
Normal file
@@ -0,0 +1,232 @@
|
|||||||
|
! Core2 Configuration
|
||||||
|
! Core Router - AS 65500
|
||||||
|
! Transit between DC Border Leafs and Campus Border Leafs
|
||||||
|
!
|
||||||
|
hostname core2
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! Enable IP routing
|
||||||
|
ip routing
|
||||||
|
!
|
||||||
|
! Enable routing protocols
|
||||||
|
service routing protocols model multi-agent
|
||||||
|
!
|
||||||
|
! VRF Definition
|
||||||
|
vrf instance gold
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.11/24
|
||||||
|
!
|
||||||
|
! Loopback for BGP Router-ID (default VRF)
|
||||||
|
interface Loopback0
|
||||||
|
description Router-ID
|
||||||
|
ip address 10.0.200.2/32
|
||||||
|
!
|
||||||
|
! Loopback in VRF Gold (router-id and health)
|
||||||
|
interface Loopback1
|
||||||
|
description VRF-Gold-RouterID
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.200.102/32
|
||||||
|
!
|
||||||
|
! Link to DC Border Leaf 1
|
||||||
|
interface Ethernet1
|
||||||
|
description dc-border-leaf1
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet1.100
|
||||||
|
description dc-border-leaf1-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.4.4/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet1.200
|
||||||
|
description dc-border-leaf1-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.14.4/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Link to DC Border Leaf 2
|
||||||
|
interface Ethernet2
|
||||||
|
description dc-border-leaf2
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet2.100
|
||||||
|
description dc-border-leaf2-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.4.6/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet2.200
|
||||||
|
description dc-border-leaf2-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.14.6/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Link to Campus Border Leaf 1
|
||||||
|
interface Ethernet3
|
||||||
|
description campus-border-leaf1
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet3.100
|
||||||
|
description campus-border-leaf1-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.5.4/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet3.200
|
||||||
|
description campus-border-leaf1-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.15.4/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Link to Campus Border Leaf 2
|
||||||
|
interface Ethernet4
|
||||||
|
description campus-border-leaf2
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet4.100
|
||||||
|
description campus-border-leaf2-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.5.6/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet4.200
|
||||||
|
description campus-border-leaf2-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.15.6/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Inter-Core link
|
||||||
|
interface Ethernet5
|
||||||
|
description core1
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet5.100
|
||||||
|
description core1-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.200.129/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet5.200
|
||||||
|
description core1-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.200.131/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! IP Routing
|
||||||
|
ip routing
|
||||||
|
ip routing vrf gold
|
||||||
|
ip route 100.64.0.0/10 172.16.0.254
|
||||||
|
!
|
||||||
|
! OSPF for loopback reachability (default VRF)
|
||||||
|
router ospf 1
|
||||||
|
router-id 10.0.200.2
|
||||||
|
passive-interface default
|
||||||
|
no passive-interface Ethernet1.100
|
||||||
|
no passive-interface Ethernet2.100
|
||||||
|
no passive-interface Ethernet3.100
|
||||||
|
no passive-interface Ethernet4.100
|
||||||
|
no passive-interface Ethernet5.100
|
||||||
|
network 10.0.200.2/32 area 0
|
||||||
|
network 10.0.4.4/31 area 0
|
||||||
|
network 10.0.4.6/31 area 0
|
||||||
|
network 10.0.5.4/31 area 0
|
||||||
|
network 10.0.5.6/31 area 0
|
||||||
|
network 10.0.200.128/31 area 0
|
||||||
|
max-lsa 12000
|
||||||
|
!
|
||||||
|
! BGP Configuration
|
||||||
|
router bgp 65500
|
||||||
|
router-id 10.0.200.2
|
||||||
|
no bgp default ipv4-unicast
|
||||||
|
bgp log-neighbor-changes
|
||||||
|
distance bgp 20 200 200
|
||||||
|
maximum-paths 4 ecmp 64
|
||||||
|
!
|
||||||
|
! iBGP to core1 (loopback-based, default VRF)
|
||||||
|
neighbor core_ibgp peer group
|
||||||
|
neighbor core_ibgp remote-as 65500
|
||||||
|
neighbor core_ibgp update-source Loopback0
|
||||||
|
neighbor core_ibgp next-hop-self
|
||||||
|
neighbor core_ibgp send-community extended
|
||||||
|
neighbor core_ibgp maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.200.1 peer group core_ibgp
|
||||||
|
!
|
||||||
|
! eBGP to DC Border Leafs (default VRF)
|
||||||
|
neighbor dc_bl peer group
|
||||||
|
neighbor dc_bl remote-as 65005
|
||||||
|
neighbor dc_bl send-community extended
|
||||||
|
neighbor dc_bl maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.4.5 peer group dc_bl
|
||||||
|
neighbor 10.0.4.7 peer group dc_bl
|
||||||
|
!
|
||||||
|
! eBGP to Campus Border Leafs (default VRF)
|
||||||
|
neighbor campus_bl peer group
|
||||||
|
neighbor campus_bl remote-as 66005
|
||||||
|
neighbor campus_bl send-community extended
|
||||||
|
neighbor campus_bl maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.5.5 peer group campus_bl
|
||||||
|
neighbor 10.0.5.7 peer group campus_bl
|
||||||
|
!
|
||||||
|
! IPv4 address family (default VRF)
|
||||||
|
address-family ipv4
|
||||||
|
neighbor core_ibgp activate
|
||||||
|
neighbor dc_bl activate
|
||||||
|
neighbor campus_bl activate
|
||||||
|
network 10.0.200.2/32
|
||||||
|
!
|
||||||
|
! VRF Gold configuration - transit for inter-fabric routing
|
||||||
|
vrf gold
|
||||||
|
rd 10.0.200.2:100001
|
||||||
|
router-id 10.0.200.2
|
||||||
|
! iBGP to core1 in VRF gold (P2P)
|
||||||
|
neighbor 10.0.200.130 remote-as 65500
|
||||||
|
neighbor 10.0.200.130 next-hop-self
|
||||||
|
neighbor 10.0.200.130 send-community extended
|
||||||
|
neighbor 10.0.200.130 maximum-routes 12000 warning-only
|
||||||
|
! eBGP to DC Border Leafs in VRF gold
|
||||||
|
neighbor 10.0.14.5 remote-as 65005
|
||||||
|
neighbor 10.0.14.5 send-community extended
|
||||||
|
neighbor 10.0.14.5 maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.14.7 remote-as 65005
|
||||||
|
neighbor 10.0.14.7 send-community extended
|
||||||
|
neighbor 10.0.14.7 maximum-routes 12000 warning-only
|
||||||
|
! eBGP to Campus Border Leafs in VRF gold
|
||||||
|
neighbor 10.0.15.5 remote-as 66005
|
||||||
|
neighbor 10.0.15.5 send-community extended
|
||||||
|
neighbor 10.0.15.5 maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.15.7 remote-as 66005
|
||||||
|
neighbor 10.0.15.7 send-community extended
|
||||||
|
neighbor 10.0.15.7 maximum-routes 12000 warning-only
|
||||||
|
!
|
||||||
|
address-family ipv4
|
||||||
|
neighbor 10.0.14.5 activate
|
||||||
|
neighbor 10.0.14.7 activate
|
||||||
|
neighbor 10.0.15.5 activate
|
||||||
|
neighbor 10.0.15.7 activate
|
||||||
|
neighbor 10.0.200.130 activate
|
||||||
|
!
|
||||||
|
redistribute connected
|
||||||
|
!
|
||||||
|
end
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Access1 Configuration
|
! DC-Access1 Configuration
|
||||||
! L2-only access switch for VTEP1 (leaf1/leaf2)
|
! L2-only access switch for VTEP1 (dc-leaf1/dc-leaf2)
|
||||||
!
|
!
|
||||||
hostname access1
|
hostname dc-access1
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -28,11 +28,11 @@ spanning-tree edge-port bpduguard default
|
|||||||
!
|
!
|
||||||
! Uplink to leaf MLAG pair (Port-Channel 10)
|
! Uplink to leaf MLAG pair (Port-Channel 10)
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description leaf1-uplink
|
description dc-leaf1-uplink
|
||||||
channel-group 10 mode active
|
channel-group 10 mode active
|
||||||
!
|
!
|
||||||
interface Ethernet2
|
interface Ethernet2
|
||||||
description leaf2-uplink
|
description dc-leaf2-uplink
|
||||||
channel-group 10 mode active
|
channel-group 10 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel10
|
interface Port-Channel10
|
||||||
@@ -43,15 +43,15 @@ interface Port-Channel10
|
|||||||
!
|
!
|
||||||
! Host-facing downlink (Port-Channel 1)
|
! Host-facing downlink (Port-Channel 1)
|
||||||
interface Ethernet3
|
interface Ethernet3
|
||||||
description host1
|
description dc-server1
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Ethernet4
|
interface Ethernet4
|
||||||
description host1
|
description dc-server1
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel1
|
interface Port-Channel1
|
||||||
description host1
|
description dc-server1
|
||||||
switchport mode trunk
|
switchport mode trunk
|
||||||
switchport trunk allowed vlan 40
|
switchport trunk allowed vlan 40
|
||||||
port-channel lacp fallback timeout 5
|
port-channel lacp fallback timeout 5
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Access2 Configuration
|
! DC-Access2 Configuration
|
||||||
! L2-only access switch for VTEP2 (leaf3/leaf4)
|
! L2-only access switch for VTEP2 (dc-leaf3/dc-leaf4)
|
||||||
!
|
!
|
||||||
hostname access2
|
hostname dc-access2
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -28,11 +28,11 @@ spanning-tree edge-port bpduguard default
|
|||||||
!
|
!
|
||||||
! Uplink to leaf MLAG pair (Port-Channel 10)
|
! Uplink to leaf MLAG pair (Port-Channel 10)
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description leaf3-uplink
|
description dc-leaf3-uplink
|
||||||
channel-group 10 mode active
|
channel-group 10 mode active
|
||||||
!
|
!
|
||||||
interface Ethernet2
|
interface Ethernet2
|
||||||
description leaf4-uplink
|
description dc-leaf4-uplink
|
||||||
channel-group 10 mode active
|
channel-group 10 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel10
|
interface Port-Channel10
|
||||||
@@ -43,15 +43,15 @@ interface Port-Channel10
|
|||||||
!
|
!
|
||||||
! Host-facing downlink (Port-Channel 1)
|
! Host-facing downlink (Port-Channel 1)
|
||||||
interface Ethernet3
|
interface Ethernet3
|
||||||
description host2
|
description dc-server2
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Ethernet4
|
interface Ethernet4
|
||||||
description host2
|
description dc-server2
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel1
|
interface Port-Channel1
|
||||||
description host2
|
description dc-server2
|
||||||
switchport mode trunk
|
switchport mode trunk
|
||||||
switchport trunk allowed vlan 34
|
switchport trunk allowed vlan 34
|
||||||
port-channel lacp fallback timeout 5
|
port-channel lacp fallback timeout 5
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Access3 Configuration
|
! DC-Access3 Configuration
|
||||||
! L2-only access switch for VTEP3 (leaf5/leaf6)
|
! L2-only access switch for VTEP3 (dc-leaf5/dc-leaf6)
|
||||||
!
|
!
|
||||||
hostname access3
|
hostname dc-access3
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -28,11 +28,11 @@ spanning-tree edge-port bpduguard default
|
|||||||
!
|
!
|
||||||
! Uplink to leaf MLAG pair (Port-Channel 10)
|
! Uplink to leaf MLAG pair (Port-Channel 10)
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description leaf5-uplink
|
description dc-leaf5-uplink
|
||||||
channel-group 10 mode active
|
channel-group 10 mode active
|
||||||
!
|
!
|
||||||
interface Ethernet2
|
interface Ethernet2
|
||||||
description leaf6-uplink
|
description dc-leaf6-uplink
|
||||||
channel-group 10 mode active
|
channel-group 10 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel10
|
interface Port-Channel10
|
||||||
@@ -43,15 +43,15 @@ interface Port-Channel10
|
|||||||
!
|
!
|
||||||
! Host-facing downlink (Port-Channel 1)
|
! Host-facing downlink (Port-Channel 1)
|
||||||
interface Ethernet3
|
interface Ethernet3
|
||||||
description host3
|
description dc-server3
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Ethernet4
|
interface Ethernet4
|
||||||
description host3
|
description dc-server3
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel1
|
interface Port-Channel1
|
||||||
description host3
|
description dc-server3
|
||||||
switchport mode trunk
|
switchport mode trunk
|
||||||
switchport trunk allowed vlan 40
|
switchport trunk allowed vlan 40
|
||||||
port-channel lacp fallback timeout 5
|
port-channel lacp fallback timeout 5
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Access4 Configuration
|
! DC-Access4 Configuration
|
||||||
! L2-only access switch for VTEP4 (leaf7/leaf8)
|
! L2-only access switch for VTEP4 (dc-leaf7/dc-leaf8)
|
||||||
!
|
!
|
||||||
hostname access4
|
hostname dc-access4
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -28,11 +28,11 @@ spanning-tree edge-port bpduguard default
|
|||||||
!
|
!
|
||||||
! Uplink to leaf MLAG pair (Port-Channel 10)
|
! Uplink to leaf MLAG pair (Port-Channel 10)
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description leaf7-uplink
|
description dc-leaf7-uplink
|
||||||
channel-group 10 mode active
|
channel-group 10 mode active
|
||||||
!
|
!
|
||||||
interface Ethernet2
|
interface Ethernet2
|
||||||
description leaf8-uplink
|
description dc-leaf8-uplink
|
||||||
channel-group 10 mode active
|
channel-group 10 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel10
|
interface Port-Channel10
|
||||||
@@ -43,15 +43,15 @@ interface Port-Channel10
|
|||||||
!
|
!
|
||||||
! Host-facing downlink (Port-Channel 1)
|
! Host-facing downlink (Port-Channel 1)
|
||||||
interface Ethernet3
|
interface Ethernet3
|
||||||
description host4
|
description dc-server4
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Ethernet4
|
interface Ethernet4
|
||||||
description host4
|
description dc-server4
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel1
|
interface Port-Channel1
|
||||||
description host4
|
description dc-server4
|
||||||
switchport mode trunk
|
switchport mode trunk
|
||||||
switchport trunk allowed vlan 78
|
switchport trunk allowed vlan 78
|
||||||
port-channel lacp fallback timeout 5
|
port-channel lacp fallback timeout 5
|
||||||
238
configs/dc-border-leaf1.cfg
Normal file
238
configs/dc-border-leaf1.cfg
Normal file
@@ -0,0 +1,238 @@
|
|||||||
|
! DC-Border-Leaf1 Configuration
|
||||||
|
! DC Border Leaf - AS 65005 (MLAG pair with dc-border-leaf2)
|
||||||
|
! Provides egress from DC EVPN-VXLAN fabric to Core L3 network
|
||||||
|
!
|
||||||
|
hostname dc-border-leaf1
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! Enable IP routing
|
||||||
|
ip routing
|
||||||
|
!
|
||||||
|
! Enable routing protocols
|
||||||
|
service routing protocols model multi-agent
|
||||||
|
!
|
||||||
|
! VRF Definition
|
||||||
|
vrf instance gold
|
||||||
|
!
|
||||||
|
! VLANs
|
||||||
|
vlan 4090
|
||||||
|
name mlag-peer
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
vlan 4091
|
||||||
|
name mlag-ibgp
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.3/24
|
||||||
|
!
|
||||||
|
! MLAG Peer-link SVI
|
||||||
|
interface Vlan4090
|
||||||
|
description MLAG Peer-Link
|
||||||
|
ip address 10.0.199.246/31
|
||||||
|
no autostate
|
||||||
|
!
|
||||||
|
! iBGP Peering SVI
|
||||||
|
interface Vlan4091
|
||||||
|
description MLAG iBGP Peering
|
||||||
|
ip address 10.0.3.8/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Loopbacks
|
||||||
|
interface Loopback0
|
||||||
|
description Router-ID
|
||||||
|
ip address 10.0.250.21/32
|
||||||
|
!
|
||||||
|
interface Loopback1
|
||||||
|
description VTEP
|
||||||
|
ip address 10.0.255.15/32
|
||||||
|
!
|
||||||
|
interface Loopback2
|
||||||
|
description VRF-Gold-health
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.250.221/32
|
||||||
|
!
|
||||||
|
! MLAG Peer-link
|
||||||
|
interface Ethernet10
|
||||||
|
description mlag peer link
|
||||||
|
channel-group 999 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel999
|
||||||
|
description MLAG Peer
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk group mlag-peer
|
||||||
|
spanning-tree link-type point-to-point
|
||||||
|
!
|
||||||
|
! Underlay P2P interfaces to Spines
|
||||||
|
interface Ethernet11
|
||||||
|
description dc-spine1
|
||||||
|
no switchport
|
||||||
|
ip address 10.0.1.17/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet12
|
||||||
|
description dc-spine2
|
||||||
|
no switchport
|
||||||
|
ip address 10.0.2.17/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Uplink to Core1 (subinterfaced: .100 default VRF, .200 VRF gold)
|
||||||
|
interface Ethernet13
|
||||||
|
description core1
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet13.100
|
||||||
|
description core1-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.4.1/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet13.200
|
||||||
|
description core1-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.14.1/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Uplink to Core2 (subinterfaced: .100 default VRF, .200 VRF gold)
|
||||||
|
interface Ethernet14
|
||||||
|
description core2
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet14.100
|
||||||
|
description core2-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.4.5/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet14.200
|
||||||
|
description core2-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.14.5/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Spanning-tree
|
||||||
|
no spanning-tree vlan 4090
|
||||||
|
no spanning-tree vlan 4091
|
||||||
|
!
|
||||||
|
! Virtual MAC for Anycast Gateway
|
||||||
|
ip virtual-router mac-address c001.cafe.babe
|
||||||
|
!
|
||||||
|
! MLAG Configuration
|
||||||
|
mlag configuration
|
||||||
|
domain-id border-leafs-dc
|
||||||
|
local-interface Vlan4090
|
||||||
|
peer-address 10.0.199.247
|
||||||
|
peer-link Port-Channel999
|
||||||
|
dual-primary detection delay 10 action errdisable all-interfaces
|
||||||
|
peer-address heartbeat 172.16.0.4 vrf mgmt
|
||||||
|
!
|
||||||
|
! VXLAN Interface
|
||||||
|
interface Vxlan1
|
||||||
|
vxlan source-interface Loopback1
|
||||||
|
vxlan udp-port 4789
|
||||||
|
vxlan learn-restrict any
|
||||||
|
vxlan vrf gold vni 100001
|
||||||
|
!
|
||||||
|
! IP Routing
|
||||||
|
ip routing
|
||||||
|
ip routing vrf gold
|
||||||
|
ip route 100.64.0.0/10 172.16.0.254
|
||||||
|
!
|
||||||
|
! OSPF for loopback reachability with Core (default VRF)
|
||||||
|
router ospf 1
|
||||||
|
router-id 10.0.250.21
|
||||||
|
passive-interface default
|
||||||
|
no passive-interface Ethernet13.100
|
||||||
|
no passive-interface Ethernet14.100
|
||||||
|
network 10.0.250.21/32 area 0
|
||||||
|
network 10.0.4.0/31 area 0
|
||||||
|
network 10.0.4.4/31 area 0
|
||||||
|
max-lsa 12000
|
||||||
|
!
|
||||||
|
! BGP Configuration
|
||||||
|
router bgp 65005
|
||||||
|
router-id 10.0.250.21
|
||||||
|
no bgp default ipv4-unicast
|
||||||
|
bgp log-neighbor-changes
|
||||||
|
distance bgp 20 200 200
|
||||||
|
maximum-paths 4 ecmp 64
|
||||||
|
!
|
||||||
|
! Underlay peer-group (to DC spines)
|
||||||
|
neighbor underlay peer group
|
||||||
|
neighbor underlay remote-as 65000
|
||||||
|
neighbor underlay maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.1.16 peer group underlay
|
||||||
|
neighbor 10.0.2.16 peer group underlay
|
||||||
|
!
|
||||||
|
! iBGP peer-group (to MLAG peer)
|
||||||
|
neighbor underlay_ibgp peer group
|
||||||
|
neighbor underlay_ibgp remote-as 65005
|
||||||
|
neighbor underlay_ibgp maximum-routes 12000 warning-only
|
||||||
|
neighbor underlay_ibgp next-hop-self
|
||||||
|
neighbor 10.0.3.9 peer group underlay_ibgp
|
||||||
|
!
|
||||||
|
! EVPN peer-group (to DC spines)
|
||||||
|
neighbor evpn peer group
|
||||||
|
neighbor evpn remote-as 65000
|
||||||
|
neighbor evpn update-source Loopback0
|
||||||
|
neighbor evpn ebgp-multihop 3
|
||||||
|
neighbor evpn send-community extended
|
||||||
|
neighbor evpn maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.250.1 peer group evpn
|
||||||
|
neighbor 10.0.250.2 peer group evpn
|
||||||
|
!
|
||||||
|
! eBGP to Core routers (default VRF, underlay peer-group for /31 sessions)
|
||||||
|
neighbor core peer group
|
||||||
|
neighbor core remote-as 65500
|
||||||
|
neighbor core send-community extended
|
||||||
|
neighbor core maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.4.0 peer group core
|
||||||
|
neighbor 10.0.4.4 peer group core
|
||||||
|
!
|
||||||
|
! IPv4 address family
|
||||||
|
address-family ipv4
|
||||||
|
neighbor underlay activate
|
||||||
|
neighbor underlay_ibgp activate
|
||||||
|
neighbor core activate
|
||||||
|
network 10.0.250.21/32
|
||||||
|
network 10.0.255.15/32
|
||||||
|
!
|
||||||
|
! EVPN address family
|
||||||
|
address-family evpn
|
||||||
|
neighbor evpn activate
|
||||||
|
!
|
||||||
|
! VRF Gold configuration
|
||||||
|
vrf gold
|
||||||
|
rd 10.0.250.21:1
|
||||||
|
route-target import evpn 1:100001
|
||||||
|
route-target export evpn 1:100001
|
||||||
|
router-id 10.0.250.21
|
||||||
|
neighbor 10.0.14.0 remote-as 65500
|
||||||
|
neighbor 10.0.14.0 send-community extended
|
||||||
|
neighbor 10.0.14.0 maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.14.4 remote-as 65500
|
||||||
|
neighbor 10.0.14.4 send-community extended
|
||||||
|
neighbor 10.0.14.4 maximum-routes 12000 warning-only
|
||||||
|
!
|
||||||
|
address-family ipv4
|
||||||
|
neighbor 10.0.14.0 activate
|
||||||
|
neighbor 10.0.14.4 activate
|
||||||
|
!
|
||||||
|
redistribute connected
|
||||||
|
!
|
||||||
|
end
|
||||||
238
configs/dc-border-leaf2.cfg
Normal file
238
configs/dc-border-leaf2.cfg
Normal file
@@ -0,0 +1,238 @@
|
|||||||
|
! DC-Border-Leaf2 Configuration
|
||||||
|
! DC Border Leaf - AS 65005 (MLAG pair with dc-border-leaf1)
|
||||||
|
! Provides egress from DC EVPN-VXLAN fabric to Core L3 network
|
||||||
|
!
|
||||||
|
hostname dc-border-leaf2
|
||||||
|
!
|
||||||
|
! LLDP Management0
|
||||||
|
lldp management-address Management0
|
||||||
|
!
|
||||||
|
! enable gNMI API
|
||||||
|
management api gnmi
|
||||||
|
transport grpc default
|
||||||
|
provider eos-native
|
||||||
|
!
|
||||||
|
! admin/admin for ssh access
|
||||||
|
username admin privilege 15 role network-admin secret sha512 $6$xQktFrbdeqEhVzLM$.1wOJB25nw2fqYaSXDu6y4mo6AP9hngMCFe2vGDl84hWoz00Q.4unoEBqspNI0HEoRz.OZhdBHqQv12KABf0B0
|
||||||
|
!
|
||||||
|
! Enable IP routing
|
||||||
|
ip routing
|
||||||
|
!
|
||||||
|
! Enable routing protocols
|
||||||
|
service routing protocols model multi-agent
|
||||||
|
!
|
||||||
|
! VRF Definition
|
||||||
|
vrf instance gold
|
||||||
|
!
|
||||||
|
! VLANs
|
||||||
|
vlan 4090
|
||||||
|
name mlag-peer
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
vlan 4091
|
||||||
|
name mlag-ibgp
|
||||||
|
trunk group mlag-peer
|
||||||
|
!
|
||||||
|
! Management interface
|
||||||
|
interface Management0
|
||||||
|
ip address 172.16.0.4/24
|
||||||
|
!
|
||||||
|
! MLAG Peer-link SVI
|
||||||
|
interface Vlan4090
|
||||||
|
description MLAG Peer-Link
|
||||||
|
ip address 10.0.199.247/31
|
||||||
|
no autostate
|
||||||
|
!
|
||||||
|
! iBGP Peering SVI
|
||||||
|
interface Vlan4091
|
||||||
|
description MLAG iBGP Peering
|
||||||
|
ip address 10.0.3.9/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Loopbacks
|
||||||
|
interface Loopback0
|
||||||
|
description Router-ID
|
||||||
|
ip address 10.0.250.22/32
|
||||||
|
!
|
||||||
|
interface Loopback1
|
||||||
|
description VTEP
|
||||||
|
ip address 10.0.255.15/32
|
||||||
|
!
|
||||||
|
interface Loopback2
|
||||||
|
description VRF-Gold-health
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.250.222/32
|
||||||
|
!
|
||||||
|
! MLAG Peer-link
|
||||||
|
interface Ethernet10
|
||||||
|
description mlag peer link
|
||||||
|
channel-group 999 mode active
|
||||||
|
!
|
||||||
|
interface Port-Channel999
|
||||||
|
description MLAG Peer
|
||||||
|
switchport mode trunk
|
||||||
|
switchport trunk group mlag-peer
|
||||||
|
spanning-tree link-type point-to-point
|
||||||
|
!
|
||||||
|
! Underlay P2P interfaces to Spines
|
||||||
|
interface Ethernet11
|
||||||
|
description dc-spine1
|
||||||
|
no switchport
|
||||||
|
ip address 10.0.1.19/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet12
|
||||||
|
description dc-spine2
|
||||||
|
no switchport
|
||||||
|
ip address 10.0.2.19/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Uplink to Core1 (subinterfaced: .100 default VRF, .200 VRF gold)
|
||||||
|
interface Ethernet13
|
||||||
|
description core1
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet13.100
|
||||||
|
description core1-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.4.3/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet13.200
|
||||||
|
description core1-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.14.3/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Uplink to Core2 (subinterfaced: .100 default VRF, .200 VRF gold)
|
||||||
|
interface Ethernet14
|
||||||
|
description core2
|
||||||
|
no switchport
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet14.100
|
||||||
|
description core2-underlay
|
||||||
|
encapsulation dot1q vlan 100
|
||||||
|
ip address 10.0.4.7/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet14.200
|
||||||
|
description core2-vrf-gold
|
||||||
|
encapsulation dot1q vlan 200
|
||||||
|
vrf gold
|
||||||
|
ip address 10.0.14.7/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
! Spanning-tree
|
||||||
|
no spanning-tree vlan 4090
|
||||||
|
no spanning-tree vlan 4091
|
||||||
|
!
|
||||||
|
! Virtual MAC for Anycast Gateway
|
||||||
|
ip virtual-router mac-address c001.cafe.babe
|
||||||
|
!
|
||||||
|
! MLAG Configuration
|
||||||
|
mlag configuration
|
||||||
|
domain-id border-leafs-dc
|
||||||
|
local-interface Vlan4090
|
||||||
|
peer-address 10.0.199.246
|
||||||
|
peer-link Port-Channel999
|
||||||
|
dual-primary detection delay 10 action errdisable all-interfaces
|
||||||
|
peer-address heartbeat 172.16.0.3 vrf mgmt
|
||||||
|
!
|
||||||
|
! VXLAN Interface
|
||||||
|
interface Vxlan1
|
||||||
|
vxlan source-interface Loopback1
|
||||||
|
vxlan udp-port 4789
|
||||||
|
vxlan learn-restrict any
|
||||||
|
vxlan vrf gold vni 100001
|
||||||
|
!
|
||||||
|
! IP Routing
|
||||||
|
ip routing
|
||||||
|
ip routing vrf gold
|
||||||
|
ip route 100.64.0.0/10 172.16.0.254
|
||||||
|
!
|
||||||
|
! OSPF for loopback reachability with Core (default VRF)
|
||||||
|
router ospf 1
|
||||||
|
router-id 10.0.250.22
|
||||||
|
passive-interface default
|
||||||
|
no passive-interface Ethernet13.100
|
||||||
|
no passive-interface Ethernet14.100
|
||||||
|
network 10.0.250.22/32 area 0
|
||||||
|
network 10.0.4.2/31 area 0
|
||||||
|
network 10.0.4.6/31 area 0
|
||||||
|
max-lsa 12000
|
||||||
|
!
|
||||||
|
! BGP Configuration
|
||||||
|
router bgp 65005
|
||||||
|
router-id 10.0.250.22
|
||||||
|
no bgp default ipv4-unicast
|
||||||
|
bgp log-neighbor-changes
|
||||||
|
distance bgp 20 200 200
|
||||||
|
maximum-paths 4 ecmp 64
|
||||||
|
!
|
||||||
|
! Underlay peer-group (to DC spines)
|
||||||
|
neighbor underlay peer group
|
||||||
|
neighbor underlay remote-as 65000
|
||||||
|
neighbor underlay maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.1.18 peer group underlay
|
||||||
|
neighbor 10.0.2.18 peer group underlay
|
||||||
|
!
|
||||||
|
! iBGP peer-group (to MLAG peer)
|
||||||
|
neighbor underlay_ibgp peer group
|
||||||
|
neighbor underlay_ibgp remote-as 65005
|
||||||
|
neighbor underlay_ibgp maximum-routes 12000 warning-only
|
||||||
|
neighbor underlay_ibgp next-hop-self
|
||||||
|
neighbor 10.0.3.8 peer group underlay_ibgp
|
||||||
|
!
|
||||||
|
! EVPN peer-group (to DC spines)
|
||||||
|
neighbor evpn peer group
|
||||||
|
neighbor evpn remote-as 65000
|
||||||
|
neighbor evpn update-source Loopback0
|
||||||
|
neighbor evpn ebgp-multihop 3
|
||||||
|
neighbor evpn send-community extended
|
||||||
|
neighbor evpn maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.250.1 peer group evpn
|
||||||
|
neighbor 10.0.250.2 peer group evpn
|
||||||
|
!
|
||||||
|
! eBGP to Core routers (default VRF)
|
||||||
|
neighbor core peer group
|
||||||
|
neighbor core remote-as 65500
|
||||||
|
neighbor core send-community extended
|
||||||
|
neighbor core maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.4.2 peer group core
|
||||||
|
neighbor 10.0.4.6 peer group core
|
||||||
|
!
|
||||||
|
! IPv4 address family
|
||||||
|
address-family ipv4
|
||||||
|
neighbor underlay activate
|
||||||
|
neighbor underlay_ibgp activate
|
||||||
|
neighbor core activate
|
||||||
|
network 10.0.250.22/32
|
||||||
|
network 10.0.255.15/32
|
||||||
|
!
|
||||||
|
! EVPN address family
|
||||||
|
address-family evpn
|
||||||
|
neighbor evpn activate
|
||||||
|
!
|
||||||
|
! VRF Gold configuration
|
||||||
|
vrf gold
|
||||||
|
rd 10.0.250.22:1
|
||||||
|
route-target import evpn 1:100001
|
||||||
|
route-target export evpn 1:100001
|
||||||
|
router-id 10.0.250.22
|
||||||
|
neighbor 10.0.14.2 remote-as 65500
|
||||||
|
neighbor 10.0.14.2 send-community extended
|
||||||
|
neighbor 10.0.14.2 maximum-routes 12000 warning-only
|
||||||
|
neighbor 10.0.14.6 remote-as 65500
|
||||||
|
neighbor 10.0.14.6 send-community extended
|
||||||
|
neighbor 10.0.14.6 maximum-routes 12000 warning-only
|
||||||
|
!
|
||||||
|
address-family ipv4
|
||||||
|
neighbor 10.0.14.2 activate
|
||||||
|
neighbor 10.0.14.6 activate
|
||||||
|
!
|
||||||
|
redistribute connected
|
||||||
|
!
|
||||||
|
end
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Leaf1 Configuration
|
! DC-Leaf1 Configuration
|
||||||
! VTEP1 - AS 65001
|
! VTEP1 - AS 65001
|
||||||
!
|
!
|
||||||
hostname leaf1
|
hostname dc-leaf1
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -67,24 +67,24 @@ interface Port-Channel999
|
|||||||
!
|
!
|
||||||
! Underlay P2P interfaces to Spines
|
! Underlay P2P interfaces to Spines
|
||||||
interface Ethernet11
|
interface Ethernet11
|
||||||
description spine1
|
description dc-spine1
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.1/31
|
ip address 10.0.1.1/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet12
|
interface Ethernet12
|
||||||
description spine2
|
description dc-spine2
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.1/31
|
ip address 10.0.2.1/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
! Access-facing interface (MLAG with LACP)
|
! Access-facing interface (MLAG with LACP)
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description access1
|
description dc-access1
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel1
|
interface Port-Channel1
|
||||||
description access1
|
description dc-access1
|
||||||
switchport mode trunk
|
switchport mode trunk
|
||||||
switchport trunk allowed vlan 40
|
switchport trunk allowed vlan 40
|
||||||
mlag 1
|
mlag 1
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Leaf2 Configuration
|
! DC-Leaf2 Configuration
|
||||||
! VTEP1 - AS 65001
|
! VTEP1 - AS 65001
|
||||||
!
|
!
|
||||||
hostname leaf2
|
hostname dc-leaf2
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -67,24 +67,24 @@ interface Port-Channel999
|
|||||||
!
|
!
|
||||||
! Underlay P2P interfaces to Spines
|
! Underlay P2P interfaces to Spines
|
||||||
interface Ethernet11
|
interface Ethernet11
|
||||||
description spine1
|
description dc-spine1
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.3/31
|
ip address 10.0.1.3/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet12
|
interface Ethernet12
|
||||||
description spine2
|
description dc-spine2
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.3/31
|
ip address 10.0.2.3/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
! Access-facing interface (MLAG with LACP)
|
! Access-facing interface (MLAG with LACP)
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description access1
|
description dc-access1
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel1
|
interface Port-Channel1
|
||||||
description access1
|
description dc-access1
|
||||||
switchport mode trunk
|
switchport mode trunk
|
||||||
switchport trunk allowed vlan 40
|
switchport trunk allowed vlan 40
|
||||||
mlag 1
|
mlag 1
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Leaf3 Configuration
|
! DC-Leaf3 Configuration
|
||||||
! VTEP2 - AS 65002
|
! VTEP2 - AS 65002
|
||||||
!
|
!
|
||||||
hostname leaf3
|
hostname dc-leaf3
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -80,24 +80,24 @@ interface Port-Channel999
|
|||||||
!
|
!
|
||||||
! Underlay P2P interfaces to Spines
|
! Underlay P2P interfaces to Spines
|
||||||
interface Ethernet11
|
interface Ethernet11
|
||||||
description spine1
|
description dc-spine1
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.5/31
|
ip address 10.0.1.5/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet12
|
interface Ethernet12
|
||||||
description spine2
|
description dc-spine2
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.5/31
|
ip address 10.0.2.5/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
! Access-facing interface (MLAG with LACP)
|
! Access-facing interface (MLAG with LACP)
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description access2
|
description dc-access2
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel1
|
interface Port-Channel1
|
||||||
description access2
|
description dc-access2
|
||||||
switchport mode trunk
|
switchport mode trunk
|
||||||
switchport trunk allowed vlan 34
|
switchport trunk allowed vlan 34
|
||||||
mlag 1
|
mlag 1
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Leaf4 Configuration
|
! DC-Leaf4 Configuration
|
||||||
! VTEP2 - AS 65002
|
! VTEP2 - AS 65002
|
||||||
!
|
!
|
||||||
hostname leaf4
|
hostname dc-leaf4
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -80,24 +80,24 @@ interface Port-Channel999
|
|||||||
!
|
!
|
||||||
! Underlay P2P interfaces to Spines
|
! Underlay P2P interfaces to Spines
|
||||||
interface Ethernet11
|
interface Ethernet11
|
||||||
description spine1
|
description dc-spine1
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.7/31
|
ip address 10.0.1.7/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet12
|
interface Ethernet12
|
||||||
description spine2
|
description dc-spine2
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.7/31
|
ip address 10.0.2.7/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
! Access-facing interface (MLAG with LACP)
|
! Access-facing interface (MLAG with LACP)
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description access2
|
description dc-access2
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel1
|
interface Port-Channel1
|
||||||
description access2
|
description dc-access2
|
||||||
switchport mode trunk
|
switchport mode trunk
|
||||||
switchport trunk allowed vlan 34
|
switchport trunk allowed vlan 34
|
||||||
mlag 1
|
mlag 1
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Leaf5 Configuration
|
! DC-Leaf5 Configuration
|
||||||
! VTEP3 - AS 65003
|
! VTEP3 - AS 65003
|
||||||
!
|
!
|
||||||
hostname leaf5
|
hostname dc-leaf5
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -68,24 +68,24 @@ interface Port-Channel999
|
|||||||
!
|
!
|
||||||
! Underlay P2P interfaces to Spines
|
! Underlay P2P interfaces to Spines
|
||||||
interface Ethernet11
|
interface Ethernet11
|
||||||
description spine1
|
description dc-spine1
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.9/31
|
ip address 10.0.1.9/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet12
|
interface Ethernet12
|
||||||
description spine2
|
description dc-spine2
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.9/31
|
ip address 10.0.2.9/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
! Access-facing interface (MLAG with LACP)
|
! Access-facing interface (MLAG with LACP)
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description access3
|
description dc-access3
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel1
|
interface Port-Channel1
|
||||||
description access3
|
description dc-access3
|
||||||
switchport mode trunk
|
switchport mode trunk
|
||||||
switchport trunk allowed vlan 40
|
switchport trunk allowed vlan 40
|
||||||
mlag 1
|
mlag 1
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Leaf6 Configuration
|
! DC-Leaf6 Configuration
|
||||||
! VTEP3 - AS 65003
|
! VTEP3 - AS 65003
|
||||||
!
|
!
|
||||||
hostname leaf6
|
hostname dc-leaf6
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -67,24 +67,24 @@ interface Port-Channel999
|
|||||||
!
|
!
|
||||||
! Underlay P2P interfaces to Spines
|
! Underlay P2P interfaces to Spines
|
||||||
interface Ethernet11
|
interface Ethernet11
|
||||||
description spine1
|
description dc-spine1
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.11/31
|
ip address 10.0.1.11/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet12
|
interface Ethernet12
|
||||||
description spine2
|
description dc-spine2
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.11/31
|
ip address 10.0.2.11/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
! Access-facing interface (MLAG with LACP)
|
! Access-facing interface (MLAG with LACP)
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description access3
|
description dc-access3
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel1
|
interface Port-Channel1
|
||||||
description access3
|
description dc-access3
|
||||||
switchport mode trunk
|
switchport mode trunk
|
||||||
switchport trunk allowed vlan 40
|
switchport trunk allowed vlan 40
|
||||||
mlag 1
|
mlag 1
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Leaf7 Configuration
|
! DC-Leaf7 Configuration
|
||||||
! VTEP4 - AS 65004
|
! VTEP4 - AS 65004
|
||||||
!
|
!
|
||||||
hostname leaf7
|
hostname dc-leaf7
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -79,24 +79,24 @@ interface Port-Channel999
|
|||||||
!
|
!
|
||||||
! Underlay P2P interfaces to Spines
|
! Underlay P2P interfaces to Spines
|
||||||
interface Ethernet11
|
interface Ethernet11
|
||||||
description spine1
|
description dc-spine1
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.13/31
|
ip address 10.0.1.13/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet12
|
interface Ethernet12
|
||||||
description spine2
|
description dc-spine2
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.13/31
|
ip address 10.0.2.13/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
! Access-facing interface (MLAG with LACP)
|
! Access-facing interface (MLAG with LACP)
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description access4
|
description dc-access4
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel1
|
interface Port-Channel1
|
||||||
description access4
|
description dc-access4
|
||||||
switchport mode trunk
|
switchport mode trunk
|
||||||
switchport trunk allowed vlan 78
|
switchport trunk allowed vlan 78
|
||||||
mlag 1
|
mlag 1
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Leaf8 Configuration
|
! DC-Leaf8 Configuration
|
||||||
! VTEP4 - AS 65004
|
! VTEP4 - AS 65004
|
||||||
!
|
!
|
||||||
hostname leaf8
|
hostname dc-leaf8
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -79,24 +79,24 @@ interface Port-Channel999
|
|||||||
!
|
!
|
||||||
! Underlay P2P interfaces to Spines
|
! Underlay P2P interfaces to Spines
|
||||||
interface Ethernet11
|
interface Ethernet11
|
||||||
description spine1
|
description dc-spine1
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.15/31
|
ip address 10.0.1.15/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet12
|
interface Ethernet12
|
||||||
description spine2
|
description dc-spine2
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.15/31
|
ip address 10.0.2.15/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
! Access-facing interface (MLAG with LACP)
|
! Access-facing interface (MLAG with LACP)
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description access4
|
description dc-access4
|
||||||
channel-group 1 mode active
|
channel-group 1 mode active
|
||||||
!
|
!
|
||||||
interface Port-Channel1
|
interface Port-Channel1
|
||||||
description access4
|
description dc-access4
|
||||||
switchport mode trunk
|
switchport mode trunk
|
||||||
switchport trunk allowed vlan 78
|
switchport trunk allowed vlan 78
|
||||||
mlag 1
|
mlag 1
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Spine1 Configuration
|
! DC-Spine1 Configuration
|
||||||
! BGP EVPN Spine - AS 65000
|
! BGP EVPN Spine - AS 65000
|
||||||
!
|
!
|
||||||
hostname spine1
|
hostname dc-spine1
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -34,53 +34,66 @@ interface Loopback0
|
|||||||
!
|
!
|
||||||
! Underlay P2P interfaces to Leafs
|
! Underlay P2P interfaces to Leafs
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description leaf1
|
description dc-leaf1
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.0/31
|
ip address 10.0.1.0/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet2
|
interface Ethernet2
|
||||||
description leaf2
|
description dc-leaf2
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.2/31
|
ip address 10.0.1.2/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet3
|
interface Ethernet3
|
||||||
description leaf3
|
description dc-leaf3
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.4/31
|
ip address 10.0.1.4/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet4
|
interface Ethernet4
|
||||||
description leaf4
|
description dc-leaf4
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.6/31
|
ip address 10.0.1.6/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet5
|
interface Ethernet5
|
||||||
description leaf5
|
description dc-leaf5
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.8/31
|
ip address 10.0.1.8/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet6
|
interface Ethernet6
|
||||||
description leaf6
|
description dc-leaf6
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.10/31
|
ip address 10.0.1.10/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet7
|
interface Ethernet7
|
||||||
description leaf7
|
description dc-leaf7
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.12/31
|
ip address 10.0.1.12/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet8
|
interface Ethernet8
|
||||||
description leaf8
|
description dc-leaf8
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.1.14/31
|
ip address 10.0.1.14/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
|
! Underlay P2P interfaces to DC Border Leafs
|
||||||
|
interface Ethernet9
|
||||||
|
description dc-border-leaf1
|
||||||
|
no switchport
|
||||||
|
ip address 10.0.1.16/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet10
|
||||||
|
description dc-border-leaf2
|
||||||
|
no switchport
|
||||||
|
ip address 10.0.1.18/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
! BGP Configuration
|
! BGP Configuration
|
||||||
router bgp 65000
|
router bgp 65000
|
||||||
router-id 10.0.250.1
|
router-id 10.0.250.1
|
||||||
@@ -98,6 +111,8 @@ router bgp 65000
|
|||||||
neighbor 10.0.1.11 remote-as 65003
|
neighbor 10.0.1.11 remote-as 65003
|
||||||
neighbor 10.0.1.13 remote-as 65004
|
neighbor 10.0.1.13 remote-as 65004
|
||||||
neighbor 10.0.1.15 remote-as 65004
|
neighbor 10.0.1.15 remote-as 65004
|
||||||
|
neighbor 10.0.1.17 remote-as 65005
|
||||||
|
neighbor 10.0.1.19 remote-as 65005
|
||||||
!
|
!
|
||||||
! EVPN peer-group configuration
|
! EVPN peer-group configuration
|
||||||
neighbor evpn peer group
|
neighbor evpn peer group
|
||||||
@@ -125,6 +140,12 @@ router bgp 65000
|
|||||||
neighbor 10.0.250.18 peer group evpn
|
neighbor 10.0.250.18 peer group evpn
|
||||||
neighbor 10.0.250.18 remote-as 65004
|
neighbor 10.0.250.18 remote-as 65004
|
||||||
!
|
!
|
||||||
|
! EVPN neighbors (to DC border-leaf loopbacks)
|
||||||
|
neighbor 10.0.250.21 peer group evpn
|
||||||
|
neighbor 10.0.250.21 remote-as 65005
|
||||||
|
neighbor 10.0.250.22 peer group evpn
|
||||||
|
neighbor 10.0.250.22 remote-as 65005
|
||||||
|
!
|
||||||
! IPv4 address family
|
! IPv4 address family
|
||||||
address-family ipv4
|
address-family ipv4
|
||||||
neighbor 10.0.1.1 activate
|
neighbor 10.0.1.1 activate
|
||||||
@@ -135,6 +156,8 @@ router bgp 65000
|
|||||||
neighbor 10.0.1.11 activate
|
neighbor 10.0.1.11 activate
|
||||||
neighbor 10.0.1.13 activate
|
neighbor 10.0.1.13 activate
|
||||||
neighbor 10.0.1.15 activate
|
neighbor 10.0.1.15 activate
|
||||||
|
neighbor 10.0.1.17 activate
|
||||||
|
neighbor 10.0.1.19 activate
|
||||||
network 10.0.250.1/32
|
network 10.0.250.1/32
|
||||||
!
|
!
|
||||||
! EVPN address family
|
! EVPN address family
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
! Spine2 Configuration
|
! DC-Spine2 Configuration
|
||||||
! BGP EVPN Spine - AS 65000
|
! BGP EVPN Spine - AS 65000
|
||||||
!
|
!
|
||||||
hostname spine2
|
hostname dc-spine2
|
||||||
!
|
!
|
||||||
! LLDP Management0
|
! LLDP Management0
|
||||||
lldp management-address Management0
|
lldp management-address Management0
|
||||||
@@ -34,53 +34,66 @@ interface Loopback0
|
|||||||
!
|
!
|
||||||
! Underlay P2P interfaces to Leafs
|
! Underlay P2P interfaces to Leafs
|
||||||
interface Ethernet1
|
interface Ethernet1
|
||||||
description leaf1
|
description dc-leaf1
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.0/31
|
ip address 10.0.2.0/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet2
|
interface Ethernet2
|
||||||
description leaf2
|
description dc-leaf2
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.2/31
|
ip address 10.0.2.2/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet3
|
interface Ethernet3
|
||||||
description leaf3
|
description dc-leaf3
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.4/31
|
ip address 10.0.2.4/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet4
|
interface Ethernet4
|
||||||
description leaf4
|
description dc-leaf4
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.6/31
|
ip address 10.0.2.6/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet5
|
interface Ethernet5
|
||||||
description leaf5
|
description dc-leaf5
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.8/31
|
ip address 10.0.2.8/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet6
|
interface Ethernet6
|
||||||
description leaf6
|
description dc-leaf6
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.10/31
|
ip address 10.0.2.10/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet7
|
interface Ethernet7
|
||||||
description leaf7
|
description dc-leaf7
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.12/31
|
ip address 10.0.2.12/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
interface Ethernet8
|
interface Ethernet8
|
||||||
description leaf8
|
description dc-leaf8
|
||||||
no switchport
|
no switchport
|
||||||
ip address 10.0.2.14/31
|
ip address 10.0.2.14/31
|
||||||
mtu 9214
|
mtu 9214
|
||||||
!
|
!
|
||||||
|
! Underlay P2P interfaces to DC Border Leafs
|
||||||
|
interface Ethernet9
|
||||||
|
description dc-border-leaf1
|
||||||
|
no switchport
|
||||||
|
ip address 10.0.2.16/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
|
interface Ethernet10
|
||||||
|
description dc-border-leaf2
|
||||||
|
no switchport
|
||||||
|
ip address 10.0.2.18/31
|
||||||
|
mtu 9214
|
||||||
|
!
|
||||||
! BGP Configuration
|
! BGP Configuration
|
||||||
router bgp 65000
|
router bgp 65000
|
||||||
router-id 10.0.250.2
|
router-id 10.0.250.2
|
||||||
@@ -98,6 +111,8 @@ router bgp 65000
|
|||||||
neighbor 10.0.2.11 remote-as 65003
|
neighbor 10.0.2.11 remote-as 65003
|
||||||
neighbor 10.0.2.13 remote-as 65004
|
neighbor 10.0.2.13 remote-as 65004
|
||||||
neighbor 10.0.2.15 remote-as 65004
|
neighbor 10.0.2.15 remote-as 65004
|
||||||
|
neighbor 10.0.2.17 remote-as 65005
|
||||||
|
neighbor 10.0.2.19 remote-as 65005
|
||||||
!
|
!
|
||||||
! EVPN peer-group configuration
|
! EVPN peer-group configuration
|
||||||
neighbor evpn peer group
|
neighbor evpn peer group
|
||||||
@@ -125,6 +140,12 @@ router bgp 65000
|
|||||||
neighbor 10.0.250.18 peer group evpn
|
neighbor 10.0.250.18 peer group evpn
|
||||||
neighbor 10.0.250.18 remote-as 65004
|
neighbor 10.0.250.18 remote-as 65004
|
||||||
!
|
!
|
||||||
|
! EVPN neighbors (to DC border-leaf loopbacks)
|
||||||
|
neighbor 10.0.250.21 peer group evpn
|
||||||
|
neighbor 10.0.250.21 remote-as 65005
|
||||||
|
neighbor 10.0.250.22 peer group evpn
|
||||||
|
neighbor 10.0.250.22 remote-as 65005
|
||||||
|
!
|
||||||
! IPv4 address family
|
! IPv4 address family
|
||||||
address-family ipv4
|
address-family ipv4
|
||||||
neighbor 10.0.2.1 activate
|
neighbor 10.0.2.1 activate
|
||||||
@@ -135,6 +156,8 @@ router bgp 65000
|
|||||||
neighbor 10.0.2.11 activate
|
neighbor 10.0.2.11 activate
|
||||||
neighbor 10.0.2.13 activate
|
neighbor 10.0.2.13 activate
|
||||||
neighbor 10.0.2.15 activate
|
neighbor 10.0.2.15 activate
|
||||||
|
neighbor 10.0.2.17 activate
|
||||||
|
neighbor 10.0.2.19 activate
|
||||||
network 10.0.250.2/32
|
network 10.0.250.2/32
|
||||||
!
|
!
|
||||||
! EVPN address family
|
! EVPN address family
|
||||||
@@ -8,87 +8,102 @@ mgmt:
|
|||||||
topology:
|
topology:
|
||||||
kinds:
|
kinds:
|
||||||
arista_ceos:
|
arista_ceos:
|
||||||
image: ceos:4.35.0F
|
image: gitea.arnodo.fr/damien/ceos:4.36.0F
|
||||||
|
|
||||||
nodes:
|
nodes:
|
||||||
# Spine Switches
|
# =====================================================
|
||||||
spine1:
|
# DATACENTER FABRIC
|
||||||
|
# =====================================================
|
||||||
|
|
||||||
|
# DC Spine Switches (AS 65000)
|
||||||
|
dc-spine1:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.1
|
mgmt-ipv4: 172.16.0.1
|
||||||
startup-config: configs/spine1.cfg
|
startup-config: configs/dc-spine1.cfg
|
||||||
|
|
||||||
spine2:
|
dc-spine2:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.2
|
mgmt-ipv4: 172.16.0.2
|
||||||
startup-config: configs/spine2.cfg
|
startup-config: configs/dc-spine2.cfg
|
||||||
|
|
||||||
# Leaf Switches - VTEP1 (AS 65001)
|
# DC Leaf Switches - VTEP1 (AS 65001)
|
||||||
leaf1:
|
dc-leaf1:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.25
|
mgmt-ipv4: 172.16.0.25
|
||||||
startup-config: configs/leaf1.cfg
|
startup-config: configs/dc-leaf1.cfg
|
||||||
|
|
||||||
leaf2:
|
dc-leaf2:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.50
|
mgmt-ipv4: 172.16.0.50
|
||||||
startup-config: configs/leaf2.cfg
|
startup-config: configs/dc-leaf2.cfg
|
||||||
|
|
||||||
# Leaf Switches - VTEP2 (AS 65002)
|
# DC Leaf Switches - VTEP2 (AS 65002)
|
||||||
leaf3:
|
dc-leaf3:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.27
|
mgmt-ipv4: 172.16.0.27
|
||||||
startup-config: configs/leaf3.cfg
|
startup-config: configs/dc-leaf3.cfg
|
||||||
|
|
||||||
leaf4:
|
dc-leaf4:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.28
|
mgmt-ipv4: 172.16.0.28
|
||||||
startup-config: configs/leaf4.cfg
|
startup-config: configs/dc-leaf4.cfg
|
||||||
|
|
||||||
# Leaf Switches - VTEP3 (AS 65003)
|
# DC Leaf Switches - VTEP3 (AS 65003)
|
||||||
leaf5:
|
dc-leaf5:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.29
|
mgmt-ipv4: 172.16.0.29
|
||||||
startup-config: configs/leaf5.cfg
|
startup-config: configs/dc-leaf5.cfg
|
||||||
|
|
||||||
leaf6:
|
dc-leaf6:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.30
|
mgmt-ipv4: 172.16.0.30
|
||||||
startup-config: configs/leaf6.cfg
|
startup-config: configs/dc-leaf6.cfg
|
||||||
|
|
||||||
# Leaf Switches - VTEP4 (AS 65004)
|
# DC Leaf Switches - VTEP4 (AS 65004)
|
||||||
leaf7:
|
dc-leaf7:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.31
|
mgmt-ipv4: 172.16.0.31
|
||||||
startup-config: configs/leaf7.cfg
|
startup-config: configs/dc-leaf7.cfg
|
||||||
|
|
||||||
leaf8:
|
dc-leaf8:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.32
|
mgmt-ipv4: 172.16.0.32
|
||||||
startup-config: configs/leaf8.cfg
|
startup-config: configs/dc-leaf8.cfg
|
||||||
|
|
||||||
# Access Switches - L2 only
|
# DC Border Leafs - MLAG pair (AS 65005)
|
||||||
access1:
|
dc-border-leaf1:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.3
|
||||||
|
startup-config: configs/dc-border-leaf1.cfg
|
||||||
|
|
||||||
|
dc-border-leaf2:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.4
|
||||||
|
startup-config: configs/dc-border-leaf2.cfg
|
||||||
|
|
||||||
|
# DC Access Switches - L2 only
|
||||||
|
dc-access1:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.41
|
mgmt-ipv4: 172.16.0.41
|
||||||
startup-config: configs/access1.cfg
|
startup-config: configs/dc-access1.cfg
|
||||||
|
|
||||||
access2:
|
dc-access2:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.42
|
mgmt-ipv4: 172.16.0.42
|
||||||
startup-config: configs/access2.cfg
|
startup-config: configs/dc-access2.cfg
|
||||||
|
|
||||||
access3:
|
dc-access3:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.43
|
mgmt-ipv4: 172.16.0.43
|
||||||
startup-config: configs/access3.cfg
|
startup-config: configs/dc-access3.cfg
|
||||||
|
|
||||||
access4:
|
dc-access4:
|
||||||
kind: arista_ceos
|
kind: arista_ceos
|
||||||
mgmt-ipv4: 172.16.0.44
|
mgmt-ipv4: 172.16.0.44
|
||||||
startup-config: configs/access4.cfg
|
startup-config: configs/dc-access4.cfg
|
||||||
|
|
||||||
# Host devices - DUAL-HOMED with LACP bonding to access switches
|
# DC Host devices - dual-homed with LACP bonding
|
||||||
host1:
|
dc-server1:
|
||||||
kind: linux
|
kind: linux
|
||||||
mgmt-ipv4: 172.16.0.101
|
mgmt-ipv4: 172.16.0.101
|
||||||
image: ghcr.io/hellt/network-multitool
|
image: ghcr.io/hellt/network-multitool
|
||||||
@@ -109,7 +124,7 @@ topology:
|
|||||||
- ip link set bond0.40 up
|
- ip link set bond0.40 up
|
||||||
- ip addr add 10.40.40.101/24 dev bond0.40
|
- ip addr add 10.40.40.101/24 dev bond0.40
|
||||||
|
|
||||||
host2:
|
dc-server2:
|
||||||
kind: linux
|
kind: linux
|
||||||
mgmt-ipv4: 172.16.0.102
|
mgmt-ipv4: 172.16.0.102
|
||||||
image: ghcr.io/hellt/network-multitool
|
image: ghcr.io/hellt/network-multitool
|
||||||
@@ -130,8 +145,9 @@ topology:
|
|||||||
- ip link set bond0.34 up
|
- ip link set bond0.34 up
|
||||||
- ip addr add 10.34.34.102/24 dev bond0.34
|
- ip addr add 10.34.34.102/24 dev bond0.34
|
||||||
- ip route add 10.78.78.0/24 via 10.34.34.1
|
- ip route add 10.78.78.0/24 via 10.34.34.1
|
||||||
|
- ip route add 10.60.0.0/16 via 10.34.34.1
|
||||||
|
|
||||||
host3:
|
dc-server3:
|
||||||
kind: linux
|
kind: linux
|
||||||
mgmt-ipv4: 172.16.0.103
|
mgmt-ipv4: 172.16.0.103
|
||||||
image: ghcr.io/hellt/network-multitool
|
image: ghcr.io/hellt/network-multitool
|
||||||
@@ -152,14 +168,14 @@ topology:
|
|||||||
- ip link set bond0.40 up
|
- ip link set bond0.40 up
|
||||||
- ip addr add 10.40.40.103/24 dev bond0.40
|
- ip addr add 10.40.40.103/24 dev bond0.40
|
||||||
|
|
||||||
host4:
|
dc-server4:
|
||||||
kind: linux
|
kind: linux
|
||||||
mgmt-ipv4: 172.16.0.104
|
mgmt-ipv4: 172.16.0.104
|
||||||
image: ghcr.io/hellt/network-multitool
|
image: ghcr.io/hellt/network-multitool
|
||||||
cap-add:
|
cap-add:
|
||||||
- NET_ADMIN
|
- NET_ADMIN
|
||||||
binds:
|
binds:
|
||||||
- hosts/host4_interfaces:/etc/network/interfaces
|
- hosts/dc-server4_interfaces:/etc/network/interfaces
|
||||||
exec:
|
exec:
|
||||||
- ip link add bond0 type bond mode 802.3ad
|
- ip link add bond0 type bond mode 802.3ad
|
||||||
- ip link set dev bond0 type bond xmit_hash_policy layer3+4
|
- ip link set dev bond0 type bond xmit_hash_policy layer3+4
|
||||||
@@ -175,64 +191,211 @@ topology:
|
|||||||
- ip link set bond0.78 up
|
- ip link set bond0.78 up
|
||||||
- ip addr add 10.78.78.104/24 dev bond0.78
|
- ip addr add 10.78.78.104/24 dev bond0.78
|
||||||
- ip route add 10.34.34.0/24 via 10.78.78.1
|
- ip route add 10.34.34.0/24 via 10.78.78.1
|
||||||
|
- ip route add 10.60.0.0/16 via 10.78.78.1
|
||||||
|
|
||||||
|
# =====================================================
|
||||||
|
# CORE L3 (inter-fabric transit)
|
||||||
|
# =====================================================
|
||||||
|
|
||||||
|
# Core routers (AS 65500, iBGP between them)
|
||||||
|
core1:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.10
|
||||||
|
startup-config: configs/core1.cfg
|
||||||
|
|
||||||
|
core2:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.11
|
||||||
|
startup-config: configs/core2.cfg
|
||||||
|
|
||||||
|
# =====================================================
|
||||||
|
# CAMPUS FABRIC
|
||||||
|
# =====================================================
|
||||||
|
|
||||||
|
# Campus Spines (AS 66000)
|
||||||
|
campus-spine1:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.20
|
||||||
|
startup-config: configs/campus-spine1.cfg
|
||||||
|
|
||||||
|
campus-spine2:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.21
|
||||||
|
startup-config: configs/campus-spine2.cfg
|
||||||
|
|
||||||
|
# Campus Border Leafs - MLAG pair (AS 66005)
|
||||||
|
campus-border-leaf1:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.22
|
||||||
|
startup-config: configs/campus-border-leaf1.cfg
|
||||||
|
|
||||||
|
campus-border-leaf2:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.23
|
||||||
|
startup-config: configs/campus-border-leaf2.cfg
|
||||||
|
|
||||||
|
# Campus Leafs - VTEP1 (AS 66001)
|
||||||
|
campus-leaf1:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.51
|
||||||
|
startup-config: configs/campus-leaf1.cfg
|
||||||
|
|
||||||
|
campus-leaf2:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.52
|
||||||
|
startup-config: configs/campus-leaf2.cfg
|
||||||
|
|
||||||
|
# Campus Leafs - VTEP2 (AS 66002)
|
||||||
|
campus-leaf3:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.53
|
||||||
|
startup-config: configs/campus-leaf3.cfg
|
||||||
|
|
||||||
|
campus-leaf4:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.54
|
||||||
|
startup-config: configs/campus-leaf4.cfg
|
||||||
|
|
||||||
|
# Campus Access switches - L2 only
|
||||||
|
campus-access1:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.61
|
||||||
|
startup-config: configs/campus-access1.cfg
|
||||||
|
|
||||||
|
campus-access2:
|
||||||
|
kind: arista_ceos
|
||||||
|
mgmt-ipv4: 172.16.0.62
|
||||||
|
startup-config: configs/campus-access2.cfg
|
||||||
|
|
||||||
|
# Campus Hosts - single-attached to access switch (enterprise user endpoint pattern)
|
||||||
|
campus-host1:
|
||||||
|
kind: linux
|
||||||
|
mgmt-ipv4: 172.16.0.105
|
||||||
|
image: ghcr.io/hellt/network-multitool
|
||||||
|
cap-add:
|
||||||
|
- NET_ADMIN
|
||||||
|
binds:
|
||||||
|
- hosts/campus-host1_interfaces:/etc/network/interfaces
|
||||||
|
exec:
|
||||||
|
- ifup eth1
|
||||||
|
|
||||||
|
campus-host2:
|
||||||
|
kind: linux
|
||||||
|
mgmt-ipv4: 172.16.0.106
|
||||||
|
image: ghcr.io/hellt/network-multitool
|
||||||
|
cap-add:
|
||||||
|
- NET_ADMIN
|
||||||
|
binds:
|
||||||
|
- hosts/campus-host2_interfaces:/etc/network/interfaces
|
||||||
|
exec:
|
||||||
|
- ifup eth1
|
||||||
|
|
||||||
links:
|
links:
|
||||||
# Spine1 to Leaf connections (underlay fabric)
|
# =====================================================
|
||||||
- endpoints: ["spine1:eth1", "leaf1:eth11"]
|
# DATACENTER FABRIC LINKS
|
||||||
- endpoints: ["spine1:eth2", "leaf2:eth11"]
|
# =====================================================
|
||||||
- endpoints: ["spine1:eth3", "leaf3:eth11"]
|
|
||||||
- endpoints: ["spine1:eth4", "leaf4:eth11"]
|
|
||||||
- endpoints: ["spine1:eth5", "leaf5:eth11"]
|
|
||||||
- endpoints: ["spine1:eth6", "leaf6:eth11"]
|
|
||||||
- endpoints: ["spine1:eth7", "leaf7:eth11"]
|
|
||||||
- endpoints: ["spine1:eth8", "leaf8:eth11"]
|
|
||||||
|
|
||||||
# Spine2 to Leaf connections (underlay fabric)
|
# Spine1 to Leaf/Border-Leaf connections (underlay)
|
||||||
- endpoints: ["spine2:eth1", "leaf1:eth12"]
|
- endpoints: ["dc-spine1:eth1", "dc-leaf1:eth11"]
|
||||||
- endpoints: ["spine2:eth2", "leaf2:eth12"]
|
- endpoints: ["dc-spine1:eth2", "dc-leaf2:eth11"]
|
||||||
- endpoints: ["spine2:eth3", "leaf3:eth12"]
|
- endpoints: ["dc-spine1:eth3", "dc-leaf3:eth11"]
|
||||||
- endpoints: ["spine2:eth4", "leaf4:eth12"]
|
- endpoints: ["dc-spine1:eth4", "dc-leaf4:eth11"]
|
||||||
- endpoints: ["spine2:eth5", "leaf5:eth12"]
|
- endpoints: ["dc-spine1:eth5", "dc-leaf5:eth11"]
|
||||||
- endpoints: ["spine2:eth6", "leaf6:eth12"]
|
- endpoints: ["dc-spine1:eth6", "dc-leaf6:eth11"]
|
||||||
- endpoints: ["spine2:eth7", "leaf7:eth12"]
|
- endpoints: ["dc-spine1:eth7", "dc-leaf7:eth11"]
|
||||||
- endpoints: ["spine2:eth8", "leaf8:eth12"]
|
- endpoints: ["dc-spine1:eth8", "dc-leaf8:eth11"]
|
||||||
|
- endpoints: ["dc-spine1:eth9", "dc-border-leaf1:eth11"]
|
||||||
|
- endpoints: ["dc-spine1:eth10", "dc-border-leaf2:eth11"]
|
||||||
|
|
||||||
# MLAG Peer Links (leaf pairs)
|
# Spine2 to Leaf/Border-Leaf connections (underlay)
|
||||||
- endpoints: ["leaf1:eth10", "leaf2:eth10"]
|
- endpoints: ["dc-spine2:eth1", "dc-leaf1:eth12"]
|
||||||
- endpoints: ["leaf3:eth10", "leaf4:eth10"]
|
- endpoints: ["dc-spine2:eth2", "dc-leaf2:eth12"]
|
||||||
- endpoints: ["leaf5:eth10", "leaf6:eth10"]
|
- endpoints: ["dc-spine2:eth3", "dc-leaf3:eth12"]
|
||||||
- endpoints: ["leaf7:eth10", "leaf8:eth10"]
|
- endpoints: ["dc-spine2:eth4", "dc-leaf4:eth12"]
|
||||||
|
- endpoints: ["dc-spine2:eth5", "dc-leaf5:eth12"]
|
||||||
|
- endpoints: ["dc-spine2:eth6", "dc-leaf6:eth12"]
|
||||||
|
- endpoints: ["dc-spine2:eth7", "dc-leaf7:eth12"]
|
||||||
|
- endpoints: ["dc-spine2:eth8", "dc-leaf8:eth12"]
|
||||||
|
- endpoints: ["dc-spine2:eth9", "dc-border-leaf1:eth12"]
|
||||||
|
- endpoints: ["dc-spine2:eth10", "dc-border-leaf2:eth12"]
|
||||||
|
|
||||||
# Access switch uplinks to leaf MLAG pairs (dual-homed via LACP)
|
# DC MLAG Peer Links (leaf pairs + border-leaf pair)
|
||||||
# access1 dual-homed to leaf1 + leaf2
|
- endpoints: ["dc-leaf1:eth10", "dc-leaf2:eth10"]
|
||||||
- endpoints: ["leaf1:eth1", "access1:eth1"]
|
- endpoints: ["dc-leaf3:eth10", "dc-leaf4:eth10"]
|
||||||
- endpoints: ["leaf2:eth1", "access1:eth2"]
|
- endpoints: ["dc-leaf5:eth10", "dc-leaf6:eth10"]
|
||||||
|
- endpoints: ["dc-leaf7:eth10", "dc-leaf8:eth10"]
|
||||||
|
- endpoints: ["dc-border-leaf1:eth10", "dc-border-leaf2:eth10"]
|
||||||
|
|
||||||
# access2 dual-homed to leaf3 + leaf4
|
# DC Access switch uplinks to leaf MLAG pairs (dual-homed via LACP)
|
||||||
- endpoints: ["leaf3:eth1", "access2:eth1"]
|
- endpoints: ["dc-leaf1:eth1", "dc-access1:eth1"]
|
||||||
- endpoints: ["leaf4:eth1", "access2:eth2"]
|
- endpoints: ["dc-leaf2:eth1", "dc-access1:eth2"]
|
||||||
|
- endpoints: ["dc-leaf3:eth1", "dc-access2:eth1"]
|
||||||
|
- endpoints: ["dc-leaf4:eth1", "dc-access2:eth2"]
|
||||||
|
- endpoints: ["dc-leaf5:eth1", "dc-access3:eth1"]
|
||||||
|
- endpoints: ["dc-leaf6:eth1", "dc-access3:eth2"]
|
||||||
|
- endpoints: ["dc-leaf7:eth1", "dc-access4:eth1"]
|
||||||
|
- endpoints: ["dc-leaf8:eth1", "dc-access4:eth2"]
|
||||||
|
|
||||||
# access3 dual-homed to leaf5 + leaf6
|
# DC Host connections to access switches (dual-homed via LACP)
|
||||||
- endpoints: ["leaf5:eth1", "access3:eth1"]
|
- endpoints: ["dc-access1:eth3", "dc-server1:eth1"]
|
||||||
- endpoints: ["leaf6:eth1", "access3:eth2"]
|
- endpoints: ["dc-access1:eth4", "dc-server1:eth2"]
|
||||||
|
- endpoints: ["dc-access2:eth3", "dc-server2:eth1"]
|
||||||
|
- endpoints: ["dc-access2:eth4", "dc-server2:eth2"]
|
||||||
|
- endpoints: ["dc-access3:eth3", "dc-server3:eth1"]
|
||||||
|
- endpoints: ["dc-access3:eth4", "dc-server3:eth2"]
|
||||||
|
- endpoints: ["dc-access4:eth3", "dc-server4:eth1"]
|
||||||
|
- endpoints: ["dc-access4:eth4", "dc-server4:eth2"]
|
||||||
|
|
||||||
# access4 dual-homed to leaf7 + leaf8
|
# =====================================================
|
||||||
- endpoints: ["leaf7:eth1", "access4:eth1"]
|
# CORE INTERCONNECT (DC Border Leafs <-> Core <-> Campus Border Leafs)
|
||||||
- endpoints: ["leaf8:eth1", "access4:eth2"]
|
# =====================================================
|
||||||
|
|
||||||
# Host connections to access switches (dual-homed via LACP)
|
# DC Border Leafs to Core routers (4 links)
|
||||||
# host1 dual-homed to access1
|
- endpoints: ["dc-border-leaf1:eth13", "core1:eth1"]
|
||||||
- endpoints: ["access1:eth3", "host1:eth1"]
|
- endpoints: ["dc-border-leaf1:eth14", "core2:eth1"]
|
||||||
- endpoints: ["access1:eth4", "host1:eth2"]
|
- endpoints: ["dc-border-leaf2:eth13", "core1:eth2"]
|
||||||
|
- endpoints: ["dc-border-leaf2:eth14", "core2:eth2"]
|
||||||
|
|
||||||
# host2 dual-homed to access2
|
# Campus Border Leafs to Core routers (4 links)
|
||||||
- endpoints: ["access2:eth3", "host2:eth1"]
|
- endpoints: ["campus-border-leaf1:eth13", "core1:eth3"]
|
||||||
- endpoints: ["access2:eth4", "host2:eth2"]
|
- endpoints: ["campus-border-leaf1:eth14", "core2:eth3"]
|
||||||
|
- endpoints: ["campus-border-leaf2:eth13", "core1:eth4"]
|
||||||
|
- endpoints: ["campus-border-leaf2:eth14", "core2:eth4"]
|
||||||
|
|
||||||
# host3 dual-homed to access3
|
# Core routers interconnect
|
||||||
- endpoints: ["access3:eth3", "host3:eth1"]
|
- endpoints: ["core1:eth5", "core2:eth5"]
|
||||||
- endpoints: ["access3:eth4", "host3:eth2"]
|
|
||||||
|
|
||||||
# host4 dual-homed to access4
|
# =====================================================
|
||||||
- endpoints: ["access4:eth3", "host4:eth1"]
|
# CAMPUS FABRIC LINKS
|
||||||
- endpoints: ["access4:eth4", "host4:eth2"]
|
# =====================================================
|
||||||
|
|
||||||
|
# Campus Spine1 to Leafs/Border-Leafs (underlay)
|
||||||
|
- endpoints: ["campus-spine1:eth1", "campus-leaf1:eth11"]
|
||||||
|
- endpoints: ["campus-spine1:eth2", "campus-leaf2:eth11"]
|
||||||
|
- endpoints: ["campus-spine1:eth3", "campus-leaf3:eth11"]
|
||||||
|
- endpoints: ["campus-spine1:eth4", "campus-leaf4:eth11"]
|
||||||
|
- endpoints: ["campus-spine1:eth5", "campus-border-leaf1:eth11"]
|
||||||
|
- endpoints: ["campus-spine1:eth6", "campus-border-leaf2:eth11"]
|
||||||
|
|
||||||
|
# Campus Spine2 to Leafs/Border-Leafs (underlay)
|
||||||
|
- endpoints: ["campus-spine2:eth1", "campus-leaf1:eth12"]
|
||||||
|
- endpoints: ["campus-spine2:eth2", "campus-leaf2:eth12"]
|
||||||
|
- endpoints: ["campus-spine2:eth3", "campus-leaf3:eth12"]
|
||||||
|
- endpoints: ["campus-spine2:eth4", "campus-leaf4:eth12"]
|
||||||
|
- endpoints: ["campus-spine2:eth5", "campus-border-leaf1:eth12"]
|
||||||
|
- endpoints: ["campus-spine2:eth6", "campus-border-leaf2:eth12"]
|
||||||
|
|
||||||
|
# Campus MLAG Peer Links (leaf pairs + border-leaf pair)
|
||||||
|
- endpoints: ["campus-leaf1:eth10", "campus-leaf2:eth10"]
|
||||||
|
- endpoints: ["campus-leaf3:eth10", "campus-leaf4:eth10"]
|
||||||
|
- endpoints: ["campus-border-leaf1:eth10", "campus-border-leaf2:eth10"]
|
||||||
|
|
||||||
|
# Campus Access switch uplinks to leaf MLAG pairs (dual-homed via LACP)
|
||||||
|
- endpoints: ["campus-leaf1:eth1", "campus-access1:eth1"]
|
||||||
|
- endpoints: ["campus-leaf2:eth1", "campus-access1:eth2"]
|
||||||
|
- endpoints: ["campus-leaf3:eth1", "campus-access2:eth1"]
|
||||||
|
- endpoints: ["campus-leaf4:eth1", "campus-access2:eth2"]
|
||||||
|
|
||||||
|
# Campus Host connections to access switches (single link, enterprise user endpoint)
|
||||||
|
- endpoints: ["campus-access1:eth3", "campus-host1:eth1"]
|
||||||
|
- endpoints: ["campus-access2:eth3", "campus-host2:eth1"]
|
||||||
|
|||||||
@@ -2,133 +2,433 @@
|
|||||||
"freeTextAnnotations": [],
|
"freeTextAnnotations": [],
|
||||||
"freeShapeAnnotations": [],
|
"freeShapeAnnotations": [],
|
||||||
"trafficRateAnnotations": [],
|
"trafficRateAnnotations": [],
|
||||||
"groupStyleAnnotations": [],
|
"groupStyleAnnotations": [
|
||||||
|
{
|
||||||
|
"id": "group-1",
|
||||||
|
"name": "AS65500",
|
||||||
|
"level": "1",
|
||||||
|
"position": {
|
||||||
|
"x": 889.1396938996185,
|
||||||
|
"y": 235.43048452777563
|
||||||
|
},
|
||||||
|
"width": 384,
|
||||||
|
"height": 186,
|
||||||
|
"backgroundColor": "rgba(100, 100, 255, 0.1)",
|
||||||
|
"borderColor": "#bbbebf",
|
||||||
|
"borderWidth": 2,
|
||||||
|
"borderStyle": "dashed",
|
||||||
|
"borderRadius": 8,
|
||||||
|
"zIndex": -1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "group-2",
|
||||||
|
"name": "AS65005",
|
||||||
|
"level": "1",
|
||||||
|
"position": {
|
||||||
|
"x": 1337.1424783113316,
|
||||||
|
"y": 370.853013593514
|
||||||
|
},
|
||||||
|
"width": 248,
|
||||||
|
"height": 98,
|
||||||
|
"backgroundColor": "rgba(100, 100, 255, 0.1)",
|
||||||
|
"borderColor": "#bbbebf",
|
||||||
|
"borderWidth": 2,
|
||||||
|
"borderStyle": "dashed",
|
||||||
|
"borderRadius": 8,
|
||||||
|
"zIndex": -1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "group-3",
|
||||||
|
"name": "AS65001",
|
||||||
|
"level": "1",
|
||||||
|
"position": {
|
||||||
|
"x": 1633.71849074422,
|
||||||
|
"y": 374.2803159364748
|
||||||
|
},
|
||||||
|
"width": 246,
|
||||||
|
"height": 97,
|
||||||
|
"backgroundColor": "rgba(100, 100, 255, 0.1)",
|
||||||
|
"borderColor": "#bbbebf",
|
||||||
|
"borderWidth": 2,
|
||||||
|
"borderStyle": "dashed",
|
||||||
|
"borderRadius": 8,
|
||||||
|
"zIndex": -1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "group-4",
|
||||||
|
"name": "AS65002",
|
||||||
|
"level": "1",
|
||||||
|
"position": {
|
||||||
|
"x": 1913,
|
||||||
|
"y": 374
|
||||||
|
},
|
||||||
|
"width": 246,
|
||||||
|
"height": 97,
|
||||||
|
"backgroundColor": "rgba(100, 100, 255, 0.1)",
|
||||||
|
"borderColor": "#bbbebf",
|
||||||
|
"borderWidth": 2,
|
||||||
|
"borderStyle": "dashed",
|
||||||
|
"borderRadius": 8,
|
||||||
|
"zIndex": -1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "group-5",
|
||||||
|
"name": "AS65003",
|
||||||
|
"level": "1",
|
||||||
|
"position": {
|
||||||
|
"x": 2193,
|
||||||
|
"y": 374
|
||||||
|
},
|
||||||
|
"width": 246,
|
||||||
|
"height": 97,
|
||||||
|
"backgroundColor": "rgba(100, 100, 255, 0.1)",
|
||||||
|
"borderColor": "#bbbebf",
|
||||||
|
"borderWidth": 2,
|
||||||
|
"borderStyle": "dashed",
|
||||||
|
"borderRadius": 8,
|
||||||
|
"zIndex": -1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "group-6",
|
||||||
|
"name": "AS65004",
|
||||||
|
"level": "1",
|
||||||
|
"position": {
|
||||||
|
"x": 2473,
|
||||||
|
"y": 374
|
||||||
|
},
|
||||||
|
"width": 246,
|
||||||
|
"height": 97,
|
||||||
|
"backgroundColor": "rgba(100, 100, 255, 0.1)",
|
||||||
|
"borderColor": "#bbbebf",
|
||||||
|
"borderWidth": 2,
|
||||||
|
"borderStyle": "dashed",
|
||||||
|
"borderRadius": 8,
|
||||||
|
"zIndex": -1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "group-7",
|
||||||
|
"name": "AS65000",
|
||||||
|
"level": "1",
|
||||||
|
"position": {
|
||||||
|
"x": 1724.5715043377336,
|
||||||
|
"y": 131.71464560423502
|
||||||
|
},
|
||||||
|
"width": 640,
|
||||||
|
"height": 100,
|
||||||
|
"backgroundColor": "rgba(100, 100, 255, 0.1)",
|
||||||
|
"borderColor": "#bbbebf",
|
||||||
|
"borderWidth": 2,
|
||||||
|
"borderStyle": "dashed",
|
||||||
|
"borderRadius": 8,
|
||||||
|
"zIndex": -1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "group-8",
|
||||||
|
"name": "AS66000",
|
||||||
|
"level": "1",
|
||||||
|
"position": {
|
||||||
|
"x": 48.000132591034,
|
||||||
|
"y": 129.42889343536817
|
||||||
|
},
|
||||||
|
"width": 460,
|
||||||
|
"height": 100,
|
||||||
|
"backgroundColor": "rgba(100, 100, 255, 0.1)",
|
||||||
|
"borderColor": "#bbbebf",
|
||||||
|
"borderWidth": 2,
|
||||||
|
"borderStyle": "dashed",
|
||||||
|
"borderRadius": 8,
|
||||||
|
"zIndex": -1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "group-9",
|
||||||
|
"name": "AS66001",
|
||||||
|
"level": "1",
|
||||||
|
"position": {
|
||||||
|
"x": -87,
|
||||||
|
"y": 374
|
||||||
|
},
|
||||||
|
"width": 246,
|
||||||
|
"height": 97,
|
||||||
|
"backgroundColor": "rgba(100, 100, 255, 0.1)",
|
||||||
|
"borderColor": "#bbbebf",
|
||||||
|
"borderWidth": 2,
|
||||||
|
"borderStyle": "dashed",
|
||||||
|
"borderRadius": 8,
|
||||||
|
"zIndex": -1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "group-10",
|
||||||
|
"name": "AS66002",
|
||||||
|
"level": "1",
|
||||||
|
"position": {
|
||||||
|
"x": 213,
|
||||||
|
"y": 374
|
||||||
|
},
|
||||||
|
"width": 246,
|
||||||
|
"height": 97,
|
||||||
|
"backgroundColor": "rgba(100, 100, 255, 0.1)",
|
||||||
|
"borderColor": "#bbbebf",
|
||||||
|
"borderWidth": 2,
|
||||||
|
"borderStyle": "dashed",
|
||||||
|
"borderRadius": 8,
|
||||||
|
"zIndex": -1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "group-11",
|
||||||
|
"name": "AS66005",
|
||||||
|
"level": "1",
|
||||||
|
"position": {
|
||||||
|
"x": 513,
|
||||||
|
"y": 374
|
||||||
|
},
|
||||||
|
"width": 246,
|
||||||
|
"height": 97,
|
||||||
|
"backgroundColor": "rgba(100, 100, 255, 0.1)",
|
||||||
|
"borderColor": "#bbbebf",
|
||||||
|
"borderWidth": 2,
|
||||||
|
"borderStyle": "dashed",
|
||||||
|
"borderRadius": 8,
|
||||||
|
"zIndex": -1
|
||||||
|
}
|
||||||
|
],
|
||||||
"networkNodeAnnotations": [],
|
"networkNodeAnnotations": [],
|
||||||
"nodeAnnotations": [
|
"nodeAnnotations": [
|
||||||
{
|
{
|
||||||
"id": "spine1",
|
"id": "campus-spine1",
|
||||||
"position": {
|
"position": {
|
||||||
"x": 260,
|
"x": 120,
|
||||||
"y": 160
|
"y": 160
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "spine2",
|
"id": "campus-spine2",
|
||||||
"position": {
|
|
||||||
"x": 740,
|
|
||||||
"y": 160
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "leaf1",
|
|
||||||
"position": {
|
|
||||||
"x": -60,
|
|
||||||
"y": 420
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "leaf2",
|
|
||||||
"position": {
|
|
||||||
"x": 100,
|
|
||||||
"y": 420
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "leaf3",
|
|
||||||
"position": {
|
|
||||||
"x": 260,
|
|
||||||
"y": 420
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "leaf4",
|
|
||||||
"position": {
|
"position": {
|
||||||
"x": 420,
|
"x": 420,
|
||||||
"y": 420
|
"y": 160
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "leaf5",
|
"id": "campus-leaf1",
|
||||||
"position": {
|
"position": {
|
||||||
"x": 580,
|
"x": -60,
|
||||||
"y": 420
|
"y": 400
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "leaf6",
|
"id": "campus-leaf2",
|
||||||
"position": {
|
"position": {
|
||||||
"x": 740,
|
"x": 80,
|
||||||
"y": 420
|
"y": 400
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "leaf7",
|
"id": "campus-leaf3",
|
||||||
"position": {
|
"position": {
|
||||||
"x": 920,
|
"x": 240,
|
||||||
"y": 420
|
"y": 400
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "leaf8",
|
"id": "campus-leaf4",
|
||||||
"position": {
|
"position": {
|
||||||
"x": 1080,
|
"x": 380,
|
||||||
"y": 420
|
"y": 400
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "host1",
|
"id": "campus-border-leaf1",
|
||||||
"position": {
|
"position": {
|
||||||
"x": 20,
|
"x": 540,
|
||||||
"y": 680
|
"y": 400
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "host2",
|
"id": "campus-border-leaf2",
|
||||||
"position": {
|
"position": {
|
||||||
"x": 340,
|
"x": 680,
|
||||||
"y": 680
|
"y": 400
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "host3",
|
"id": "campus-access1",
|
||||||
"position": {
|
"position": {
|
||||||
"x": 660,
|
"x": 40,
|
||||||
"y": 680
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "host4",
|
|
||||||
"position": {
|
|
||||||
"x": 1000,
|
|
||||||
"y": 680
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "access4",
|
|
||||||
"position": {
|
|
||||||
"x": 1000,
|
|
||||||
"y": 540
|
"y": 540
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "access3",
|
"id": "campus-access2",
|
||||||
"position": {
|
"position": {
|
||||||
"x": 660,
|
"x": 320,
|
||||||
"y": 520
|
"y": 540
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "access2",
|
"id": "campus-host1",
|
||||||
"position": {
|
"position": {
|
||||||
"x": 340,
|
"x": 40,
|
||||||
"y": 520
|
"y": 680
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "access1",
|
"id": "campus-host2",
|
||||||
"position": {
|
"position": {
|
||||||
"x": 20,
|
"x": 320,
|
||||||
"y": 520
|
"y": 680
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "core1",
|
||||||
|
"position": {
|
||||||
|
"x": 960,
|
||||||
|
"y": 300
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "core2",
|
||||||
|
"position": {
|
||||||
|
"x": 1180,
|
||||||
|
"y": 300
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-border-leaf1",
|
||||||
|
"position": {
|
||||||
|
"x": 1380,
|
||||||
|
"y": 400
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-border-leaf2",
|
||||||
|
"position": {
|
||||||
|
"x": 1520,
|
||||||
|
"y": 400
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-spine1",
|
||||||
|
"position": {
|
||||||
|
"x": 1800,
|
||||||
|
"y": 160
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-spine2",
|
||||||
|
"position": {
|
||||||
|
"x": 2280,
|
||||||
|
"y": 160
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-leaf1",
|
||||||
|
"position": {
|
||||||
|
"x": 1660,
|
||||||
|
"y": 400
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-leaf2",
|
||||||
|
"position": {
|
||||||
|
"x": 1800,
|
||||||
|
"y": 400
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-leaf3",
|
||||||
|
"position": {
|
||||||
|
"x": 1940,
|
||||||
|
"y": 400
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-leaf4",
|
||||||
|
"position": {
|
||||||
|
"x": 2080,
|
||||||
|
"y": 400
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-leaf5",
|
||||||
|
"position": {
|
||||||
|
"x": 2220,
|
||||||
|
"y": 400
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-leaf6",
|
||||||
|
"position": {
|
||||||
|
"x": 2360,
|
||||||
|
"y": 400
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-leaf7",
|
||||||
|
"position": {
|
||||||
|
"x": 2500,
|
||||||
|
"y": 400
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-leaf8",
|
||||||
|
"position": {
|
||||||
|
"x": 2640,
|
||||||
|
"y": 400
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-access1",
|
||||||
|
"position": {
|
||||||
|
"x": 1720,
|
||||||
|
"y": 540
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-access2",
|
||||||
|
"position": {
|
||||||
|
"x": 2000,
|
||||||
|
"y": 540
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-access3",
|
||||||
|
"position": {
|
||||||
|
"x": 2280,
|
||||||
|
"y": 540
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-access4",
|
||||||
|
"position": {
|
||||||
|
"x": 2560,
|
||||||
|
"y": 540
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-server1",
|
||||||
|
"position": {
|
||||||
|
"x": 1720,
|
||||||
|
"y": 680
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-server2",
|
||||||
|
"position": {
|
||||||
|
"x": 2000,
|
||||||
|
"y": 680
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-server3",
|
||||||
|
"position": {
|
||||||
|
"x": 2280,
|
||||||
|
"y": 680
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dc-server4",
|
||||||
|
"position": {
|
||||||
|
"x": 2560,
|
||||||
|
"y": 680
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -4,26 +4,39 @@ This directory contains network interface configuration files for Alpine Linux h
|
|||||||
|
|
||||||
## Files
|
## Files
|
||||||
|
|
||||||
- `host1_interfaces` - Configuration for host1 (VLAN 40, IP 10.40.40.101)
|
### DC hosts
|
||||||
- `host2_interfaces` - Configuration for host2 (VLAN 34, IP 10.34.34.102)
|
|
||||||
- `host3_interfaces` - Configuration for host3 (VLAN 40, IP 10.40.40.103)
|
- `dc-server1_interfaces` - Configuration for dc-server1 (VLAN 40, IP 10.40.40.101)
|
||||||
- `host4_interfaces` - Configuration for host4 (VLAN 78, IP 10.78.78.104)
|
- `dc-server2_interfaces` - Configuration for dc-server2 (VLAN 34, IP 10.34.34.102)
|
||||||
|
- `dc-server3_interfaces` - Configuration for dc-server3 (VLAN 40, IP 10.40.40.103)
|
||||||
|
- `dc-server4_interfaces` - Configuration for dc-server4 (VLAN 78, IP 10.78.78.104)
|
||||||
|
|
||||||
|
### Campus hosts
|
||||||
|
|
||||||
|
Campus hosts are **single-attached** to a Campus access switch (enterprise user endpoint
|
||||||
|
pattern — no LACP bond, no VLAN trunking on the host side). Each host sits in a single
|
||||||
|
access VLAN that maps to VRF `gold`.
|
||||||
|
|
||||||
|
- `campus-dc-server1_interfaces` - Configuration for campus-host1 (VLAN 60 VRF gold 10.60.60.101/24, GW 10.60.60.1)
|
||||||
|
- `campus-dc-server2_interfaces` - Configuration for campus-host2 (VLAN 70 VRF gold 10.60.70.102/24, GW 10.60.70.1)
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
Each file is mounted to `/etc/network/interfaces` in its respective host container via ContainerLab's `binds` feature:
|
Each file is mounted to `/etc/network/interfaces` in its respective host container via ContainerLab's `binds` feature:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
host1:
|
dc-server1:
|
||||||
kind: linux
|
kind: linux
|
||||||
image: alpine:latest
|
image: alpine:latest
|
||||||
binds:
|
binds:
|
||||||
- hosts/host1_interfaces:/etc/network/interfaces
|
- hosts/dc-server1_interfaces:/etc/network/interfaces
|
||||||
```
|
```
|
||||||
|
|
||||||
## Format
|
## Format
|
||||||
|
|
||||||
Files use Debian/Alpine ifupdown format with bonding and VLAN extensions:
|
Files use Debian/Alpine ifupdown format.
|
||||||
|
|
||||||
|
### DC hosts (dual-homed via LACP to access switches)
|
||||||
|
|
||||||
```
|
```
|
||||||
auto lo
|
auto lo
|
||||||
@@ -43,20 +56,39 @@ iface bond0.<vlan> inet static
|
|||||||
vlan-raw-device bond0
|
vlan-raw-device bond0
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Campus hosts (single-attached, no bonding, no VLAN tagging)
|
||||||
|
|
||||||
|
```
|
||||||
|
auto lo
|
||||||
|
iface lo inet loopback
|
||||||
|
|
||||||
|
auto eth1
|
||||||
|
iface eth1 inet static
|
||||||
|
address <ip-address>/<mask>
|
||||||
|
gateway <gateway>
|
||||||
|
```
|
||||||
|
|
||||||
## Key Concepts
|
## Key Concepts
|
||||||
|
|
||||||
### LACP Bonding
|
### DC: LACP Bonding
|
||||||
- All hosts use **mode 4** (802.3ad LACP) bonding
|
- DC hosts use **mode 4** (802.3ad LACP) bonding
|
||||||
- Dual-homed to MLAG leaf pairs for redundancy
|
- Dual-homed to MLAG leaf pairs — typical for DC servers that need NIC-level redundancy
|
||||||
- Requires matching LACP configuration on switches
|
- Requires matching LACP configuration on switches
|
||||||
|
|
||||||
|
### Campus: Single-attached user endpoints
|
||||||
|
- Campus hosts use a single `eth1` interface connected to an access port
|
||||||
|
- Redundancy is handled at the access-switch layer (the access switch is itself
|
||||||
|
dual-homed via LACP to the leaf MLAG pair), not at the host
|
||||||
|
- This matches the realistic enterprise pattern for PCs, phones, printers, etc.
|
||||||
|
|
||||||
### VLAN Tagging
|
### VLAN Tagging
|
||||||
- Hosts handle VLAN tagging via sub-interfaces
|
- DC hosts: VLAN tagging happens in the host via `bond0.<vlan_id>` sub-interfaces
|
||||||
- Format: `bond0.<vlan_id>` (e.g., bond0.40, bond0.34, bond0.78)
|
(e.g., bond0.40, bond0.34, bond0.78); switch ports are trunks
|
||||||
- Switch ports are configured as trunks allowing specific VLANs
|
- Campus hosts: no tagging on the host; the access switch places untagged frames
|
||||||
|
into `switchport access vlan <id>`
|
||||||
|
|
||||||
### IP Addressing
|
### IP Addressing
|
||||||
- Static IP configuration on VLAN sub-interfaces
|
- Static IP configuration on the host interface (sub-interface for DC, `eth1` for Campus)
|
||||||
- Subnet assignment based on VLAN ID pattern (e.g., VLAN 40 = 10.40.40.0/24)
|
- Subnet assignment based on VLAN ID pattern (e.g., VLAN 40 = 10.40.40.0/24)
|
||||||
|
|
||||||
## Modification
|
## Modification
|
||||||
|
|||||||
8
hosts/campus-host1_interfaces
Normal file
8
hosts/campus-host1_interfaces
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
auto lo
|
||||||
|
iface lo inet loopback
|
||||||
|
|
||||||
|
auto eth1
|
||||||
|
iface eth1 inet static
|
||||||
|
address 10.60.60.101
|
||||||
|
netmask 255.255.255.0
|
||||||
|
post-up ip route replace default via 10.60.60.1
|
||||||
8
hosts/campus-host2_interfaces
Normal file
8
hosts/campus-host2_interfaces
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
auto lo
|
||||||
|
iface lo inet loopback
|
||||||
|
|
||||||
|
auto eth1
|
||||||
|
iface eth1 inet static
|
||||||
|
address 10.60.70.102
|
||||||
|
netmask 255.255.255.0
|
||||||
|
post-up ip route replace default via 10.60.70.1
|
||||||
Reference in New Issue
Block a user