From 2c48e9c6f03d9f11282b511f893514d6b9687c5d Mon Sep 17 00:00:00 2001 From: David Lobato Date: Wed, 7 Aug 2024 17:48:13 +0100 Subject: [PATCH] Build and compare new pyavd versions --- .github/workflows/ci.yml | 2 +- .../configs/dc1-leaf1a.cfg | 356 +++++++++++++ .../configs/dc1-leaf1b.cfg | 356 +++++++++++++ .../configs/dc1-leaf1c.cfg | 89 ++++ .../configs/dc1-leaf2a.cfg | 356 +++++++++++++ .../configs/dc1-leaf2b.cfg | 356 +++++++++++++ .../configs/dc1-leaf2c.cfg | 89 ++++ .../configs/dc1-spine1.cfg | 138 +++++ .../configs/dc1-spine2.cfg | 138 +++++ .../structured_configs/dc1-leaf1a.yml | 488 ++++++++++++++++++ .../structured_configs/dc1-leaf1b.yml | 488 ++++++++++++++++++ .../structured_configs/dc1-leaf1c.yml | 123 +++++ .../structured_configs/dc1-leaf2a.yml | 488 ++++++++++++++++++ .../structured_configs/dc1-leaf2b.yml | 488 ++++++++++++++++++ .../structured_configs/dc1-leaf2c.yml | 123 +++++ .../structured_configs/dc1-spine1.yml | 199 +++++++ .../structured_configs/dc1-spine2.yml | 199 +++++++ .../configs/dc1-leaf1a.cfg | 356 +++++++++++++ .../configs/dc1-leaf1b.cfg | 356 +++++++++++++ .../configs/dc1-leaf1c.cfg | 89 ++++ .../configs/dc1-leaf2a.cfg | 356 +++++++++++++ .../configs/dc1-leaf2b.cfg | 356 +++++++++++++ .../configs/dc1-leaf2c.cfg | 89 ++++ .../configs/dc1-spine1.cfg | 138 +++++ .../configs/dc1-spine2.cfg | 138 +++++ .../structured_configs/dc1-leaf1a.yml | 488 ++++++++++++++++++ .../structured_configs/dc1-leaf1b.yml | 488 ++++++++++++++++++ .../structured_configs/dc1-leaf1c.yml | 123 +++++ .../structured_configs/dc1-leaf2a.yml | 488 ++++++++++++++++++ .../structured_configs/dc1-leaf2b.yml | 488 ++++++++++++++++++ .../structured_configs/dc1-leaf2c.yml | 123 +++++ .../structured_configs/dc1-spine1.yml | 199 +++++++ .../structured_configs/dc1-spine2.yml | 199 +++++++ 33 files changed, 8949 insertions(+), 1 deletion(-) create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf1a.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf1b.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf1c.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf2a.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf2b.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf2c.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-spine1.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-spine2.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf1a.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf1b.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf1c.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf2a.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf2b.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf2c.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-spine1.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-spine2.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf1a.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf1b.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf1c.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf2a.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf2b.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf2c.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-spine1.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-spine2.cfg create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf1a.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf1b.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf1c.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf2a.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf2b.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf2c.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-spine1.yml create mode 100644 tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-spine2.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 471d34a..dbb219b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,7 +30,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - version: [ "4.5.0", "4.6.0", "4.7.0", "4.7.1", "4.8.0" ] + version: [ "4.5.0", "4.6.0", "4.7.0", "4.7.1", "4.8.0", "4.9.0", "4.10.0" ] steps: - uses: actions/checkout@v4 - name: Setup Python diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf1a.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf1a.cfg new file mode 100644 index 0000000..fc5f29f --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf1a.cfg @@ -0,0 +1,356 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-leaf1a +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode mstp +no spanning-tree vlan-id 4093-4094 +spanning-tree mst 0 priority 4096 +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vlan 11 + name VRF10_VLAN11 +! +vlan 12 + name VRF10_VLAN12 +! +vlan 21 + name VRF11_VLAN21 +! +vlan 22 + name VRF11_VLAN22 +! +vlan 3009 + name MLAG_iBGP_VRF10 + trunk group LEAF_PEER_L3 +! +vlan 3010 + name MLAG_iBGP_VRF11 + trunk group LEAF_PEER_L3 +! +vlan 3401 + name L2_VLAN3401 +! +vlan 3402 + name L2_VLAN3402 +! +vlan 4093 + name LEAF_PEER_L3 + trunk group LEAF_PEER_L3 +! +vlan 4094 + name MLAG_PEER + trunk group MLAG +! +vrf instance MGMT +! +vrf instance VRF10 +! +vrf instance VRF11 +! +interface Port-Channel3 + description MLAG_PEER_dc1-leaf1b_Po3 + no shutdown + switchport + switchport mode trunk + switchport trunk group LEAF_PEER_L3 + switchport trunk group MLAG +! +interface Port-Channel5 + description dc1-leaf1-server1_PortChannel dc1-leaf1-server1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22 + switchport trunk native vlan 4092 + switchport mode trunk + mlag 5 + spanning-tree portfast +! +interface Port-Channel8 + description DC1-LEAF1C_Po1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22,3401-3402 + switchport mode trunk + mlag 8 +! +interface Ethernet1 + description P2P_LINK_TO_DC1-SPINE1_Ethernet1 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.1/31 +! +interface Ethernet2 + description P2P_LINK_TO_DC1-SPINE2_Ethernet1 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.3/31 +! +interface Ethernet3 + description MLAG_PEER_dc1-leaf1b_Ethernet3 + no shutdown + channel-group 3 mode active +! +interface Ethernet4 + description MLAG_PEER_dc1-leaf1b_Ethernet4 + no shutdown + channel-group 3 mode active +! +interface Ethernet5 + description dc1-leaf1-server1_PCI1 + no shutdown + channel-group 5 mode active +! +interface Ethernet8 + description DC1-LEAF1C_Ethernet1 + no shutdown + channel-group 8 mode active +! +interface Loopback0 + description EVPN_Overlay_Peering + no shutdown + ip address 10.255.0.3/32 +! +interface Loopback1 + description VTEP_VXLAN_Tunnel_Source + no shutdown + ip address 10.255.1.3/32 +! +interface Loopback10 + description VRF10_VTEP_DIAGNOSTICS + no shutdown + vrf VRF10 + ip address 10.255.10.3/32 +! +interface Loopback11 + description VRF11_VTEP_DIAGNOSTICS + no shutdown + vrf VRF11 + ip address 10.255.11.3/32 +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.101/24 +! +interface Vlan11 + description VRF10_VLAN11 + no shutdown + vrf VRF10 + ip address virtual 10.10.11.1/24 +! +interface Vlan12 + description VRF10_VLAN12 + no shutdown + vrf VRF10 + ip address virtual 10.10.12.1/24 +! +interface Vlan21 + description VRF11_VLAN21 + no shutdown + vrf VRF11 + ip address virtual 10.10.21.1/24 +! +interface Vlan22 + description VRF11_VLAN22 + no shutdown + vrf VRF11 + ip address virtual 10.10.22.1/24 +! +interface Vlan3009 + description MLAG_PEER_L3_iBGP: vrf VRF10 + no shutdown + mtu 1500 + vrf VRF10 + ip address 10.255.1.96/31 +! +interface Vlan3010 + description MLAG_PEER_L3_iBGP: vrf VRF11 + no shutdown + mtu 1500 + vrf VRF11 + ip address 10.255.1.96/31 +! +interface Vlan4093 + description MLAG_PEER_L3_PEERING + no shutdown + mtu 1500 + ip address 10.255.1.96/31 +! +interface Vlan4094 + description MLAG_PEER + no shutdown + mtu 1500 + no autostate + ip address 10.255.1.64/31 +! +interface Vxlan1 + description dc1-leaf1a_VTEP + vxlan source-interface Loopback1 + vxlan virtual-router encapsulation mac-address mlag-system-id + vxlan udp-port 4789 + vxlan vlan 11 vni 10011 + vxlan vlan 12 vni 10012 + vxlan vlan 21 vni 10021 + vxlan vlan 22 vni 10022 + vxlan vlan 3401 vni 13401 + vxlan vlan 3402 vni 13402 + vxlan vrf VRF10 vni 10 + vxlan vrf VRF11 vni 11 +! +ip virtual-router mac-address 00:1c:73:00:00:99 +! +ip address virtual source-nat vrf VRF10 address 10.255.10.3 +ip address virtual source-nat vrf VRF11 address 10.255.11.3 +! +ip routing +no ip routing vrf MGMT +ip routing vrf VRF10 +ip routing vrf VRF11 +! +ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY + seq 10 permit 10.255.0.0/27 eq 32 + seq 20 permit 10.255.1.0/27 eq 32 +! +mlag configuration + domain-id DC1_L3_LEAF1 + local-interface Vlan4094 + peer-address 10.255.1.65 + peer-link Port-Channel3 + reload-delay mlag 300 + reload-delay non-mlag 330 +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +route-map RM-CONN-2-BGP permit 10 + match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +! +route-map RM-MLAG-PEER-IN permit 10 + description Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing + set origin incomplete +! +router bfd + multihop interval 300 min-rx 300 multiplier 3 +! +router bgp 65101 + router-id 10.255.0.3 + maximum-paths 4 ecmp 4 + no bgp default ipv4-unicast + neighbor EVPN-OVERLAY-PEERS peer group + neighbor EVPN-OVERLAY-PEERS update-source Loopback0 + neighbor EVPN-OVERLAY-PEERS bfd + neighbor EVPN-OVERLAY-PEERS ebgp-multihop 3 + neighbor EVPN-OVERLAY-PEERS password 7 Q4fqtbqcZ7oQuKfuWtNGRQ== + neighbor EVPN-OVERLAY-PEERS send-community + neighbor EVPN-OVERLAY-PEERS maximum-routes 0 + neighbor IPv4-UNDERLAY-PEERS peer group + neighbor IPv4-UNDERLAY-PEERS password 7 7x4B4rnJhZB438m9+BrBfQ== + neighbor IPv4-UNDERLAY-PEERS send-community + neighbor IPv4-UNDERLAY-PEERS maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER peer group + neighbor MLAG-IPv4-UNDERLAY-PEER remote-as 65101 + neighbor MLAG-IPv4-UNDERLAY-PEER next-hop-self + neighbor MLAG-IPv4-UNDERLAY-PEER description dc1-leaf1b + neighbor MLAG-IPv4-UNDERLAY-PEER password 7 4b21pAdCvWeAqpcKDFMdWw== + neighbor MLAG-IPv4-UNDERLAY-PEER send-community + neighbor MLAG-IPv4-UNDERLAY-PEER maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER route-map RM-MLAG-PEER-IN in + neighbor 10.255.0.1 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.1 remote-as 65100 + neighbor 10.255.0.1 description dc1-spine1 + neighbor 10.255.0.2 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.2 remote-as 65100 + neighbor 10.255.0.2 description dc1-spine2 + neighbor 10.255.1.97 peer group MLAG-IPv4-UNDERLAY-PEER + neighbor 10.255.1.97 description dc1-leaf1b + neighbor 10.255.255.0 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.0 remote-as 65100 + neighbor 10.255.255.0 description dc1-spine1_Ethernet1 + neighbor 10.255.255.2 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.2 remote-as 65100 + neighbor 10.255.255.2 description dc1-spine2_Ethernet1 + redistribute connected route-map RM-CONN-2-BGP + ! + vlan 11 + rd 10.255.0.3:10011 + route-target both 10011:10011 + redistribute learned + ! + vlan 12 + rd 10.255.0.3:10012 + route-target both 10012:10012 + redistribute learned + ! + vlan 21 + rd 10.255.0.3:10021 + route-target both 10021:10021 + redistribute learned + ! + vlan 22 + rd 10.255.0.3:10022 + route-target both 10022:10022 + redistribute learned + ! + vlan 3401 + rd 10.255.0.3:13401 + route-target both 13401:13401 + redistribute learned + ! + vlan 3402 + rd 10.255.0.3:13402 + route-target both 13402:13402 + redistribute learned + ! + address-family evpn + neighbor EVPN-OVERLAY-PEERS activate + ! + address-family ipv4 + no neighbor EVPN-OVERLAY-PEERS activate + neighbor IPv4-UNDERLAY-PEERS activate + neighbor MLAG-IPv4-UNDERLAY-PEER activate + ! + vrf VRF10 + rd 10.255.0.3:10 + route-target import evpn 10:10 + route-target export evpn 10:10 + router-id 10.255.0.3 + neighbor 10.255.1.97 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected + ! + vrf VRF11 + rd 10.255.0.3:11 + route-target import evpn 11:11 + route-target export evpn 11:11 + router-id 10.255.0.3 + neighbor 10.255.1.97 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf1b.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf1b.cfg new file mode 100644 index 0000000..004f516 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf1b.cfg @@ -0,0 +1,356 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-leaf1b +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode mstp +no spanning-tree vlan-id 4093-4094 +spanning-tree mst 0 priority 4096 +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vlan 11 + name VRF10_VLAN11 +! +vlan 12 + name VRF10_VLAN12 +! +vlan 21 + name VRF11_VLAN21 +! +vlan 22 + name VRF11_VLAN22 +! +vlan 3009 + name MLAG_iBGP_VRF10 + trunk group LEAF_PEER_L3 +! +vlan 3010 + name MLAG_iBGP_VRF11 + trunk group LEAF_PEER_L3 +! +vlan 3401 + name L2_VLAN3401 +! +vlan 3402 + name L2_VLAN3402 +! +vlan 4093 + name LEAF_PEER_L3 + trunk group LEAF_PEER_L3 +! +vlan 4094 + name MLAG_PEER + trunk group MLAG +! +vrf instance MGMT +! +vrf instance VRF10 +! +vrf instance VRF11 +! +interface Port-Channel3 + description MLAG_PEER_dc1-leaf1a_Po3 + no shutdown + switchport + switchport mode trunk + switchport trunk group LEAF_PEER_L3 + switchport trunk group MLAG +! +interface Port-Channel5 + description dc1-leaf1-server1_PortChannel dc1-leaf1-server1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22 + switchport trunk native vlan 4092 + switchport mode trunk + mlag 5 + spanning-tree portfast +! +interface Port-Channel8 + description DC1-LEAF1C_Po1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22,3401-3402 + switchport mode trunk + mlag 8 +! +interface Ethernet1 + description P2P_LINK_TO_DC1-SPINE1_Ethernet2 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.5/31 +! +interface Ethernet2 + description P2P_LINK_TO_DC1-SPINE2_Ethernet2 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.7/31 +! +interface Ethernet3 + description MLAG_PEER_dc1-leaf1a_Ethernet3 + no shutdown + channel-group 3 mode active +! +interface Ethernet4 + description MLAG_PEER_dc1-leaf1a_Ethernet4 + no shutdown + channel-group 3 mode active +! +interface Ethernet5 + description dc1-leaf1-server1_PCI2 + no shutdown + channel-group 5 mode active +! +interface Ethernet8 + description DC1-LEAF1C_Ethernet2 + no shutdown + channel-group 8 mode active +! +interface Loopback0 + description EVPN_Overlay_Peering + no shutdown + ip address 10.255.0.4/32 +! +interface Loopback1 + description VTEP_VXLAN_Tunnel_Source + no shutdown + ip address 10.255.1.3/32 +! +interface Loopback10 + description VRF10_VTEP_DIAGNOSTICS + no shutdown + vrf VRF10 + ip address 10.255.10.4/32 +! +interface Loopback11 + description VRF11_VTEP_DIAGNOSTICS + no shutdown + vrf VRF11 + ip address 10.255.11.4/32 +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.102/24 +! +interface Vlan11 + description VRF10_VLAN11 + no shutdown + vrf VRF10 + ip address virtual 10.10.11.1/24 +! +interface Vlan12 + description VRF10_VLAN12 + no shutdown + vrf VRF10 + ip address virtual 10.10.12.1/24 +! +interface Vlan21 + description VRF11_VLAN21 + no shutdown + vrf VRF11 + ip address virtual 10.10.21.1/24 +! +interface Vlan22 + description VRF11_VLAN22 + no shutdown + vrf VRF11 + ip address virtual 10.10.22.1/24 +! +interface Vlan3009 + description MLAG_PEER_L3_iBGP: vrf VRF10 + no shutdown + mtu 1500 + vrf VRF10 + ip address 10.255.1.97/31 +! +interface Vlan3010 + description MLAG_PEER_L3_iBGP: vrf VRF11 + no shutdown + mtu 1500 + vrf VRF11 + ip address 10.255.1.97/31 +! +interface Vlan4093 + description MLAG_PEER_L3_PEERING + no shutdown + mtu 1500 + ip address 10.255.1.97/31 +! +interface Vlan4094 + description MLAG_PEER + no shutdown + mtu 1500 + no autostate + ip address 10.255.1.65/31 +! +interface Vxlan1 + description dc1-leaf1b_VTEP + vxlan source-interface Loopback1 + vxlan virtual-router encapsulation mac-address mlag-system-id + vxlan udp-port 4789 + vxlan vlan 11 vni 10011 + vxlan vlan 12 vni 10012 + vxlan vlan 21 vni 10021 + vxlan vlan 22 vni 10022 + vxlan vlan 3401 vni 13401 + vxlan vlan 3402 vni 13402 + vxlan vrf VRF10 vni 10 + vxlan vrf VRF11 vni 11 +! +ip virtual-router mac-address 00:1c:73:00:00:99 +! +ip address virtual source-nat vrf VRF10 address 10.255.10.4 +ip address virtual source-nat vrf VRF11 address 10.255.11.4 +! +ip routing +no ip routing vrf MGMT +ip routing vrf VRF10 +ip routing vrf VRF11 +! +ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY + seq 10 permit 10.255.0.0/27 eq 32 + seq 20 permit 10.255.1.0/27 eq 32 +! +mlag configuration + domain-id DC1_L3_LEAF1 + local-interface Vlan4094 + peer-address 10.255.1.64 + peer-link Port-Channel3 + reload-delay mlag 300 + reload-delay non-mlag 330 +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +route-map RM-CONN-2-BGP permit 10 + match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +! +route-map RM-MLAG-PEER-IN permit 10 + description Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing + set origin incomplete +! +router bfd + multihop interval 300 min-rx 300 multiplier 3 +! +router bgp 65101 + router-id 10.255.0.4 + maximum-paths 4 ecmp 4 + no bgp default ipv4-unicast + neighbor EVPN-OVERLAY-PEERS peer group + neighbor EVPN-OVERLAY-PEERS update-source Loopback0 + neighbor EVPN-OVERLAY-PEERS bfd + neighbor EVPN-OVERLAY-PEERS ebgp-multihop 3 + neighbor EVPN-OVERLAY-PEERS password 7 Q4fqtbqcZ7oQuKfuWtNGRQ== + neighbor EVPN-OVERLAY-PEERS send-community + neighbor EVPN-OVERLAY-PEERS maximum-routes 0 + neighbor IPv4-UNDERLAY-PEERS peer group + neighbor IPv4-UNDERLAY-PEERS password 7 7x4B4rnJhZB438m9+BrBfQ== + neighbor IPv4-UNDERLAY-PEERS send-community + neighbor IPv4-UNDERLAY-PEERS maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER peer group + neighbor MLAG-IPv4-UNDERLAY-PEER remote-as 65101 + neighbor MLAG-IPv4-UNDERLAY-PEER next-hop-self + neighbor MLAG-IPv4-UNDERLAY-PEER description dc1-leaf1a + neighbor MLAG-IPv4-UNDERLAY-PEER password 7 4b21pAdCvWeAqpcKDFMdWw== + neighbor MLAG-IPv4-UNDERLAY-PEER send-community + neighbor MLAG-IPv4-UNDERLAY-PEER maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER route-map RM-MLAG-PEER-IN in + neighbor 10.255.0.1 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.1 remote-as 65100 + neighbor 10.255.0.1 description dc1-spine1 + neighbor 10.255.0.2 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.2 remote-as 65100 + neighbor 10.255.0.2 description dc1-spine2 + neighbor 10.255.1.96 peer group MLAG-IPv4-UNDERLAY-PEER + neighbor 10.255.1.96 description dc1-leaf1a + neighbor 10.255.255.4 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.4 remote-as 65100 + neighbor 10.255.255.4 description dc1-spine1_Ethernet2 + neighbor 10.255.255.6 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.6 remote-as 65100 + neighbor 10.255.255.6 description dc1-spine2_Ethernet2 + redistribute connected route-map RM-CONN-2-BGP + ! + vlan 11 + rd 10.255.0.4:10011 + route-target both 10011:10011 + redistribute learned + ! + vlan 12 + rd 10.255.0.4:10012 + route-target both 10012:10012 + redistribute learned + ! + vlan 21 + rd 10.255.0.4:10021 + route-target both 10021:10021 + redistribute learned + ! + vlan 22 + rd 10.255.0.4:10022 + route-target both 10022:10022 + redistribute learned + ! + vlan 3401 + rd 10.255.0.4:13401 + route-target both 13401:13401 + redistribute learned + ! + vlan 3402 + rd 10.255.0.4:13402 + route-target both 13402:13402 + redistribute learned + ! + address-family evpn + neighbor EVPN-OVERLAY-PEERS activate + ! + address-family ipv4 + no neighbor EVPN-OVERLAY-PEERS activate + neighbor IPv4-UNDERLAY-PEERS activate + neighbor MLAG-IPv4-UNDERLAY-PEER activate + ! + vrf VRF10 + rd 10.255.0.4:10 + route-target import evpn 10:10 + route-target export evpn 10:10 + router-id 10.255.0.4 + neighbor 10.255.1.96 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected + ! + vrf VRF11 + rd 10.255.0.4:11 + route-target import evpn 11:11 + route-target export evpn 11:11 + router-id 10.255.0.4 + neighbor 10.255.1.96 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf1c.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf1c.cfg new file mode 100644 index 0000000..e0ecb58 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf1c.cfg @@ -0,0 +1,89 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-leaf1c +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode mstp +spanning-tree mst 0 priority 32768 +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vlan 11 + name VRF10_VLAN11 +! +vlan 12 + name VRF10_VLAN12 +! +vlan 21 + name VRF11_VLAN21 +! +vlan 22 + name VRF11_VLAN22 +! +vlan 3401 + name L2_VLAN3401 +! +vlan 3402 + name L2_VLAN3402 +! +vrf instance MGMT +! +interface Port-Channel1 + description DC1_L3_LEAF1_Po8 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22,3401-3402 + switchport mode trunk +! +interface Ethernet1 + description DC1-LEAF1A_Ethernet8 + no shutdown + channel-group 1 mode active +! +interface Ethernet2 + description DC1-LEAF1B_Ethernet8 + no shutdown + channel-group 1 mode active +! +interface Ethernet5 + description dc1-leaf1-server1_iLO + no shutdown + switchport access vlan 11 + switchport mode access + switchport + spanning-tree portfast +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.151/24 +no ip routing vrf MGMT +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf2a.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf2a.cfg new file mode 100644 index 0000000..e616539 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf2a.cfg @@ -0,0 +1,356 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-leaf2a +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode mstp +no spanning-tree vlan-id 4093-4094 +spanning-tree mst 0 priority 4096 +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vlan 11 + name VRF10_VLAN11 +! +vlan 12 + name VRF10_VLAN12 +! +vlan 21 + name VRF11_VLAN21 +! +vlan 22 + name VRF11_VLAN22 +! +vlan 3009 + name MLAG_iBGP_VRF10 + trunk group LEAF_PEER_L3 +! +vlan 3010 + name MLAG_iBGP_VRF11 + trunk group LEAF_PEER_L3 +! +vlan 3401 + name L2_VLAN3401 +! +vlan 3402 + name L2_VLAN3402 +! +vlan 4093 + name LEAF_PEER_L3 + trunk group LEAF_PEER_L3 +! +vlan 4094 + name MLAG_PEER + trunk group MLAG +! +vrf instance MGMT +! +vrf instance VRF10 +! +vrf instance VRF11 +! +interface Port-Channel3 + description MLAG_PEER_dc1-leaf2b_Po3 + no shutdown + switchport + switchport mode trunk + switchport trunk group LEAF_PEER_L3 + switchport trunk group MLAG +! +interface Port-Channel5 + description dc1-leaf2-server1_PortChannel dc1-leaf2-server1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22 + switchport trunk native vlan 4092 + switchport mode trunk + mlag 5 + spanning-tree portfast +! +interface Port-Channel8 + description DC1-LEAF2C_Po1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22,3401-3402 + switchport mode trunk + mlag 8 +! +interface Ethernet1 + description P2P_LINK_TO_DC1-SPINE1_Ethernet3 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.9/31 +! +interface Ethernet2 + description P2P_LINK_TO_DC1-SPINE2_Ethernet3 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.11/31 +! +interface Ethernet3 + description MLAG_PEER_dc1-leaf2b_Ethernet3 + no shutdown + channel-group 3 mode active +! +interface Ethernet4 + description MLAG_PEER_dc1-leaf2b_Ethernet4 + no shutdown + channel-group 3 mode active +! +interface Ethernet5 + description dc1-leaf2-server1_PCI1 + no shutdown + channel-group 5 mode active +! +interface Ethernet8 + description DC1-LEAF2C_Ethernet1 + no shutdown + channel-group 8 mode active +! +interface Loopback0 + description EVPN_Overlay_Peering + no shutdown + ip address 10.255.0.5/32 +! +interface Loopback1 + description VTEP_VXLAN_Tunnel_Source + no shutdown + ip address 10.255.1.5/32 +! +interface Loopback10 + description VRF10_VTEP_DIAGNOSTICS + no shutdown + vrf VRF10 + ip address 10.255.10.5/32 +! +interface Loopback11 + description VRF11_VTEP_DIAGNOSTICS + no shutdown + vrf VRF11 + ip address 10.255.11.5/32 +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.103/24 +! +interface Vlan11 + description VRF10_VLAN11 + no shutdown + vrf VRF10 + ip address virtual 10.10.11.1/24 +! +interface Vlan12 + description VRF10_VLAN12 + no shutdown + vrf VRF10 + ip address virtual 10.10.12.1/24 +! +interface Vlan21 + description VRF11_VLAN21 + no shutdown + vrf VRF11 + ip address virtual 10.10.21.1/24 +! +interface Vlan22 + description VRF11_VLAN22 + no shutdown + vrf VRF11 + ip address virtual 10.10.22.1/24 +! +interface Vlan3009 + description MLAG_PEER_L3_iBGP: vrf VRF10 + no shutdown + mtu 1500 + vrf VRF10 + ip address 10.255.1.100/31 +! +interface Vlan3010 + description MLAG_PEER_L3_iBGP: vrf VRF11 + no shutdown + mtu 1500 + vrf VRF11 + ip address 10.255.1.100/31 +! +interface Vlan4093 + description MLAG_PEER_L3_PEERING + no shutdown + mtu 1500 + ip address 10.255.1.100/31 +! +interface Vlan4094 + description MLAG_PEER + no shutdown + mtu 1500 + no autostate + ip address 10.255.1.68/31 +! +interface Vxlan1 + description dc1-leaf2a_VTEP + vxlan source-interface Loopback1 + vxlan virtual-router encapsulation mac-address mlag-system-id + vxlan udp-port 4789 + vxlan vlan 11 vni 10011 + vxlan vlan 12 vni 10012 + vxlan vlan 21 vni 10021 + vxlan vlan 22 vni 10022 + vxlan vlan 3401 vni 13401 + vxlan vlan 3402 vni 13402 + vxlan vrf VRF10 vni 10 + vxlan vrf VRF11 vni 11 +! +ip virtual-router mac-address 00:1c:73:00:00:99 +! +ip address virtual source-nat vrf VRF10 address 10.255.10.5 +ip address virtual source-nat vrf VRF11 address 10.255.11.5 +! +ip routing +no ip routing vrf MGMT +ip routing vrf VRF10 +ip routing vrf VRF11 +! +ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY + seq 10 permit 10.255.0.0/27 eq 32 + seq 20 permit 10.255.1.0/27 eq 32 +! +mlag configuration + domain-id DC1_L3_LEAF2 + local-interface Vlan4094 + peer-address 10.255.1.69 + peer-link Port-Channel3 + reload-delay mlag 300 + reload-delay non-mlag 330 +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +route-map RM-CONN-2-BGP permit 10 + match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +! +route-map RM-MLAG-PEER-IN permit 10 + description Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing + set origin incomplete +! +router bfd + multihop interval 300 min-rx 300 multiplier 3 +! +router bgp 65102 + router-id 10.255.0.5 + maximum-paths 4 ecmp 4 + no bgp default ipv4-unicast + neighbor EVPN-OVERLAY-PEERS peer group + neighbor EVPN-OVERLAY-PEERS update-source Loopback0 + neighbor EVPN-OVERLAY-PEERS bfd + neighbor EVPN-OVERLAY-PEERS ebgp-multihop 3 + neighbor EVPN-OVERLAY-PEERS password 7 Q4fqtbqcZ7oQuKfuWtNGRQ== + neighbor EVPN-OVERLAY-PEERS send-community + neighbor EVPN-OVERLAY-PEERS maximum-routes 0 + neighbor IPv4-UNDERLAY-PEERS peer group + neighbor IPv4-UNDERLAY-PEERS password 7 7x4B4rnJhZB438m9+BrBfQ== + neighbor IPv4-UNDERLAY-PEERS send-community + neighbor IPv4-UNDERLAY-PEERS maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER peer group + neighbor MLAG-IPv4-UNDERLAY-PEER remote-as 65102 + neighbor MLAG-IPv4-UNDERLAY-PEER next-hop-self + neighbor MLAG-IPv4-UNDERLAY-PEER description dc1-leaf2b + neighbor MLAG-IPv4-UNDERLAY-PEER password 7 4b21pAdCvWeAqpcKDFMdWw== + neighbor MLAG-IPv4-UNDERLAY-PEER send-community + neighbor MLAG-IPv4-UNDERLAY-PEER maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER route-map RM-MLAG-PEER-IN in + neighbor 10.255.0.1 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.1 remote-as 65100 + neighbor 10.255.0.1 description dc1-spine1 + neighbor 10.255.0.2 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.2 remote-as 65100 + neighbor 10.255.0.2 description dc1-spine2 + neighbor 10.255.1.101 peer group MLAG-IPv4-UNDERLAY-PEER + neighbor 10.255.1.101 description dc1-leaf2b + neighbor 10.255.255.8 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.8 remote-as 65100 + neighbor 10.255.255.8 description dc1-spine1_Ethernet3 + neighbor 10.255.255.10 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.10 remote-as 65100 + neighbor 10.255.255.10 description dc1-spine2_Ethernet3 + redistribute connected route-map RM-CONN-2-BGP + ! + vlan 11 + rd 10.255.0.5:10011 + route-target both 10011:10011 + redistribute learned + ! + vlan 12 + rd 10.255.0.5:10012 + route-target both 10012:10012 + redistribute learned + ! + vlan 21 + rd 10.255.0.5:10021 + route-target both 10021:10021 + redistribute learned + ! + vlan 22 + rd 10.255.0.5:10022 + route-target both 10022:10022 + redistribute learned + ! + vlan 3401 + rd 10.255.0.5:13401 + route-target both 13401:13401 + redistribute learned + ! + vlan 3402 + rd 10.255.0.5:13402 + route-target both 13402:13402 + redistribute learned + ! + address-family evpn + neighbor EVPN-OVERLAY-PEERS activate + ! + address-family ipv4 + no neighbor EVPN-OVERLAY-PEERS activate + neighbor IPv4-UNDERLAY-PEERS activate + neighbor MLAG-IPv4-UNDERLAY-PEER activate + ! + vrf VRF10 + rd 10.255.0.5:10 + route-target import evpn 10:10 + route-target export evpn 10:10 + router-id 10.255.0.5 + neighbor 10.255.1.101 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected + ! + vrf VRF11 + rd 10.255.0.5:11 + route-target import evpn 11:11 + route-target export evpn 11:11 + router-id 10.255.0.5 + neighbor 10.255.1.101 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf2b.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf2b.cfg new file mode 100644 index 0000000..607d2f5 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf2b.cfg @@ -0,0 +1,356 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-leaf2b +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode mstp +no spanning-tree vlan-id 4093-4094 +spanning-tree mst 0 priority 4096 +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vlan 11 + name VRF10_VLAN11 +! +vlan 12 + name VRF10_VLAN12 +! +vlan 21 + name VRF11_VLAN21 +! +vlan 22 + name VRF11_VLAN22 +! +vlan 3009 + name MLAG_iBGP_VRF10 + trunk group LEAF_PEER_L3 +! +vlan 3010 + name MLAG_iBGP_VRF11 + trunk group LEAF_PEER_L3 +! +vlan 3401 + name L2_VLAN3401 +! +vlan 3402 + name L2_VLAN3402 +! +vlan 4093 + name LEAF_PEER_L3 + trunk group LEAF_PEER_L3 +! +vlan 4094 + name MLAG_PEER + trunk group MLAG +! +vrf instance MGMT +! +vrf instance VRF10 +! +vrf instance VRF11 +! +interface Port-Channel3 + description MLAG_PEER_dc1-leaf2a_Po3 + no shutdown + switchport + switchport mode trunk + switchport trunk group LEAF_PEER_L3 + switchport trunk group MLAG +! +interface Port-Channel5 + description dc1-leaf2-server1_PortChannel dc1-leaf2-server1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22 + switchport trunk native vlan 4092 + switchport mode trunk + mlag 5 + spanning-tree portfast +! +interface Port-Channel8 + description DC1-LEAF2C_Po1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22,3401-3402 + switchport mode trunk + mlag 8 +! +interface Ethernet1 + description P2P_LINK_TO_DC1-SPINE1_Ethernet4 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.13/31 +! +interface Ethernet2 + description P2P_LINK_TO_DC1-SPINE2_Ethernet4 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.15/31 +! +interface Ethernet3 + description MLAG_PEER_dc1-leaf2a_Ethernet3 + no shutdown + channel-group 3 mode active +! +interface Ethernet4 + description MLAG_PEER_dc1-leaf2a_Ethernet4 + no shutdown + channel-group 3 mode active +! +interface Ethernet5 + description dc1-leaf2-server1_PCI2 + no shutdown + channel-group 5 mode active +! +interface Ethernet8 + description DC1-LEAF2C_Ethernet2 + no shutdown + channel-group 8 mode active +! +interface Loopback0 + description EVPN_Overlay_Peering + no shutdown + ip address 10.255.0.6/32 +! +interface Loopback1 + description VTEP_VXLAN_Tunnel_Source + no shutdown + ip address 10.255.1.5/32 +! +interface Loopback10 + description VRF10_VTEP_DIAGNOSTICS + no shutdown + vrf VRF10 + ip address 10.255.10.6/32 +! +interface Loopback11 + description VRF11_VTEP_DIAGNOSTICS + no shutdown + vrf VRF11 + ip address 10.255.11.6/32 +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.104/24 +! +interface Vlan11 + description VRF10_VLAN11 + no shutdown + vrf VRF10 + ip address virtual 10.10.11.1/24 +! +interface Vlan12 + description VRF10_VLAN12 + no shutdown + vrf VRF10 + ip address virtual 10.10.12.1/24 +! +interface Vlan21 + description VRF11_VLAN21 + no shutdown + vrf VRF11 + ip address virtual 10.10.21.1/24 +! +interface Vlan22 + description VRF11_VLAN22 + no shutdown + vrf VRF11 + ip address virtual 10.10.22.1/24 +! +interface Vlan3009 + description MLAG_PEER_L3_iBGP: vrf VRF10 + no shutdown + mtu 1500 + vrf VRF10 + ip address 10.255.1.101/31 +! +interface Vlan3010 + description MLAG_PEER_L3_iBGP: vrf VRF11 + no shutdown + mtu 1500 + vrf VRF11 + ip address 10.255.1.101/31 +! +interface Vlan4093 + description MLAG_PEER_L3_PEERING + no shutdown + mtu 1500 + ip address 10.255.1.101/31 +! +interface Vlan4094 + description MLAG_PEER + no shutdown + mtu 1500 + no autostate + ip address 10.255.1.69/31 +! +interface Vxlan1 + description dc1-leaf2b_VTEP + vxlan source-interface Loopback1 + vxlan virtual-router encapsulation mac-address mlag-system-id + vxlan udp-port 4789 + vxlan vlan 11 vni 10011 + vxlan vlan 12 vni 10012 + vxlan vlan 21 vni 10021 + vxlan vlan 22 vni 10022 + vxlan vlan 3401 vni 13401 + vxlan vlan 3402 vni 13402 + vxlan vrf VRF10 vni 10 + vxlan vrf VRF11 vni 11 +! +ip virtual-router mac-address 00:1c:73:00:00:99 +! +ip address virtual source-nat vrf VRF10 address 10.255.10.6 +ip address virtual source-nat vrf VRF11 address 10.255.11.6 +! +ip routing +no ip routing vrf MGMT +ip routing vrf VRF10 +ip routing vrf VRF11 +! +ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY + seq 10 permit 10.255.0.0/27 eq 32 + seq 20 permit 10.255.1.0/27 eq 32 +! +mlag configuration + domain-id DC1_L3_LEAF2 + local-interface Vlan4094 + peer-address 10.255.1.68 + peer-link Port-Channel3 + reload-delay mlag 300 + reload-delay non-mlag 330 +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +route-map RM-CONN-2-BGP permit 10 + match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +! +route-map RM-MLAG-PEER-IN permit 10 + description Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing + set origin incomplete +! +router bfd + multihop interval 300 min-rx 300 multiplier 3 +! +router bgp 65102 + router-id 10.255.0.6 + maximum-paths 4 ecmp 4 + no bgp default ipv4-unicast + neighbor EVPN-OVERLAY-PEERS peer group + neighbor EVPN-OVERLAY-PEERS update-source Loopback0 + neighbor EVPN-OVERLAY-PEERS bfd + neighbor EVPN-OVERLAY-PEERS ebgp-multihop 3 + neighbor EVPN-OVERLAY-PEERS password 7 Q4fqtbqcZ7oQuKfuWtNGRQ== + neighbor EVPN-OVERLAY-PEERS send-community + neighbor EVPN-OVERLAY-PEERS maximum-routes 0 + neighbor IPv4-UNDERLAY-PEERS peer group + neighbor IPv4-UNDERLAY-PEERS password 7 7x4B4rnJhZB438m9+BrBfQ== + neighbor IPv4-UNDERLAY-PEERS send-community + neighbor IPv4-UNDERLAY-PEERS maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER peer group + neighbor MLAG-IPv4-UNDERLAY-PEER remote-as 65102 + neighbor MLAG-IPv4-UNDERLAY-PEER next-hop-self + neighbor MLAG-IPv4-UNDERLAY-PEER description dc1-leaf2a + neighbor MLAG-IPv4-UNDERLAY-PEER password 7 4b21pAdCvWeAqpcKDFMdWw== + neighbor MLAG-IPv4-UNDERLAY-PEER send-community + neighbor MLAG-IPv4-UNDERLAY-PEER maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER route-map RM-MLAG-PEER-IN in + neighbor 10.255.0.1 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.1 remote-as 65100 + neighbor 10.255.0.1 description dc1-spine1 + neighbor 10.255.0.2 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.2 remote-as 65100 + neighbor 10.255.0.2 description dc1-spine2 + neighbor 10.255.1.100 peer group MLAG-IPv4-UNDERLAY-PEER + neighbor 10.255.1.100 description dc1-leaf2a + neighbor 10.255.255.12 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.12 remote-as 65100 + neighbor 10.255.255.12 description dc1-spine1_Ethernet4 + neighbor 10.255.255.14 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.14 remote-as 65100 + neighbor 10.255.255.14 description dc1-spine2_Ethernet4 + redistribute connected route-map RM-CONN-2-BGP + ! + vlan 11 + rd 10.255.0.6:10011 + route-target both 10011:10011 + redistribute learned + ! + vlan 12 + rd 10.255.0.6:10012 + route-target both 10012:10012 + redistribute learned + ! + vlan 21 + rd 10.255.0.6:10021 + route-target both 10021:10021 + redistribute learned + ! + vlan 22 + rd 10.255.0.6:10022 + route-target both 10022:10022 + redistribute learned + ! + vlan 3401 + rd 10.255.0.6:13401 + route-target both 13401:13401 + redistribute learned + ! + vlan 3402 + rd 10.255.0.6:13402 + route-target both 13402:13402 + redistribute learned + ! + address-family evpn + neighbor EVPN-OVERLAY-PEERS activate + ! + address-family ipv4 + no neighbor EVPN-OVERLAY-PEERS activate + neighbor IPv4-UNDERLAY-PEERS activate + neighbor MLAG-IPv4-UNDERLAY-PEER activate + ! + vrf VRF10 + rd 10.255.0.6:10 + route-target import evpn 10:10 + route-target export evpn 10:10 + router-id 10.255.0.6 + neighbor 10.255.1.100 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected + ! + vrf VRF11 + rd 10.255.0.6:11 + route-target import evpn 11:11 + route-target export evpn 11:11 + router-id 10.255.0.6 + neighbor 10.255.1.100 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf2c.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf2c.cfg new file mode 100644 index 0000000..636f4a5 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-leaf2c.cfg @@ -0,0 +1,89 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-leaf2c +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode mstp +spanning-tree mst 0 priority 32768 +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vlan 11 + name VRF10_VLAN11 +! +vlan 12 + name VRF10_VLAN12 +! +vlan 21 + name VRF11_VLAN21 +! +vlan 22 + name VRF11_VLAN22 +! +vlan 3401 + name L2_VLAN3401 +! +vlan 3402 + name L2_VLAN3402 +! +vrf instance MGMT +! +interface Port-Channel1 + description DC1_L3_LEAF2_Po8 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22,3401-3402 + switchport mode trunk +! +interface Ethernet1 + description DC1-LEAF2A_Ethernet8 + no shutdown + channel-group 1 mode active +! +interface Ethernet2 + description DC1-LEAF2B_Ethernet8 + no shutdown + channel-group 1 mode active +! +interface Ethernet5 + description dc1-leaf2-server1_iLO + no shutdown + switchport access vlan 11 + switchport mode access + switchport + spanning-tree portfast +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.152/24 +no ip routing vrf MGMT +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-spine1.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-spine1.cfg new file mode 100644 index 0000000..a5e3a1d --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-spine1.cfg @@ -0,0 +1,138 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-spine1 +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode none +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vrf instance MGMT +! +interface Ethernet1 + description P2P_LINK_TO_DC1-LEAF1A_Ethernet1 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.0/31 +! +interface Ethernet2 + description P2P_LINK_TO_DC1-LEAF1B_Ethernet1 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.4/31 +! +interface Ethernet3 + description P2P_LINK_TO_DC1-LEAF2A_Ethernet1 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.8/31 +! +interface Ethernet4 + description P2P_LINK_TO_DC1-LEAF2B_Ethernet1 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.12/31 +! +interface Loopback0 + description EVPN_Overlay_Peering + no shutdown + ip address 10.255.0.1/32 +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.11/24 +! +ip routing +no ip routing vrf MGMT +! +ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY + seq 10 permit 10.255.0.0/27 eq 32 +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +route-map RM-CONN-2-BGP permit 10 + match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +! +router bfd + multihop interval 300 min-rx 300 multiplier 3 +! +router bgp 65100 + router-id 10.255.0.1 + maximum-paths 4 ecmp 4 + no bgp default ipv4-unicast + neighbor EVPN-OVERLAY-PEERS peer group + neighbor EVPN-OVERLAY-PEERS next-hop-unchanged + neighbor EVPN-OVERLAY-PEERS update-source Loopback0 + neighbor EVPN-OVERLAY-PEERS bfd + neighbor EVPN-OVERLAY-PEERS ebgp-multihop 3 + neighbor EVPN-OVERLAY-PEERS password 7 Q4fqtbqcZ7oQuKfuWtNGRQ== + neighbor EVPN-OVERLAY-PEERS send-community + neighbor EVPN-OVERLAY-PEERS maximum-routes 0 + neighbor IPv4-UNDERLAY-PEERS peer group + neighbor IPv4-UNDERLAY-PEERS password 7 7x4B4rnJhZB438m9+BrBfQ== + neighbor IPv4-UNDERLAY-PEERS send-community + neighbor IPv4-UNDERLAY-PEERS maximum-routes 12000 + neighbor 10.255.0.3 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.3 remote-as 65101 + neighbor 10.255.0.3 description dc1-leaf1a + neighbor 10.255.0.4 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.4 remote-as 65101 + neighbor 10.255.0.4 description dc1-leaf1b + neighbor 10.255.0.5 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.5 remote-as 65102 + neighbor 10.255.0.5 description dc1-leaf2a + neighbor 10.255.0.6 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.6 remote-as 65102 + neighbor 10.255.0.6 description dc1-leaf2b + neighbor 10.255.255.1 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.1 remote-as 65101 + neighbor 10.255.255.1 description dc1-leaf1a_Ethernet1 + neighbor 10.255.255.5 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.5 remote-as 65101 + neighbor 10.255.255.5 description dc1-leaf1b_Ethernet1 + neighbor 10.255.255.9 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.9 remote-as 65102 + neighbor 10.255.255.9 description dc1-leaf2a_Ethernet1 + neighbor 10.255.255.13 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.13 remote-as 65102 + neighbor 10.255.255.13 description dc1-leaf2b_Ethernet1 + redistribute connected route-map RM-CONN-2-BGP + ! + address-family evpn + neighbor EVPN-OVERLAY-PEERS activate + ! + address-family ipv4 + no neighbor EVPN-OVERLAY-PEERS activate + neighbor IPv4-UNDERLAY-PEERS activate +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-spine2.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-spine2.cfg new file mode 100644 index 0000000..2b82cf5 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/configs/dc1-spine2.cfg @@ -0,0 +1,138 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-spine2 +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode none +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vrf instance MGMT +! +interface Ethernet1 + description P2P_LINK_TO_DC1-LEAF1A_Ethernet2 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.2/31 +! +interface Ethernet2 + description P2P_LINK_TO_DC1-LEAF1B_Ethernet2 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.6/31 +! +interface Ethernet3 + description P2P_LINK_TO_DC1-LEAF2A_Ethernet2 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.10/31 +! +interface Ethernet4 + description P2P_LINK_TO_DC1-LEAF2B_Ethernet2 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.14/31 +! +interface Loopback0 + description EVPN_Overlay_Peering + no shutdown + ip address 10.255.0.2/32 +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.12/24 +! +ip routing +no ip routing vrf MGMT +! +ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY + seq 10 permit 10.255.0.0/27 eq 32 +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +route-map RM-CONN-2-BGP permit 10 + match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +! +router bfd + multihop interval 300 min-rx 300 multiplier 3 +! +router bgp 65100 + router-id 10.255.0.2 + maximum-paths 4 ecmp 4 + no bgp default ipv4-unicast + neighbor EVPN-OVERLAY-PEERS peer group + neighbor EVPN-OVERLAY-PEERS next-hop-unchanged + neighbor EVPN-OVERLAY-PEERS update-source Loopback0 + neighbor EVPN-OVERLAY-PEERS bfd + neighbor EVPN-OVERLAY-PEERS ebgp-multihop 3 + neighbor EVPN-OVERLAY-PEERS password 7 Q4fqtbqcZ7oQuKfuWtNGRQ== + neighbor EVPN-OVERLAY-PEERS send-community + neighbor EVPN-OVERLAY-PEERS maximum-routes 0 + neighbor IPv4-UNDERLAY-PEERS peer group + neighbor IPv4-UNDERLAY-PEERS password 7 7x4B4rnJhZB438m9+BrBfQ== + neighbor IPv4-UNDERLAY-PEERS send-community + neighbor IPv4-UNDERLAY-PEERS maximum-routes 12000 + neighbor 10.255.0.3 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.3 remote-as 65101 + neighbor 10.255.0.3 description dc1-leaf1a + neighbor 10.255.0.4 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.4 remote-as 65101 + neighbor 10.255.0.4 description dc1-leaf1b + neighbor 10.255.0.5 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.5 remote-as 65102 + neighbor 10.255.0.5 description dc1-leaf2a + neighbor 10.255.0.6 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.6 remote-as 65102 + neighbor 10.255.0.6 description dc1-leaf2b + neighbor 10.255.255.3 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.3 remote-as 65101 + neighbor 10.255.255.3 description dc1-leaf1a_Ethernet2 + neighbor 10.255.255.7 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.7 remote-as 65101 + neighbor 10.255.255.7 description dc1-leaf1b_Ethernet2 + neighbor 10.255.255.11 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.11 remote-as 65102 + neighbor 10.255.255.11 description dc1-leaf2a_Ethernet2 + neighbor 10.255.255.15 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.15 remote-as 65102 + neighbor 10.255.255.15 description dc1-leaf2b_Ethernet2 + redistribute connected route-map RM-CONN-2-BGP + ! + address-family evpn + neighbor EVPN-OVERLAY-PEERS activate + ! + address-family ipv4 + no neighbor EVPN-OVERLAY-PEERS activate + neighbor IPv4-UNDERLAY-PEERS activate +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf1a.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf1a.yml new file mode 100644 index 0000000..33b2c59 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf1a.yml @@ -0,0 +1,488 @@ +hostname: dc1-leaf1a +is_deployed: true +router_bgp: + as: '65101' + router_id: 10.255.0.3 + bgp: + default: + ipv4_unicast: false + maximum_paths: + paths: 4 + ecmp: 4 + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + type: ipv4 + remote_as: '65101' + next_hop_self: true + description: dc1-leaf1b + password: 4b21pAdCvWeAqpcKDFMdWw== + maximum_routes: 12000 + send_community: all + route_map_in: RM-MLAG-PEER-IN + - name: IPv4-UNDERLAY-PEERS + type: ipv4 + password: 7x4B4rnJhZB438m9+BrBfQ== + maximum_routes: 12000 + send_community: all + - name: EVPN-OVERLAY-PEERS + type: evpn + update_source: Loopback0 + bfd: true + password: Q4fqtbqcZ7oQuKfuWtNGRQ== + send_community: all + maximum_routes: 0 + ebgp_multihop: 3 + address_family_ipv4: + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + activate: true + - name: IPv4-UNDERLAY-PEERS + activate: true + - name: EVPN-OVERLAY-PEERS + activate: false + neighbors: + - ip_address: 10.255.1.97 + peer_group: MLAG-IPv4-UNDERLAY-PEER + peer: dc1-leaf1b + description: dc1-leaf1b + - ip_address: 10.255.255.0 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine1 + description: dc1-spine1_Ethernet1 + - ip_address: 10.255.255.2 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine2 + description: dc1-spine2_Ethernet1 + - ip_address: 10.255.0.1 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine1 + description: dc1-spine1 + remote_as: '65100' + - ip_address: 10.255.0.2 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine2 + description: dc1-spine2 + remote_as: '65100' + redistribute_routes: + - source_protocol: connected + route_map: RM-CONN-2-BGP + address_family_evpn: + peer_groups: + - name: EVPN-OVERLAY-PEERS + activate: true + vrfs: + - name: VRF10 + router_id: 10.255.0.3 + rd: 10.255.0.3:10 + route_targets: + import: + - address_family: evpn + route_targets: + - '10:10' + export: + - address_family: evpn + route_targets: + - '10:10' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.97 + peer_group: MLAG-IPv4-UNDERLAY-PEER + - name: VRF11 + router_id: 10.255.0.3 + rd: 10.255.0.3:11 + route_targets: + import: + - address_family: evpn + route_targets: + - '11:11' + export: + - address_family: evpn + route_targets: + - '11:11' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.97 + peer_group: MLAG-IPv4-UNDERLAY-PEER + vlans: + - id: 11 + tenant: TENANT1 + rd: 10.255.0.3:10011 + route_targets: + both: + - 10011:10011 + redistribute_routes: + - learned + - id: 12 + tenant: TENANT1 + rd: 10.255.0.3:10012 + route_targets: + both: + - 10012:10012 + redistribute_routes: + - learned + - id: 21 + tenant: TENANT1 + rd: 10.255.0.3:10021 + route_targets: + both: + - 10021:10021 + redistribute_routes: + - learned + - id: 22 + tenant: TENANT1 + rd: 10.255.0.3:10022 + route_targets: + both: + - 10022:10022 + redistribute_routes: + - learned + - id: 3401 + tenant: TENANT1 + rd: 10.255.0.3:13401 + route_targets: + both: + - 13401:13401 + redistribute_routes: + - learned + - id: 3402 + tenant: TENANT1 + rd: 10.255.0.3:13402 + route_targets: + both: + - 13402:13402 + redistribute_routes: + - learned +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +ip_routing: true +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: mstp + mst_instances: + - id: '0' + priority: 4096 + no_spanning_tree_vlan: 4093-4094 +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +- name: VRF10 + tenant: TENANT1 + ip_routing: true +- name: VRF11 + tenant: TENANT1 + ip_routing: true +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.101/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +vlans: +- id: 4093 + tenant: system + name: LEAF_PEER_L3 + trunk_groups: + - LEAF_PEER_L3 +- id: 4094 + tenant: system + name: MLAG_PEER + trunk_groups: + - MLAG +- id: 11 + name: VRF10_VLAN11 + tenant: TENANT1 +- id: 12 + name: VRF10_VLAN12 + tenant: TENANT1 +- id: 3009 + name: MLAG_iBGP_VRF10 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 21 + name: VRF11_VLAN21 + tenant: TENANT1 +- id: 22 + name: VRF11_VLAN22 + tenant: TENANT1 +- id: 3010 + name: MLAG_iBGP_VRF11 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 3401 + name: L2_VLAN3401 + tenant: TENANT1 +- id: 3402 + name: L2_VLAN3402 + tenant: TENANT1 +vlan_interfaces: +- name: Vlan4093 + description: MLAG_PEER_L3_PEERING + shutdown: false + mtu: 1500 + ip_address: 10.255.1.96/31 +- name: Vlan4094 + description: MLAG_PEER + shutdown: false + no_autostate: true + mtu: 1500 + ip_address: 10.255.1.64/31 +- name: Vlan11 + tenant: TENANT1 + description: VRF10_VLAN11 + shutdown: false + ip_address_virtual: 10.10.11.1/24 + vrf: VRF10 +- name: Vlan12 + tenant: TENANT1 + description: VRF10_VLAN12 + shutdown: false + ip_address_virtual: 10.10.12.1/24 + vrf: VRF10 +- name: Vlan3009 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF10' + vrf: VRF10 + mtu: 1500 + ip_address: 10.255.1.96/31 +- name: Vlan21 + tenant: TENANT1 + description: VRF11_VLAN21 + shutdown: false + ip_address_virtual: 10.10.21.1/24 + vrf: VRF11 +- name: Vlan22 + tenant: TENANT1 + description: VRF11_VLAN22 + shutdown: false + ip_address_virtual: 10.10.22.1/24 + vrf: VRF11 +- name: Vlan3010 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF11' + vrf: VRF11 + mtu: 1500 + ip_address: 10.255.1.96/31 +port_channel_interfaces: +- name: Port-Channel3 + description: MLAG_PEER_dc1-leaf1b_Po3 + type: switched + shutdown: false + mode: trunk + trunk_groups: + - LEAF_PEER_L3 + - MLAG +- name: Port-Channel8 + description: DC1-LEAF1C_Po1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22,3401-3402 + mlag: 8 +- name: Port-Channel5 + description: dc1-leaf1-server1_PortChannel dc1-leaf1-server1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22 + native_vlan: 4092 + spanning_tree_portfast: edge + mlag: 5 +ethernet_interfaces: +- name: Ethernet3 + peer: dc1-leaf1b + peer_interface: Ethernet3 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf1b_Ethernet3 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet4 + peer: dc1-leaf1b + peer_interface: Ethernet4 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf1b_Ethernet4 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet1 + peer: dc1-spine1 + peer_interface: Ethernet1 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE1_Ethernet1 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.1/31 +- name: Ethernet2 + peer: dc1-spine2 + peer_interface: Ethernet1 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE2_Ethernet1 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.3/31 +- name: Ethernet8 + peer: dc1-leaf1c + peer_interface: Ethernet1 + peer_type: l2leaf + description: DC1-LEAF1C_Ethernet1 + shutdown: false + type: port-channel-member + channel_group: + id: 8 + mode: active +- name: Ethernet5 + peer: dc1-leaf1-server1 + peer_interface: PCI1 + peer_type: server + description: dc1-leaf1-server1_PCI1 + shutdown: false + type: port-channel-member + channel_group: + id: 5 + mode: active +mlag_configuration: + domain_id: DC1_L3_LEAF1 + local_interface: Vlan4094 + peer_address: 10.255.1.65 + peer_link: Port-Channel3 + reload_delay_mlag: '300' + reload_delay_non_mlag: '330' +route_maps: +- name: RM-MLAG-PEER-IN + sequence_numbers: + - sequence: 10 + type: permit + set: + - origin incomplete + description: Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing +- name: RM-CONN-2-BGP + sequence_numbers: + - sequence: 10 + type: permit + match: + - ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +loopback_interfaces: +- name: Loopback0 + description: EVPN_Overlay_Peering + shutdown: false + ip_address: 10.255.0.3/32 +- name: Loopback1 + description: VTEP_VXLAN_Tunnel_Source + shutdown: false + ip_address: 10.255.1.3/32 +- name: Loopback10 + description: VRF10_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF10 + ip_address: 10.255.10.3/32 +- name: Loopback11 + description: VRF11_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF11 + ip_address: 10.255.11.3/32 +prefix_lists: +- name: PL-LOOPBACKS-EVPN-OVERLAY + sequence_numbers: + - sequence: 10 + action: permit 10.255.0.0/27 eq 32 + - sequence: 20 + action: permit 10.255.1.0/27 eq 32 +router_bfd: + multihop: + interval: 300 + min_rx: 300 + multiplier: 3 +ip_igmp_snooping: + globally_enabled: true +ip_virtual_router_mac_address: 00:1c:73:00:00:99 +vxlan_interface: + Vxlan1: + description: dc1-leaf1a_VTEP + vxlan: + udp_port: 4789 + source_interface: Loopback1 + virtual_router_encapsulation_mac_address: mlag-system-id + vlans: + - id: 11 + vni: 10011 + - id: 12 + vni: 10012 + - id: 21 + vni: 10021 + - id: 22 + vni: 10022 + - id: 3401 + vni: 13401 + - id: 3402 + vni: 13402 + vrfs: + - name: VRF10 + vni: 10 + - name: VRF11 + vni: 11 +virtual_source_nat_vrfs: +- name: VRF10 + ip_address: 10.255.10.3 +- name: VRF11 + ip_address: 10.255.11.3 +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf1b.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf1b.yml new file mode 100644 index 0000000..9ca6cf6 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf1b.yml @@ -0,0 +1,488 @@ +hostname: dc1-leaf1b +is_deployed: true +router_bgp: + as: '65101' + router_id: 10.255.0.4 + bgp: + default: + ipv4_unicast: false + maximum_paths: + paths: 4 + ecmp: 4 + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + type: ipv4 + remote_as: '65101' + next_hop_self: true + description: dc1-leaf1a + password: 4b21pAdCvWeAqpcKDFMdWw== + maximum_routes: 12000 + send_community: all + route_map_in: RM-MLAG-PEER-IN + - name: IPv4-UNDERLAY-PEERS + type: ipv4 + password: 7x4B4rnJhZB438m9+BrBfQ== + maximum_routes: 12000 + send_community: all + - name: EVPN-OVERLAY-PEERS + type: evpn + update_source: Loopback0 + bfd: true + password: Q4fqtbqcZ7oQuKfuWtNGRQ== + send_community: all + maximum_routes: 0 + ebgp_multihop: 3 + address_family_ipv4: + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + activate: true + - name: IPv4-UNDERLAY-PEERS + activate: true + - name: EVPN-OVERLAY-PEERS + activate: false + neighbors: + - ip_address: 10.255.1.96 + peer_group: MLAG-IPv4-UNDERLAY-PEER + peer: dc1-leaf1a + description: dc1-leaf1a + - ip_address: 10.255.255.4 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine1 + description: dc1-spine1_Ethernet2 + - ip_address: 10.255.255.6 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine2 + description: dc1-spine2_Ethernet2 + - ip_address: 10.255.0.1 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine1 + description: dc1-spine1 + remote_as: '65100' + - ip_address: 10.255.0.2 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine2 + description: dc1-spine2 + remote_as: '65100' + redistribute_routes: + - source_protocol: connected + route_map: RM-CONN-2-BGP + address_family_evpn: + peer_groups: + - name: EVPN-OVERLAY-PEERS + activate: true + vrfs: + - name: VRF10 + router_id: 10.255.0.4 + rd: 10.255.0.4:10 + route_targets: + import: + - address_family: evpn + route_targets: + - '10:10' + export: + - address_family: evpn + route_targets: + - '10:10' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.96 + peer_group: MLAG-IPv4-UNDERLAY-PEER + - name: VRF11 + router_id: 10.255.0.4 + rd: 10.255.0.4:11 + route_targets: + import: + - address_family: evpn + route_targets: + - '11:11' + export: + - address_family: evpn + route_targets: + - '11:11' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.96 + peer_group: MLAG-IPv4-UNDERLAY-PEER + vlans: + - id: 11 + tenant: TENANT1 + rd: 10.255.0.4:10011 + route_targets: + both: + - 10011:10011 + redistribute_routes: + - learned + - id: 12 + tenant: TENANT1 + rd: 10.255.0.4:10012 + route_targets: + both: + - 10012:10012 + redistribute_routes: + - learned + - id: 21 + tenant: TENANT1 + rd: 10.255.0.4:10021 + route_targets: + both: + - 10021:10021 + redistribute_routes: + - learned + - id: 22 + tenant: TENANT1 + rd: 10.255.0.4:10022 + route_targets: + both: + - 10022:10022 + redistribute_routes: + - learned + - id: 3401 + tenant: TENANT1 + rd: 10.255.0.4:13401 + route_targets: + both: + - 13401:13401 + redistribute_routes: + - learned + - id: 3402 + tenant: TENANT1 + rd: 10.255.0.4:13402 + route_targets: + both: + - 13402:13402 + redistribute_routes: + - learned +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +ip_routing: true +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: mstp + mst_instances: + - id: '0' + priority: 4096 + no_spanning_tree_vlan: 4093-4094 +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +- name: VRF10 + tenant: TENANT1 + ip_routing: true +- name: VRF11 + tenant: TENANT1 + ip_routing: true +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.102/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +vlans: +- id: 4093 + tenant: system + name: LEAF_PEER_L3 + trunk_groups: + - LEAF_PEER_L3 +- id: 4094 + tenant: system + name: MLAG_PEER + trunk_groups: + - MLAG +- id: 11 + name: VRF10_VLAN11 + tenant: TENANT1 +- id: 12 + name: VRF10_VLAN12 + tenant: TENANT1 +- id: 3009 + name: MLAG_iBGP_VRF10 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 21 + name: VRF11_VLAN21 + tenant: TENANT1 +- id: 22 + name: VRF11_VLAN22 + tenant: TENANT1 +- id: 3010 + name: MLAG_iBGP_VRF11 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 3401 + name: L2_VLAN3401 + tenant: TENANT1 +- id: 3402 + name: L2_VLAN3402 + tenant: TENANT1 +vlan_interfaces: +- name: Vlan4093 + description: MLAG_PEER_L3_PEERING + shutdown: false + mtu: 1500 + ip_address: 10.255.1.97/31 +- name: Vlan4094 + description: MLAG_PEER + shutdown: false + no_autostate: true + mtu: 1500 + ip_address: 10.255.1.65/31 +- name: Vlan11 + tenant: TENANT1 + description: VRF10_VLAN11 + shutdown: false + ip_address_virtual: 10.10.11.1/24 + vrf: VRF10 +- name: Vlan12 + tenant: TENANT1 + description: VRF10_VLAN12 + shutdown: false + ip_address_virtual: 10.10.12.1/24 + vrf: VRF10 +- name: Vlan3009 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF10' + vrf: VRF10 + mtu: 1500 + ip_address: 10.255.1.97/31 +- name: Vlan21 + tenant: TENANT1 + description: VRF11_VLAN21 + shutdown: false + ip_address_virtual: 10.10.21.1/24 + vrf: VRF11 +- name: Vlan22 + tenant: TENANT1 + description: VRF11_VLAN22 + shutdown: false + ip_address_virtual: 10.10.22.1/24 + vrf: VRF11 +- name: Vlan3010 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF11' + vrf: VRF11 + mtu: 1500 + ip_address: 10.255.1.97/31 +port_channel_interfaces: +- name: Port-Channel3 + description: MLAG_PEER_dc1-leaf1a_Po3 + type: switched + shutdown: false + mode: trunk + trunk_groups: + - LEAF_PEER_L3 + - MLAG +- name: Port-Channel8 + description: DC1-LEAF1C_Po1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22,3401-3402 + mlag: 8 +- name: Port-Channel5 + description: dc1-leaf1-server1_PortChannel dc1-leaf1-server1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22 + native_vlan: 4092 + spanning_tree_portfast: edge + mlag: 5 +ethernet_interfaces: +- name: Ethernet3 + peer: dc1-leaf1a + peer_interface: Ethernet3 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf1a_Ethernet3 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet4 + peer: dc1-leaf1a + peer_interface: Ethernet4 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf1a_Ethernet4 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet1 + peer: dc1-spine1 + peer_interface: Ethernet2 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE1_Ethernet2 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.5/31 +- name: Ethernet2 + peer: dc1-spine2 + peer_interface: Ethernet2 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE2_Ethernet2 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.7/31 +- name: Ethernet8 + peer: dc1-leaf1c + peer_interface: Ethernet2 + peer_type: l2leaf + description: DC1-LEAF1C_Ethernet2 + shutdown: false + type: port-channel-member + channel_group: + id: 8 + mode: active +- name: Ethernet5 + peer: dc1-leaf1-server1 + peer_interface: PCI2 + peer_type: server + description: dc1-leaf1-server1_PCI2 + shutdown: false + type: port-channel-member + channel_group: + id: 5 + mode: active +mlag_configuration: + domain_id: DC1_L3_LEAF1 + local_interface: Vlan4094 + peer_address: 10.255.1.64 + peer_link: Port-Channel3 + reload_delay_mlag: '300' + reload_delay_non_mlag: '330' +route_maps: +- name: RM-MLAG-PEER-IN + sequence_numbers: + - sequence: 10 + type: permit + set: + - origin incomplete + description: Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing +- name: RM-CONN-2-BGP + sequence_numbers: + - sequence: 10 + type: permit + match: + - ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +loopback_interfaces: +- name: Loopback0 + description: EVPN_Overlay_Peering + shutdown: false + ip_address: 10.255.0.4/32 +- name: Loopback1 + description: VTEP_VXLAN_Tunnel_Source + shutdown: false + ip_address: 10.255.1.3/32 +- name: Loopback10 + description: VRF10_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF10 + ip_address: 10.255.10.4/32 +- name: Loopback11 + description: VRF11_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF11 + ip_address: 10.255.11.4/32 +prefix_lists: +- name: PL-LOOPBACKS-EVPN-OVERLAY + sequence_numbers: + - sequence: 10 + action: permit 10.255.0.0/27 eq 32 + - sequence: 20 + action: permit 10.255.1.0/27 eq 32 +router_bfd: + multihop: + interval: 300 + min_rx: 300 + multiplier: 3 +ip_igmp_snooping: + globally_enabled: true +ip_virtual_router_mac_address: 00:1c:73:00:00:99 +vxlan_interface: + Vxlan1: + description: dc1-leaf1b_VTEP + vxlan: + udp_port: 4789 + source_interface: Loopback1 + virtual_router_encapsulation_mac_address: mlag-system-id + vlans: + - id: 11 + vni: 10011 + - id: 12 + vni: 10012 + - id: 21 + vni: 10021 + - id: 22 + vni: 10022 + - id: 3401 + vni: 13401 + - id: 3402 + vni: 13402 + vrfs: + - name: VRF10 + vni: 10 + - name: VRF11 + vni: 11 +virtual_source_nat_vrfs: +- name: VRF10 + ip_address: 10.255.10.4 +- name: VRF11 + ip_address: 10.255.11.4 +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf1c.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf1c.yml new file mode 100644 index 0000000..89bd6af --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf1c.yml @@ -0,0 +1,123 @@ +hostname: dc1-leaf1c +is_deployed: true +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: mstp + mst_instances: + - id: '0' + priority: 32768 +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.151/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +ethernet_interfaces: +- name: Ethernet1 + peer: dc1-leaf1a + peer_interface: Ethernet8 + peer_type: l3leaf + description: DC1-LEAF1A_Ethernet8 + shutdown: false + type: port-channel-member + channel_group: + id: 1 + mode: active +- name: Ethernet2 + peer: dc1-leaf1b + peer_interface: Ethernet8 + peer_type: l3leaf + description: DC1-LEAF1B_Ethernet8 + shutdown: false + type: port-channel-member + channel_group: + id: 1 + mode: active +- name: Ethernet5 + peer: dc1-leaf1-server1 + peer_interface: iLO + peer_type: server + description: dc1-leaf1-server1_iLO + shutdown: false + type: switched + mode: access + vlans: '11' + spanning_tree_portfast: edge +port_channel_interfaces: +- name: Port-Channel1 + description: DC1_L3_LEAF1_Po8 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22,3401-3402 +vlans: +- id: 11 + name: VRF10_VLAN11 + tenant: TENANT1 +- id: 12 + name: VRF10_VLAN12 + tenant: TENANT1 +- id: 21 + name: VRF11_VLAN21 + tenant: TENANT1 +- id: 22 + name: VRF11_VLAN22 + tenant: TENANT1 +- id: 3401 + name: L2_VLAN3401 + tenant: TENANT1 +- id: 3402 + name: L2_VLAN3402 + tenant: TENANT1 +ip_igmp_snooping: + globally_enabled: true +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf2a.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf2a.yml new file mode 100644 index 0000000..8a9af75 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf2a.yml @@ -0,0 +1,488 @@ +hostname: dc1-leaf2a +is_deployed: true +router_bgp: + as: '65102' + router_id: 10.255.0.5 + bgp: + default: + ipv4_unicast: false + maximum_paths: + paths: 4 + ecmp: 4 + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + type: ipv4 + remote_as: '65102' + next_hop_self: true + description: dc1-leaf2b + password: 4b21pAdCvWeAqpcKDFMdWw== + maximum_routes: 12000 + send_community: all + route_map_in: RM-MLAG-PEER-IN + - name: IPv4-UNDERLAY-PEERS + type: ipv4 + password: 7x4B4rnJhZB438m9+BrBfQ== + maximum_routes: 12000 + send_community: all + - name: EVPN-OVERLAY-PEERS + type: evpn + update_source: Loopback0 + bfd: true + password: Q4fqtbqcZ7oQuKfuWtNGRQ== + send_community: all + maximum_routes: 0 + ebgp_multihop: 3 + address_family_ipv4: + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + activate: true + - name: IPv4-UNDERLAY-PEERS + activate: true + - name: EVPN-OVERLAY-PEERS + activate: false + neighbors: + - ip_address: 10.255.1.101 + peer_group: MLAG-IPv4-UNDERLAY-PEER + peer: dc1-leaf2b + description: dc1-leaf2b + - ip_address: 10.255.255.8 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine1 + description: dc1-spine1_Ethernet3 + - ip_address: 10.255.255.10 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine2 + description: dc1-spine2_Ethernet3 + - ip_address: 10.255.0.1 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine1 + description: dc1-spine1 + remote_as: '65100' + - ip_address: 10.255.0.2 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine2 + description: dc1-spine2 + remote_as: '65100' + redistribute_routes: + - source_protocol: connected + route_map: RM-CONN-2-BGP + address_family_evpn: + peer_groups: + - name: EVPN-OVERLAY-PEERS + activate: true + vrfs: + - name: VRF10 + router_id: 10.255.0.5 + rd: 10.255.0.5:10 + route_targets: + import: + - address_family: evpn + route_targets: + - '10:10' + export: + - address_family: evpn + route_targets: + - '10:10' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.101 + peer_group: MLAG-IPv4-UNDERLAY-PEER + - name: VRF11 + router_id: 10.255.0.5 + rd: 10.255.0.5:11 + route_targets: + import: + - address_family: evpn + route_targets: + - '11:11' + export: + - address_family: evpn + route_targets: + - '11:11' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.101 + peer_group: MLAG-IPv4-UNDERLAY-PEER + vlans: + - id: 11 + tenant: TENANT1 + rd: 10.255.0.5:10011 + route_targets: + both: + - 10011:10011 + redistribute_routes: + - learned + - id: 12 + tenant: TENANT1 + rd: 10.255.0.5:10012 + route_targets: + both: + - 10012:10012 + redistribute_routes: + - learned + - id: 21 + tenant: TENANT1 + rd: 10.255.0.5:10021 + route_targets: + both: + - 10021:10021 + redistribute_routes: + - learned + - id: 22 + tenant: TENANT1 + rd: 10.255.0.5:10022 + route_targets: + both: + - 10022:10022 + redistribute_routes: + - learned + - id: 3401 + tenant: TENANT1 + rd: 10.255.0.5:13401 + route_targets: + both: + - 13401:13401 + redistribute_routes: + - learned + - id: 3402 + tenant: TENANT1 + rd: 10.255.0.5:13402 + route_targets: + both: + - 13402:13402 + redistribute_routes: + - learned +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +ip_routing: true +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: mstp + mst_instances: + - id: '0' + priority: 4096 + no_spanning_tree_vlan: 4093-4094 +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +- name: VRF10 + tenant: TENANT1 + ip_routing: true +- name: VRF11 + tenant: TENANT1 + ip_routing: true +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.103/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +vlans: +- id: 4093 + tenant: system + name: LEAF_PEER_L3 + trunk_groups: + - LEAF_PEER_L3 +- id: 4094 + tenant: system + name: MLAG_PEER + trunk_groups: + - MLAG +- id: 11 + name: VRF10_VLAN11 + tenant: TENANT1 +- id: 12 + name: VRF10_VLAN12 + tenant: TENANT1 +- id: 3009 + name: MLAG_iBGP_VRF10 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 21 + name: VRF11_VLAN21 + tenant: TENANT1 +- id: 22 + name: VRF11_VLAN22 + tenant: TENANT1 +- id: 3010 + name: MLAG_iBGP_VRF11 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 3401 + name: L2_VLAN3401 + tenant: TENANT1 +- id: 3402 + name: L2_VLAN3402 + tenant: TENANT1 +vlan_interfaces: +- name: Vlan4093 + description: MLAG_PEER_L3_PEERING + shutdown: false + mtu: 1500 + ip_address: 10.255.1.100/31 +- name: Vlan4094 + description: MLAG_PEER + shutdown: false + no_autostate: true + mtu: 1500 + ip_address: 10.255.1.68/31 +- name: Vlan11 + tenant: TENANT1 + description: VRF10_VLAN11 + shutdown: false + ip_address_virtual: 10.10.11.1/24 + vrf: VRF10 +- name: Vlan12 + tenant: TENANT1 + description: VRF10_VLAN12 + shutdown: false + ip_address_virtual: 10.10.12.1/24 + vrf: VRF10 +- name: Vlan3009 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF10' + vrf: VRF10 + mtu: 1500 + ip_address: 10.255.1.100/31 +- name: Vlan21 + tenant: TENANT1 + description: VRF11_VLAN21 + shutdown: false + ip_address_virtual: 10.10.21.1/24 + vrf: VRF11 +- name: Vlan22 + tenant: TENANT1 + description: VRF11_VLAN22 + shutdown: false + ip_address_virtual: 10.10.22.1/24 + vrf: VRF11 +- name: Vlan3010 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF11' + vrf: VRF11 + mtu: 1500 + ip_address: 10.255.1.100/31 +port_channel_interfaces: +- name: Port-Channel3 + description: MLAG_PEER_dc1-leaf2b_Po3 + type: switched + shutdown: false + mode: trunk + trunk_groups: + - LEAF_PEER_L3 + - MLAG +- name: Port-Channel8 + description: DC1-LEAF2C_Po1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22,3401-3402 + mlag: 8 +- name: Port-Channel5 + description: dc1-leaf2-server1_PortChannel dc1-leaf2-server1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22 + native_vlan: 4092 + spanning_tree_portfast: edge + mlag: 5 +ethernet_interfaces: +- name: Ethernet3 + peer: dc1-leaf2b + peer_interface: Ethernet3 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf2b_Ethernet3 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet4 + peer: dc1-leaf2b + peer_interface: Ethernet4 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf2b_Ethernet4 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet1 + peer: dc1-spine1 + peer_interface: Ethernet3 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE1_Ethernet3 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.9/31 +- name: Ethernet2 + peer: dc1-spine2 + peer_interface: Ethernet3 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE2_Ethernet3 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.11/31 +- name: Ethernet8 + peer: dc1-leaf2c + peer_interface: Ethernet1 + peer_type: l2leaf + description: DC1-LEAF2C_Ethernet1 + shutdown: false + type: port-channel-member + channel_group: + id: 8 + mode: active +- name: Ethernet5 + peer: dc1-leaf2-server1 + peer_interface: PCI1 + peer_type: server + description: dc1-leaf2-server1_PCI1 + shutdown: false + type: port-channel-member + channel_group: + id: 5 + mode: active +mlag_configuration: + domain_id: DC1_L3_LEAF2 + local_interface: Vlan4094 + peer_address: 10.255.1.69 + peer_link: Port-Channel3 + reload_delay_mlag: '300' + reload_delay_non_mlag: '330' +route_maps: +- name: RM-MLAG-PEER-IN + sequence_numbers: + - sequence: 10 + type: permit + set: + - origin incomplete + description: Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing +- name: RM-CONN-2-BGP + sequence_numbers: + - sequence: 10 + type: permit + match: + - ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +loopback_interfaces: +- name: Loopback0 + description: EVPN_Overlay_Peering + shutdown: false + ip_address: 10.255.0.5/32 +- name: Loopback1 + description: VTEP_VXLAN_Tunnel_Source + shutdown: false + ip_address: 10.255.1.5/32 +- name: Loopback10 + description: VRF10_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF10 + ip_address: 10.255.10.5/32 +- name: Loopback11 + description: VRF11_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF11 + ip_address: 10.255.11.5/32 +prefix_lists: +- name: PL-LOOPBACKS-EVPN-OVERLAY + sequence_numbers: + - sequence: 10 + action: permit 10.255.0.0/27 eq 32 + - sequence: 20 + action: permit 10.255.1.0/27 eq 32 +router_bfd: + multihop: + interval: 300 + min_rx: 300 + multiplier: 3 +ip_igmp_snooping: + globally_enabled: true +ip_virtual_router_mac_address: 00:1c:73:00:00:99 +vxlan_interface: + Vxlan1: + description: dc1-leaf2a_VTEP + vxlan: + udp_port: 4789 + source_interface: Loopback1 + virtual_router_encapsulation_mac_address: mlag-system-id + vlans: + - id: 11 + vni: 10011 + - id: 12 + vni: 10012 + - id: 21 + vni: 10021 + - id: 22 + vni: 10022 + - id: 3401 + vni: 13401 + - id: 3402 + vni: 13402 + vrfs: + - name: VRF10 + vni: 10 + - name: VRF11 + vni: 11 +virtual_source_nat_vrfs: +- name: VRF10 + ip_address: 10.255.10.5 +- name: VRF11 + ip_address: 10.255.11.5 +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf2b.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf2b.yml new file mode 100644 index 0000000..a8724dd --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf2b.yml @@ -0,0 +1,488 @@ +hostname: dc1-leaf2b +is_deployed: true +router_bgp: + as: '65102' + router_id: 10.255.0.6 + bgp: + default: + ipv4_unicast: false + maximum_paths: + paths: 4 + ecmp: 4 + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + type: ipv4 + remote_as: '65102' + next_hop_self: true + description: dc1-leaf2a + password: 4b21pAdCvWeAqpcKDFMdWw== + maximum_routes: 12000 + send_community: all + route_map_in: RM-MLAG-PEER-IN + - name: IPv4-UNDERLAY-PEERS + type: ipv4 + password: 7x4B4rnJhZB438m9+BrBfQ== + maximum_routes: 12000 + send_community: all + - name: EVPN-OVERLAY-PEERS + type: evpn + update_source: Loopback0 + bfd: true + password: Q4fqtbqcZ7oQuKfuWtNGRQ== + send_community: all + maximum_routes: 0 + ebgp_multihop: 3 + address_family_ipv4: + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + activate: true + - name: IPv4-UNDERLAY-PEERS + activate: true + - name: EVPN-OVERLAY-PEERS + activate: false + neighbors: + - ip_address: 10.255.1.100 + peer_group: MLAG-IPv4-UNDERLAY-PEER + peer: dc1-leaf2a + description: dc1-leaf2a + - ip_address: 10.255.255.12 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine1 + description: dc1-spine1_Ethernet4 + - ip_address: 10.255.255.14 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine2 + description: dc1-spine2_Ethernet4 + - ip_address: 10.255.0.1 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine1 + description: dc1-spine1 + remote_as: '65100' + - ip_address: 10.255.0.2 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine2 + description: dc1-spine2 + remote_as: '65100' + redistribute_routes: + - source_protocol: connected + route_map: RM-CONN-2-BGP + address_family_evpn: + peer_groups: + - name: EVPN-OVERLAY-PEERS + activate: true + vrfs: + - name: VRF10 + router_id: 10.255.0.6 + rd: 10.255.0.6:10 + route_targets: + import: + - address_family: evpn + route_targets: + - '10:10' + export: + - address_family: evpn + route_targets: + - '10:10' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.100 + peer_group: MLAG-IPv4-UNDERLAY-PEER + - name: VRF11 + router_id: 10.255.0.6 + rd: 10.255.0.6:11 + route_targets: + import: + - address_family: evpn + route_targets: + - '11:11' + export: + - address_family: evpn + route_targets: + - '11:11' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.100 + peer_group: MLAG-IPv4-UNDERLAY-PEER + vlans: + - id: 11 + tenant: TENANT1 + rd: 10.255.0.6:10011 + route_targets: + both: + - 10011:10011 + redistribute_routes: + - learned + - id: 12 + tenant: TENANT1 + rd: 10.255.0.6:10012 + route_targets: + both: + - 10012:10012 + redistribute_routes: + - learned + - id: 21 + tenant: TENANT1 + rd: 10.255.0.6:10021 + route_targets: + both: + - 10021:10021 + redistribute_routes: + - learned + - id: 22 + tenant: TENANT1 + rd: 10.255.0.6:10022 + route_targets: + both: + - 10022:10022 + redistribute_routes: + - learned + - id: 3401 + tenant: TENANT1 + rd: 10.255.0.6:13401 + route_targets: + both: + - 13401:13401 + redistribute_routes: + - learned + - id: 3402 + tenant: TENANT1 + rd: 10.255.0.6:13402 + route_targets: + both: + - 13402:13402 + redistribute_routes: + - learned +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +ip_routing: true +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: mstp + mst_instances: + - id: '0' + priority: 4096 + no_spanning_tree_vlan: 4093-4094 +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +- name: VRF10 + tenant: TENANT1 + ip_routing: true +- name: VRF11 + tenant: TENANT1 + ip_routing: true +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.104/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +vlans: +- id: 4093 + tenant: system + name: LEAF_PEER_L3 + trunk_groups: + - LEAF_PEER_L3 +- id: 4094 + tenant: system + name: MLAG_PEER + trunk_groups: + - MLAG +- id: 11 + name: VRF10_VLAN11 + tenant: TENANT1 +- id: 12 + name: VRF10_VLAN12 + tenant: TENANT1 +- id: 3009 + name: MLAG_iBGP_VRF10 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 21 + name: VRF11_VLAN21 + tenant: TENANT1 +- id: 22 + name: VRF11_VLAN22 + tenant: TENANT1 +- id: 3010 + name: MLAG_iBGP_VRF11 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 3401 + name: L2_VLAN3401 + tenant: TENANT1 +- id: 3402 + name: L2_VLAN3402 + tenant: TENANT1 +vlan_interfaces: +- name: Vlan4093 + description: MLAG_PEER_L3_PEERING + shutdown: false + mtu: 1500 + ip_address: 10.255.1.101/31 +- name: Vlan4094 + description: MLAG_PEER + shutdown: false + no_autostate: true + mtu: 1500 + ip_address: 10.255.1.69/31 +- name: Vlan11 + tenant: TENANT1 + description: VRF10_VLAN11 + shutdown: false + ip_address_virtual: 10.10.11.1/24 + vrf: VRF10 +- name: Vlan12 + tenant: TENANT1 + description: VRF10_VLAN12 + shutdown: false + ip_address_virtual: 10.10.12.1/24 + vrf: VRF10 +- name: Vlan3009 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF10' + vrf: VRF10 + mtu: 1500 + ip_address: 10.255.1.101/31 +- name: Vlan21 + tenant: TENANT1 + description: VRF11_VLAN21 + shutdown: false + ip_address_virtual: 10.10.21.1/24 + vrf: VRF11 +- name: Vlan22 + tenant: TENANT1 + description: VRF11_VLAN22 + shutdown: false + ip_address_virtual: 10.10.22.1/24 + vrf: VRF11 +- name: Vlan3010 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF11' + vrf: VRF11 + mtu: 1500 + ip_address: 10.255.1.101/31 +port_channel_interfaces: +- name: Port-Channel3 + description: MLAG_PEER_dc1-leaf2a_Po3 + type: switched + shutdown: false + mode: trunk + trunk_groups: + - LEAF_PEER_L3 + - MLAG +- name: Port-Channel8 + description: DC1-LEAF2C_Po1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22,3401-3402 + mlag: 8 +- name: Port-Channel5 + description: dc1-leaf2-server1_PortChannel dc1-leaf2-server1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22 + native_vlan: 4092 + spanning_tree_portfast: edge + mlag: 5 +ethernet_interfaces: +- name: Ethernet3 + peer: dc1-leaf2a + peer_interface: Ethernet3 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf2a_Ethernet3 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet4 + peer: dc1-leaf2a + peer_interface: Ethernet4 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf2a_Ethernet4 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet1 + peer: dc1-spine1 + peer_interface: Ethernet4 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE1_Ethernet4 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.13/31 +- name: Ethernet2 + peer: dc1-spine2 + peer_interface: Ethernet4 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE2_Ethernet4 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.15/31 +- name: Ethernet8 + peer: dc1-leaf2c + peer_interface: Ethernet2 + peer_type: l2leaf + description: DC1-LEAF2C_Ethernet2 + shutdown: false + type: port-channel-member + channel_group: + id: 8 + mode: active +- name: Ethernet5 + peer: dc1-leaf2-server1 + peer_interface: PCI2 + peer_type: server + description: dc1-leaf2-server1_PCI2 + shutdown: false + type: port-channel-member + channel_group: + id: 5 + mode: active +mlag_configuration: + domain_id: DC1_L3_LEAF2 + local_interface: Vlan4094 + peer_address: 10.255.1.68 + peer_link: Port-Channel3 + reload_delay_mlag: '300' + reload_delay_non_mlag: '330' +route_maps: +- name: RM-MLAG-PEER-IN + sequence_numbers: + - sequence: 10 + type: permit + set: + - origin incomplete + description: Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing +- name: RM-CONN-2-BGP + sequence_numbers: + - sequence: 10 + type: permit + match: + - ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +loopback_interfaces: +- name: Loopback0 + description: EVPN_Overlay_Peering + shutdown: false + ip_address: 10.255.0.6/32 +- name: Loopback1 + description: VTEP_VXLAN_Tunnel_Source + shutdown: false + ip_address: 10.255.1.5/32 +- name: Loopback10 + description: VRF10_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF10 + ip_address: 10.255.10.6/32 +- name: Loopback11 + description: VRF11_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF11 + ip_address: 10.255.11.6/32 +prefix_lists: +- name: PL-LOOPBACKS-EVPN-OVERLAY + sequence_numbers: + - sequence: 10 + action: permit 10.255.0.0/27 eq 32 + - sequence: 20 + action: permit 10.255.1.0/27 eq 32 +router_bfd: + multihop: + interval: 300 + min_rx: 300 + multiplier: 3 +ip_igmp_snooping: + globally_enabled: true +ip_virtual_router_mac_address: 00:1c:73:00:00:99 +vxlan_interface: + Vxlan1: + description: dc1-leaf2b_VTEP + vxlan: + udp_port: 4789 + source_interface: Loopback1 + virtual_router_encapsulation_mac_address: mlag-system-id + vlans: + - id: 11 + vni: 10011 + - id: 12 + vni: 10012 + - id: 21 + vni: 10021 + - id: 22 + vni: 10022 + - id: 3401 + vni: 13401 + - id: 3402 + vni: 13402 + vrfs: + - name: VRF10 + vni: 10 + - name: VRF11 + vni: 11 +virtual_source_nat_vrfs: +- name: VRF10 + ip_address: 10.255.10.6 +- name: VRF11 + ip_address: 10.255.11.6 +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf2c.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf2c.yml new file mode 100644 index 0000000..a41fff4 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-leaf2c.yml @@ -0,0 +1,123 @@ +hostname: dc1-leaf2c +is_deployed: true +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: mstp + mst_instances: + - id: '0' + priority: 32768 +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.152/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +ethernet_interfaces: +- name: Ethernet1 + peer: dc1-leaf2a + peer_interface: Ethernet8 + peer_type: l3leaf + description: DC1-LEAF2A_Ethernet8 + shutdown: false + type: port-channel-member + channel_group: + id: 1 + mode: active +- name: Ethernet2 + peer: dc1-leaf2b + peer_interface: Ethernet8 + peer_type: l3leaf + description: DC1-LEAF2B_Ethernet8 + shutdown: false + type: port-channel-member + channel_group: + id: 1 + mode: active +- name: Ethernet5 + peer: dc1-leaf2-server1 + peer_interface: iLO + peer_type: server + description: dc1-leaf2-server1_iLO + shutdown: false + type: switched + mode: access + vlans: '11' + spanning_tree_portfast: edge +port_channel_interfaces: +- name: Port-Channel1 + description: DC1_L3_LEAF2_Po8 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22,3401-3402 +vlans: +- id: 11 + name: VRF10_VLAN11 + tenant: TENANT1 +- id: 12 + name: VRF10_VLAN12 + tenant: TENANT1 +- id: 21 + name: VRF11_VLAN21 + tenant: TENANT1 +- id: 22 + name: VRF11_VLAN22 + tenant: TENANT1 +- id: 3401 + name: L2_VLAN3401 + tenant: TENANT1 +- id: 3402 + name: L2_VLAN3402 + tenant: TENANT1 +ip_igmp_snooping: + globally_enabled: true +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-spine1.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-spine1.yml new file mode 100644 index 0000000..5377ee2 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-spine1.yml @@ -0,0 +1,199 @@ +hostname: dc1-spine1 +is_deployed: true +router_bgp: + as: '65100' + router_id: 10.255.0.1 + bgp: + default: + ipv4_unicast: false + maximum_paths: + paths: 4 + ecmp: 4 + peer_groups: + - name: IPv4-UNDERLAY-PEERS + type: ipv4 + password: 7x4B4rnJhZB438m9+BrBfQ== + maximum_routes: 12000 + send_community: all + - name: EVPN-OVERLAY-PEERS + type: evpn + update_source: Loopback0 + bfd: true + password: Q4fqtbqcZ7oQuKfuWtNGRQ== + send_community: all + maximum_routes: 0 + ebgp_multihop: 3 + next_hop_unchanged: true + address_family_ipv4: + peer_groups: + - name: IPv4-UNDERLAY-PEERS + activate: true + - name: EVPN-OVERLAY-PEERS + activate: false + redistribute_routes: + - source_protocol: connected + route_map: RM-CONN-2-BGP + neighbors: + - ip_address: 10.255.255.1 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65101' + peer: dc1-leaf1a + description: dc1-leaf1a_Ethernet1 + - ip_address: 10.255.255.5 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65101' + peer: dc1-leaf1b + description: dc1-leaf1b_Ethernet1 + - ip_address: 10.255.255.9 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65102' + peer: dc1-leaf2a + description: dc1-leaf2a_Ethernet1 + - ip_address: 10.255.255.13 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65102' + peer: dc1-leaf2b + description: dc1-leaf2b_Ethernet1 + - ip_address: 10.255.0.3 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf1a + description: dc1-leaf1a + remote_as: '65101' + - ip_address: 10.255.0.4 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf1b + description: dc1-leaf1b + remote_as: '65101' + - ip_address: 10.255.0.5 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf2a + description: dc1-leaf2a + remote_as: '65102' + - ip_address: 10.255.0.6 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf2b + description: dc1-leaf2b + remote_as: '65102' + address_family_evpn: + peer_groups: + - name: EVPN-OVERLAY-PEERS + activate: true +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +ip_routing: true +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: none +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.11/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +ethernet_interfaces: +- name: Ethernet1 + peer: dc1-leaf1a + peer_interface: Ethernet1 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF1A_Ethernet1 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.0/31 +- name: Ethernet2 + peer: dc1-leaf1b + peer_interface: Ethernet1 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF1B_Ethernet1 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.4/31 +- name: Ethernet3 + peer: dc1-leaf2a + peer_interface: Ethernet1 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF2A_Ethernet1 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.8/31 +- name: Ethernet4 + peer: dc1-leaf2b + peer_interface: Ethernet1 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF2B_Ethernet1 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.12/31 +loopback_interfaces: +- name: Loopback0 + description: EVPN_Overlay_Peering + shutdown: false + ip_address: 10.255.0.1/32 +prefix_lists: +- name: PL-LOOPBACKS-EVPN-OVERLAY + sequence_numbers: + - sequence: 10 + action: permit 10.255.0.0/27 eq 32 +route_maps: +- name: RM-CONN-2-BGP + sequence_numbers: + - sequence: 10 + type: permit + match: + - ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +router_bfd: + multihop: + interval: 300 + min_rx: 300 + multiplier: 3 +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-spine2.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-spine2.yml new file mode 100644 index 0000000..701251c --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.10.0/structured_configs/dc1-spine2.yml @@ -0,0 +1,199 @@ +hostname: dc1-spine2 +is_deployed: true +router_bgp: + as: '65100' + router_id: 10.255.0.2 + bgp: + default: + ipv4_unicast: false + maximum_paths: + paths: 4 + ecmp: 4 + peer_groups: + - name: IPv4-UNDERLAY-PEERS + type: ipv4 + password: 7x4B4rnJhZB438m9+BrBfQ== + maximum_routes: 12000 + send_community: all + - name: EVPN-OVERLAY-PEERS + type: evpn + update_source: Loopback0 + bfd: true + password: Q4fqtbqcZ7oQuKfuWtNGRQ== + send_community: all + maximum_routes: 0 + ebgp_multihop: 3 + next_hop_unchanged: true + address_family_ipv4: + peer_groups: + - name: IPv4-UNDERLAY-PEERS + activate: true + - name: EVPN-OVERLAY-PEERS + activate: false + redistribute_routes: + - source_protocol: connected + route_map: RM-CONN-2-BGP + neighbors: + - ip_address: 10.255.255.3 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65101' + peer: dc1-leaf1a + description: dc1-leaf1a_Ethernet2 + - ip_address: 10.255.255.7 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65101' + peer: dc1-leaf1b + description: dc1-leaf1b_Ethernet2 + - ip_address: 10.255.255.11 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65102' + peer: dc1-leaf2a + description: dc1-leaf2a_Ethernet2 + - ip_address: 10.255.255.15 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65102' + peer: dc1-leaf2b + description: dc1-leaf2b_Ethernet2 + - ip_address: 10.255.0.3 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf1a + description: dc1-leaf1a + remote_as: '65101' + - ip_address: 10.255.0.4 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf1b + description: dc1-leaf1b + remote_as: '65101' + - ip_address: 10.255.0.5 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf2a + description: dc1-leaf2a + remote_as: '65102' + - ip_address: 10.255.0.6 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf2b + description: dc1-leaf2b + remote_as: '65102' + address_family_evpn: + peer_groups: + - name: EVPN-OVERLAY-PEERS + activate: true +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +ip_routing: true +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: none +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.12/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +ethernet_interfaces: +- name: Ethernet1 + peer: dc1-leaf1a + peer_interface: Ethernet2 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF1A_Ethernet2 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.2/31 +- name: Ethernet2 + peer: dc1-leaf1b + peer_interface: Ethernet2 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF1B_Ethernet2 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.6/31 +- name: Ethernet3 + peer: dc1-leaf2a + peer_interface: Ethernet2 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF2A_Ethernet2 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.10/31 +- name: Ethernet4 + peer: dc1-leaf2b + peer_interface: Ethernet2 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF2B_Ethernet2 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.14/31 +loopback_interfaces: +- name: Loopback0 + description: EVPN_Overlay_Peering + shutdown: false + ip_address: 10.255.0.2/32 +prefix_lists: +- name: PL-LOOPBACKS-EVPN-OVERLAY + sequence_numbers: + - sequence: 10 + action: permit 10.255.0.0/27 eq 32 +route_maps: +- name: RM-CONN-2-BGP + sequence_numbers: + - sequence: 10 + type: permit + match: + - ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +router_bfd: + multihop: + interval: 300 + min_rx: 300 + multiplier: 3 +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf1a.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf1a.cfg new file mode 100644 index 0000000..fc5f29f --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf1a.cfg @@ -0,0 +1,356 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-leaf1a +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode mstp +no spanning-tree vlan-id 4093-4094 +spanning-tree mst 0 priority 4096 +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vlan 11 + name VRF10_VLAN11 +! +vlan 12 + name VRF10_VLAN12 +! +vlan 21 + name VRF11_VLAN21 +! +vlan 22 + name VRF11_VLAN22 +! +vlan 3009 + name MLAG_iBGP_VRF10 + trunk group LEAF_PEER_L3 +! +vlan 3010 + name MLAG_iBGP_VRF11 + trunk group LEAF_PEER_L3 +! +vlan 3401 + name L2_VLAN3401 +! +vlan 3402 + name L2_VLAN3402 +! +vlan 4093 + name LEAF_PEER_L3 + trunk group LEAF_PEER_L3 +! +vlan 4094 + name MLAG_PEER + trunk group MLAG +! +vrf instance MGMT +! +vrf instance VRF10 +! +vrf instance VRF11 +! +interface Port-Channel3 + description MLAG_PEER_dc1-leaf1b_Po3 + no shutdown + switchport + switchport mode trunk + switchport trunk group LEAF_PEER_L3 + switchport trunk group MLAG +! +interface Port-Channel5 + description dc1-leaf1-server1_PortChannel dc1-leaf1-server1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22 + switchport trunk native vlan 4092 + switchport mode trunk + mlag 5 + spanning-tree portfast +! +interface Port-Channel8 + description DC1-LEAF1C_Po1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22,3401-3402 + switchport mode trunk + mlag 8 +! +interface Ethernet1 + description P2P_LINK_TO_DC1-SPINE1_Ethernet1 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.1/31 +! +interface Ethernet2 + description P2P_LINK_TO_DC1-SPINE2_Ethernet1 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.3/31 +! +interface Ethernet3 + description MLAG_PEER_dc1-leaf1b_Ethernet3 + no shutdown + channel-group 3 mode active +! +interface Ethernet4 + description MLAG_PEER_dc1-leaf1b_Ethernet4 + no shutdown + channel-group 3 mode active +! +interface Ethernet5 + description dc1-leaf1-server1_PCI1 + no shutdown + channel-group 5 mode active +! +interface Ethernet8 + description DC1-LEAF1C_Ethernet1 + no shutdown + channel-group 8 mode active +! +interface Loopback0 + description EVPN_Overlay_Peering + no shutdown + ip address 10.255.0.3/32 +! +interface Loopback1 + description VTEP_VXLAN_Tunnel_Source + no shutdown + ip address 10.255.1.3/32 +! +interface Loopback10 + description VRF10_VTEP_DIAGNOSTICS + no shutdown + vrf VRF10 + ip address 10.255.10.3/32 +! +interface Loopback11 + description VRF11_VTEP_DIAGNOSTICS + no shutdown + vrf VRF11 + ip address 10.255.11.3/32 +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.101/24 +! +interface Vlan11 + description VRF10_VLAN11 + no shutdown + vrf VRF10 + ip address virtual 10.10.11.1/24 +! +interface Vlan12 + description VRF10_VLAN12 + no shutdown + vrf VRF10 + ip address virtual 10.10.12.1/24 +! +interface Vlan21 + description VRF11_VLAN21 + no shutdown + vrf VRF11 + ip address virtual 10.10.21.1/24 +! +interface Vlan22 + description VRF11_VLAN22 + no shutdown + vrf VRF11 + ip address virtual 10.10.22.1/24 +! +interface Vlan3009 + description MLAG_PEER_L3_iBGP: vrf VRF10 + no shutdown + mtu 1500 + vrf VRF10 + ip address 10.255.1.96/31 +! +interface Vlan3010 + description MLAG_PEER_L3_iBGP: vrf VRF11 + no shutdown + mtu 1500 + vrf VRF11 + ip address 10.255.1.96/31 +! +interface Vlan4093 + description MLAG_PEER_L3_PEERING + no shutdown + mtu 1500 + ip address 10.255.1.96/31 +! +interface Vlan4094 + description MLAG_PEER + no shutdown + mtu 1500 + no autostate + ip address 10.255.1.64/31 +! +interface Vxlan1 + description dc1-leaf1a_VTEP + vxlan source-interface Loopback1 + vxlan virtual-router encapsulation mac-address mlag-system-id + vxlan udp-port 4789 + vxlan vlan 11 vni 10011 + vxlan vlan 12 vni 10012 + vxlan vlan 21 vni 10021 + vxlan vlan 22 vni 10022 + vxlan vlan 3401 vni 13401 + vxlan vlan 3402 vni 13402 + vxlan vrf VRF10 vni 10 + vxlan vrf VRF11 vni 11 +! +ip virtual-router mac-address 00:1c:73:00:00:99 +! +ip address virtual source-nat vrf VRF10 address 10.255.10.3 +ip address virtual source-nat vrf VRF11 address 10.255.11.3 +! +ip routing +no ip routing vrf MGMT +ip routing vrf VRF10 +ip routing vrf VRF11 +! +ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY + seq 10 permit 10.255.0.0/27 eq 32 + seq 20 permit 10.255.1.0/27 eq 32 +! +mlag configuration + domain-id DC1_L3_LEAF1 + local-interface Vlan4094 + peer-address 10.255.1.65 + peer-link Port-Channel3 + reload-delay mlag 300 + reload-delay non-mlag 330 +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +route-map RM-CONN-2-BGP permit 10 + match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +! +route-map RM-MLAG-PEER-IN permit 10 + description Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing + set origin incomplete +! +router bfd + multihop interval 300 min-rx 300 multiplier 3 +! +router bgp 65101 + router-id 10.255.0.3 + maximum-paths 4 ecmp 4 + no bgp default ipv4-unicast + neighbor EVPN-OVERLAY-PEERS peer group + neighbor EVPN-OVERLAY-PEERS update-source Loopback0 + neighbor EVPN-OVERLAY-PEERS bfd + neighbor EVPN-OVERLAY-PEERS ebgp-multihop 3 + neighbor EVPN-OVERLAY-PEERS password 7 Q4fqtbqcZ7oQuKfuWtNGRQ== + neighbor EVPN-OVERLAY-PEERS send-community + neighbor EVPN-OVERLAY-PEERS maximum-routes 0 + neighbor IPv4-UNDERLAY-PEERS peer group + neighbor IPv4-UNDERLAY-PEERS password 7 7x4B4rnJhZB438m9+BrBfQ== + neighbor IPv4-UNDERLAY-PEERS send-community + neighbor IPv4-UNDERLAY-PEERS maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER peer group + neighbor MLAG-IPv4-UNDERLAY-PEER remote-as 65101 + neighbor MLAG-IPv4-UNDERLAY-PEER next-hop-self + neighbor MLAG-IPv4-UNDERLAY-PEER description dc1-leaf1b + neighbor MLAG-IPv4-UNDERLAY-PEER password 7 4b21pAdCvWeAqpcKDFMdWw== + neighbor MLAG-IPv4-UNDERLAY-PEER send-community + neighbor MLAG-IPv4-UNDERLAY-PEER maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER route-map RM-MLAG-PEER-IN in + neighbor 10.255.0.1 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.1 remote-as 65100 + neighbor 10.255.0.1 description dc1-spine1 + neighbor 10.255.0.2 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.2 remote-as 65100 + neighbor 10.255.0.2 description dc1-spine2 + neighbor 10.255.1.97 peer group MLAG-IPv4-UNDERLAY-PEER + neighbor 10.255.1.97 description dc1-leaf1b + neighbor 10.255.255.0 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.0 remote-as 65100 + neighbor 10.255.255.0 description dc1-spine1_Ethernet1 + neighbor 10.255.255.2 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.2 remote-as 65100 + neighbor 10.255.255.2 description dc1-spine2_Ethernet1 + redistribute connected route-map RM-CONN-2-BGP + ! + vlan 11 + rd 10.255.0.3:10011 + route-target both 10011:10011 + redistribute learned + ! + vlan 12 + rd 10.255.0.3:10012 + route-target both 10012:10012 + redistribute learned + ! + vlan 21 + rd 10.255.0.3:10021 + route-target both 10021:10021 + redistribute learned + ! + vlan 22 + rd 10.255.0.3:10022 + route-target both 10022:10022 + redistribute learned + ! + vlan 3401 + rd 10.255.0.3:13401 + route-target both 13401:13401 + redistribute learned + ! + vlan 3402 + rd 10.255.0.3:13402 + route-target both 13402:13402 + redistribute learned + ! + address-family evpn + neighbor EVPN-OVERLAY-PEERS activate + ! + address-family ipv4 + no neighbor EVPN-OVERLAY-PEERS activate + neighbor IPv4-UNDERLAY-PEERS activate + neighbor MLAG-IPv4-UNDERLAY-PEER activate + ! + vrf VRF10 + rd 10.255.0.3:10 + route-target import evpn 10:10 + route-target export evpn 10:10 + router-id 10.255.0.3 + neighbor 10.255.1.97 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected + ! + vrf VRF11 + rd 10.255.0.3:11 + route-target import evpn 11:11 + route-target export evpn 11:11 + router-id 10.255.0.3 + neighbor 10.255.1.97 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf1b.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf1b.cfg new file mode 100644 index 0000000..004f516 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf1b.cfg @@ -0,0 +1,356 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-leaf1b +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode mstp +no spanning-tree vlan-id 4093-4094 +spanning-tree mst 0 priority 4096 +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vlan 11 + name VRF10_VLAN11 +! +vlan 12 + name VRF10_VLAN12 +! +vlan 21 + name VRF11_VLAN21 +! +vlan 22 + name VRF11_VLAN22 +! +vlan 3009 + name MLAG_iBGP_VRF10 + trunk group LEAF_PEER_L3 +! +vlan 3010 + name MLAG_iBGP_VRF11 + trunk group LEAF_PEER_L3 +! +vlan 3401 + name L2_VLAN3401 +! +vlan 3402 + name L2_VLAN3402 +! +vlan 4093 + name LEAF_PEER_L3 + trunk group LEAF_PEER_L3 +! +vlan 4094 + name MLAG_PEER + trunk group MLAG +! +vrf instance MGMT +! +vrf instance VRF10 +! +vrf instance VRF11 +! +interface Port-Channel3 + description MLAG_PEER_dc1-leaf1a_Po3 + no shutdown + switchport + switchport mode trunk + switchport trunk group LEAF_PEER_L3 + switchport trunk group MLAG +! +interface Port-Channel5 + description dc1-leaf1-server1_PortChannel dc1-leaf1-server1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22 + switchport trunk native vlan 4092 + switchport mode trunk + mlag 5 + spanning-tree portfast +! +interface Port-Channel8 + description DC1-LEAF1C_Po1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22,3401-3402 + switchport mode trunk + mlag 8 +! +interface Ethernet1 + description P2P_LINK_TO_DC1-SPINE1_Ethernet2 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.5/31 +! +interface Ethernet2 + description P2P_LINK_TO_DC1-SPINE2_Ethernet2 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.7/31 +! +interface Ethernet3 + description MLAG_PEER_dc1-leaf1a_Ethernet3 + no shutdown + channel-group 3 mode active +! +interface Ethernet4 + description MLAG_PEER_dc1-leaf1a_Ethernet4 + no shutdown + channel-group 3 mode active +! +interface Ethernet5 + description dc1-leaf1-server1_PCI2 + no shutdown + channel-group 5 mode active +! +interface Ethernet8 + description DC1-LEAF1C_Ethernet2 + no shutdown + channel-group 8 mode active +! +interface Loopback0 + description EVPN_Overlay_Peering + no shutdown + ip address 10.255.0.4/32 +! +interface Loopback1 + description VTEP_VXLAN_Tunnel_Source + no shutdown + ip address 10.255.1.3/32 +! +interface Loopback10 + description VRF10_VTEP_DIAGNOSTICS + no shutdown + vrf VRF10 + ip address 10.255.10.4/32 +! +interface Loopback11 + description VRF11_VTEP_DIAGNOSTICS + no shutdown + vrf VRF11 + ip address 10.255.11.4/32 +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.102/24 +! +interface Vlan11 + description VRF10_VLAN11 + no shutdown + vrf VRF10 + ip address virtual 10.10.11.1/24 +! +interface Vlan12 + description VRF10_VLAN12 + no shutdown + vrf VRF10 + ip address virtual 10.10.12.1/24 +! +interface Vlan21 + description VRF11_VLAN21 + no shutdown + vrf VRF11 + ip address virtual 10.10.21.1/24 +! +interface Vlan22 + description VRF11_VLAN22 + no shutdown + vrf VRF11 + ip address virtual 10.10.22.1/24 +! +interface Vlan3009 + description MLAG_PEER_L3_iBGP: vrf VRF10 + no shutdown + mtu 1500 + vrf VRF10 + ip address 10.255.1.97/31 +! +interface Vlan3010 + description MLAG_PEER_L3_iBGP: vrf VRF11 + no shutdown + mtu 1500 + vrf VRF11 + ip address 10.255.1.97/31 +! +interface Vlan4093 + description MLAG_PEER_L3_PEERING + no shutdown + mtu 1500 + ip address 10.255.1.97/31 +! +interface Vlan4094 + description MLAG_PEER + no shutdown + mtu 1500 + no autostate + ip address 10.255.1.65/31 +! +interface Vxlan1 + description dc1-leaf1b_VTEP + vxlan source-interface Loopback1 + vxlan virtual-router encapsulation mac-address mlag-system-id + vxlan udp-port 4789 + vxlan vlan 11 vni 10011 + vxlan vlan 12 vni 10012 + vxlan vlan 21 vni 10021 + vxlan vlan 22 vni 10022 + vxlan vlan 3401 vni 13401 + vxlan vlan 3402 vni 13402 + vxlan vrf VRF10 vni 10 + vxlan vrf VRF11 vni 11 +! +ip virtual-router mac-address 00:1c:73:00:00:99 +! +ip address virtual source-nat vrf VRF10 address 10.255.10.4 +ip address virtual source-nat vrf VRF11 address 10.255.11.4 +! +ip routing +no ip routing vrf MGMT +ip routing vrf VRF10 +ip routing vrf VRF11 +! +ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY + seq 10 permit 10.255.0.0/27 eq 32 + seq 20 permit 10.255.1.0/27 eq 32 +! +mlag configuration + domain-id DC1_L3_LEAF1 + local-interface Vlan4094 + peer-address 10.255.1.64 + peer-link Port-Channel3 + reload-delay mlag 300 + reload-delay non-mlag 330 +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +route-map RM-CONN-2-BGP permit 10 + match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +! +route-map RM-MLAG-PEER-IN permit 10 + description Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing + set origin incomplete +! +router bfd + multihop interval 300 min-rx 300 multiplier 3 +! +router bgp 65101 + router-id 10.255.0.4 + maximum-paths 4 ecmp 4 + no bgp default ipv4-unicast + neighbor EVPN-OVERLAY-PEERS peer group + neighbor EVPN-OVERLAY-PEERS update-source Loopback0 + neighbor EVPN-OVERLAY-PEERS bfd + neighbor EVPN-OVERLAY-PEERS ebgp-multihop 3 + neighbor EVPN-OVERLAY-PEERS password 7 Q4fqtbqcZ7oQuKfuWtNGRQ== + neighbor EVPN-OVERLAY-PEERS send-community + neighbor EVPN-OVERLAY-PEERS maximum-routes 0 + neighbor IPv4-UNDERLAY-PEERS peer group + neighbor IPv4-UNDERLAY-PEERS password 7 7x4B4rnJhZB438m9+BrBfQ== + neighbor IPv4-UNDERLAY-PEERS send-community + neighbor IPv4-UNDERLAY-PEERS maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER peer group + neighbor MLAG-IPv4-UNDERLAY-PEER remote-as 65101 + neighbor MLAG-IPv4-UNDERLAY-PEER next-hop-self + neighbor MLAG-IPv4-UNDERLAY-PEER description dc1-leaf1a + neighbor MLAG-IPv4-UNDERLAY-PEER password 7 4b21pAdCvWeAqpcKDFMdWw== + neighbor MLAG-IPv4-UNDERLAY-PEER send-community + neighbor MLAG-IPv4-UNDERLAY-PEER maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER route-map RM-MLAG-PEER-IN in + neighbor 10.255.0.1 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.1 remote-as 65100 + neighbor 10.255.0.1 description dc1-spine1 + neighbor 10.255.0.2 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.2 remote-as 65100 + neighbor 10.255.0.2 description dc1-spine2 + neighbor 10.255.1.96 peer group MLAG-IPv4-UNDERLAY-PEER + neighbor 10.255.1.96 description dc1-leaf1a + neighbor 10.255.255.4 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.4 remote-as 65100 + neighbor 10.255.255.4 description dc1-spine1_Ethernet2 + neighbor 10.255.255.6 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.6 remote-as 65100 + neighbor 10.255.255.6 description dc1-spine2_Ethernet2 + redistribute connected route-map RM-CONN-2-BGP + ! + vlan 11 + rd 10.255.0.4:10011 + route-target both 10011:10011 + redistribute learned + ! + vlan 12 + rd 10.255.0.4:10012 + route-target both 10012:10012 + redistribute learned + ! + vlan 21 + rd 10.255.0.4:10021 + route-target both 10021:10021 + redistribute learned + ! + vlan 22 + rd 10.255.0.4:10022 + route-target both 10022:10022 + redistribute learned + ! + vlan 3401 + rd 10.255.0.4:13401 + route-target both 13401:13401 + redistribute learned + ! + vlan 3402 + rd 10.255.0.4:13402 + route-target both 13402:13402 + redistribute learned + ! + address-family evpn + neighbor EVPN-OVERLAY-PEERS activate + ! + address-family ipv4 + no neighbor EVPN-OVERLAY-PEERS activate + neighbor IPv4-UNDERLAY-PEERS activate + neighbor MLAG-IPv4-UNDERLAY-PEER activate + ! + vrf VRF10 + rd 10.255.0.4:10 + route-target import evpn 10:10 + route-target export evpn 10:10 + router-id 10.255.0.4 + neighbor 10.255.1.96 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected + ! + vrf VRF11 + rd 10.255.0.4:11 + route-target import evpn 11:11 + route-target export evpn 11:11 + router-id 10.255.0.4 + neighbor 10.255.1.96 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf1c.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf1c.cfg new file mode 100644 index 0000000..e0ecb58 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf1c.cfg @@ -0,0 +1,89 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-leaf1c +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode mstp +spanning-tree mst 0 priority 32768 +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vlan 11 + name VRF10_VLAN11 +! +vlan 12 + name VRF10_VLAN12 +! +vlan 21 + name VRF11_VLAN21 +! +vlan 22 + name VRF11_VLAN22 +! +vlan 3401 + name L2_VLAN3401 +! +vlan 3402 + name L2_VLAN3402 +! +vrf instance MGMT +! +interface Port-Channel1 + description DC1_L3_LEAF1_Po8 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22,3401-3402 + switchport mode trunk +! +interface Ethernet1 + description DC1-LEAF1A_Ethernet8 + no shutdown + channel-group 1 mode active +! +interface Ethernet2 + description DC1-LEAF1B_Ethernet8 + no shutdown + channel-group 1 mode active +! +interface Ethernet5 + description dc1-leaf1-server1_iLO + no shutdown + switchport access vlan 11 + switchport mode access + switchport + spanning-tree portfast +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.151/24 +no ip routing vrf MGMT +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf2a.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf2a.cfg new file mode 100644 index 0000000..e616539 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf2a.cfg @@ -0,0 +1,356 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-leaf2a +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode mstp +no spanning-tree vlan-id 4093-4094 +spanning-tree mst 0 priority 4096 +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vlan 11 + name VRF10_VLAN11 +! +vlan 12 + name VRF10_VLAN12 +! +vlan 21 + name VRF11_VLAN21 +! +vlan 22 + name VRF11_VLAN22 +! +vlan 3009 + name MLAG_iBGP_VRF10 + trunk group LEAF_PEER_L3 +! +vlan 3010 + name MLAG_iBGP_VRF11 + trunk group LEAF_PEER_L3 +! +vlan 3401 + name L2_VLAN3401 +! +vlan 3402 + name L2_VLAN3402 +! +vlan 4093 + name LEAF_PEER_L3 + trunk group LEAF_PEER_L3 +! +vlan 4094 + name MLAG_PEER + trunk group MLAG +! +vrf instance MGMT +! +vrf instance VRF10 +! +vrf instance VRF11 +! +interface Port-Channel3 + description MLAG_PEER_dc1-leaf2b_Po3 + no shutdown + switchport + switchport mode trunk + switchport trunk group LEAF_PEER_L3 + switchport trunk group MLAG +! +interface Port-Channel5 + description dc1-leaf2-server1_PortChannel dc1-leaf2-server1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22 + switchport trunk native vlan 4092 + switchport mode trunk + mlag 5 + spanning-tree portfast +! +interface Port-Channel8 + description DC1-LEAF2C_Po1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22,3401-3402 + switchport mode trunk + mlag 8 +! +interface Ethernet1 + description P2P_LINK_TO_DC1-SPINE1_Ethernet3 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.9/31 +! +interface Ethernet2 + description P2P_LINK_TO_DC1-SPINE2_Ethernet3 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.11/31 +! +interface Ethernet3 + description MLAG_PEER_dc1-leaf2b_Ethernet3 + no shutdown + channel-group 3 mode active +! +interface Ethernet4 + description MLAG_PEER_dc1-leaf2b_Ethernet4 + no shutdown + channel-group 3 mode active +! +interface Ethernet5 + description dc1-leaf2-server1_PCI1 + no shutdown + channel-group 5 mode active +! +interface Ethernet8 + description DC1-LEAF2C_Ethernet1 + no shutdown + channel-group 8 mode active +! +interface Loopback0 + description EVPN_Overlay_Peering + no shutdown + ip address 10.255.0.5/32 +! +interface Loopback1 + description VTEP_VXLAN_Tunnel_Source + no shutdown + ip address 10.255.1.5/32 +! +interface Loopback10 + description VRF10_VTEP_DIAGNOSTICS + no shutdown + vrf VRF10 + ip address 10.255.10.5/32 +! +interface Loopback11 + description VRF11_VTEP_DIAGNOSTICS + no shutdown + vrf VRF11 + ip address 10.255.11.5/32 +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.103/24 +! +interface Vlan11 + description VRF10_VLAN11 + no shutdown + vrf VRF10 + ip address virtual 10.10.11.1/24 +! +interface Vlan12 + description VRF10_VLAN12 + no shutdown + vrf VRF10 + ip address virtual 10.10.12.1/24 +! +interface Vlan21 + description VRF11_VLAN21 + no shutdown + vrf VRF11 + ip address virtual 10.10.21.1/24 +! +interface Vlan22 + description VRF11_VLAN22 + no shutdown + vrf VRF11 + ip address virtual 10.10.22.1/24 +! +interface Vlan3009 + description MLAG_PEER_L3_iBGP: vrf VRF10 + no shutdown + mtu 1500 + vrf VRF10 + ip address 10.255.1.100/31 +! +interface Vlan3010 + description MLAG_PEER_L3_iBGP: vrf VRF11 + no shutdown + mtu 1500 + vrf VRF11 + ip address 10.255.1.100/31 +! +interface Vlan4093 + description MLAG_PEER_L3_PEERING + no shutdown + mtu 1500 + ip address 10.255.1.100/31 +! +interface Vlan4094 + description MLAG_PEER + no shutdown + mtu 1500 + no autostate + ip address 10.255.1.68/31 +! +interface Vxlan1 + description dc1-leaf2a_VTEP + vxlan source-interface Loopback1 + vxlan virtual-router encapsulation mac-address mlag-system-id + vxlan udp-port 4789 + vxlan vlan 11 vni 10011 + vxlan vlan 12 vni 10012 + vxlan vlan 21 vni 10021 + vxlan vlan 22 vni 10022 + vxlan vlan 3401 vni 13401 + vxlan vlan 3402 vni 13402 + vxlan vrf VRF10 vni 10 + vxlan vrf VRF11 vni 11 +! +ip virtual-router mac-address 00:1c:73:00:00:99 +! +ip address virtual source-nat vrf VRF10 address 10.255.10.5 +ip address virtual source-nat vrf VRF11 address 10.255.11.5 +! +ip routing +no ip routing vrf MGMT +ip routing vrf VRF10 +ip routing vrf VRF11 +! +ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY + seq 10 permit 10.255.0.0/27 eq 32 + seq 20 permit 10.255.1.0/27 eq 32 +! +mlag configuration + domain-id DC1_L3_LEAF2 + local-interface Vlan4094 + peer-address 10.255.1.69 + peer-link Port-Channel3 + reload-delay mlag 300 + reload-delay non-mlag 330 +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +route-map RM-CONN-2-BGP permit 10 + match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +! +route-map RM-MLAG-PEER-IN permit 10 + description Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing + set origin incomplete +! +router bfd + multihop interval 300 min-rx 300 multiplier 3 +! +router bgp 65102 + router-id 10.255.0.5 + maximum-paths 4 ecmp 4 + no bgp default ipv4-unicast + neighbor EVPN-OVERLAY-PEERS peer group + neighbor EVPN-OVERLAY-PEERS update-source Loopback0 + neighbor EVPN-OVERLAY-PEERS bfd + neighbor EVPN-OVERLAY-PEERS ebgp-multihop 3 + neighbor EVPN-OVERLAY-PEERS password 7 Q4fqtbqcZ7oQuKfuWtNGRQ== + neighbor EVPN-OVERLAY-PEERS send-community + neighbor EVPN-OVERLAY-PEERS maximum-routes 0 + neighbor IPv4-UNDERLAY-PEERS peer group + neighbor IPv4-UNDERLAY-PEERS password 7 7x4B4rnJhZB438m9+BrBfQ== + neighbor IPv4-UNDERLAY-PEERS send-community + neighbor IPv4-UNDERLAY-PEERS maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER peer group + neighbor MLAG-IPv4-UNDERLAY-PEER remote-as 65102 + neighbor MLAG-IPv4-UNDERLAY-PEER next-hop-self + neighbor MLAG-IPv4-UNDERLAY-PEER description dc1-leaf2b + neighbor MLAG-IPv4-UNDERLAY-PEER password 7 4b21pAdCvWeAqpcKDFMdWw== + neighbor MLAG-IPv4-UNDERLAY-PEER send-community + neighbor MLAG-IPv4-UNDERLAY-PEER maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER route-map RM-MLAG-PEER-IN in + neighbor 10.255.0.1 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.1 remote-as 65100 + neighbor 10.255.0.1 description dc1-spine1 + neighbor 10.255.0.2 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.2 remote-as 65100 + neighbor 10.255.0.2 description dc1-spine2 + neighbor 10.255.1.101 peer group MLAG-IPv4-UNDERLAY-PEER + neighbor 10.255.1.101 description dc1-leaf2b + neighbor 10.255.255.8 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.8 remote-as 65100 + neighbor 10.255.255.8 description dc1-spine1_Ethernet3 + neighbor 10.255.255.10 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.10 remote-as 65100 + neighbor 10.255.255.10 description dc1-spine2_Ethernet3 + redistribute connected route-map RM-CONN-2-BGP + ! + vlan 11 + rd 10.255.0.5:10011 + route-target both 10011:10011 + redistribute learned + ! + vlan 12 + rd 10.255.0.5:10012 + route-target both 10012:10012 + redistribute learned + ! + vlan 21 + rd 10.255.0.5:10021 + route-target both 10021:10021 + redistribute learned + ! + vlan 22 + rd 10.255.0.5:10022 + route-target both 10022:10022 + redistribute learned + ! + vlan 3401 + rd 10.255.0.5:13401 + route-target both 13401:13401 + redistribute learned + ! + vlan 3402 + rd 10.255.0.5:13402 + route-target both 13402:13402 + redistribute learned + ! + address-family evpn + neighbor EVPN-OVERLAY-PEERS activate + ! + address-family ipv4 + no neighbor EVPN-OVERLAY-PEERS activate + neighbor IPv4-UNDERLAY-PEERS activate + neighbor MLAG-IPv4-UNDERLAY-PEER activate + ! + vrf VRF10 + rd 10.255.0.5:10 + route-target import evpn 10:10 + route-target export evpn 10:10 + router-id 10.255.0.5 + neighbor 10.255.1.101 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected + ! + vrf VRF11 + rd 10.255.0.5:11 + route-target import evpn 11:11 + route-target export evpn 11:11 + router-id 10.255.0.5 + neighbor 10.255.1.101 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf2b.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf2b.cfg new file mode 100644 index 0000000..607d2f5 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf2b.cfg @@ -0,0 +1,356 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-leaf2b +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode mstp +no spanning-tree vlan-id 4093-4094 +spanning-tree mst 0 priority 4096 +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vlan 11 + name VRF10_VLAN11 +! +vlan 12 + name VRF10_VLAN12 +! +vlan 21 + name VRF11_VLAN21 +! +vlan 22 + name VRF11_VLAN22 +! +vlan 3009 + name MLAG_iBGP_VRF10 + trunk group LEAF_PEER_L3 +! +vlan 3010 + name MLAG_iBGP_VRF11 + trunk group LEAF_PEER_L3 +! +vlan 3401 + name L2_VLAN3401 +! +vlan 3402 + name L2_VLAN3402 +! +vlan 4093 + name LEAF_PEER_L3 + trunk group LEAF_PEER_L3 +! +vlan 4094 + name MLAG_PEER + trunk group MLAG +! +vrf instance MGMT +! +vrf instance VRF10 +! +vrf instance VRF11 +! +interface Port-Channel3 + description MLAG_PEER_dc1-leaf2a_Po3 + no shutdown + switchport + switchport mode trunk + switchport trunk group LEAF_PEER_L3 + switchport trunk group MLAG +! +interface Port-Channel5 + description dc1-leaf2-server1_PortChannel dc1-leaf2-server1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22 + switchport trunk native vlan 4092 + switchport mode trunk + mlag 5 + spanning-tree portfast +! +interface Port-Channel8 + description DC1-LEAF2C_Po1 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22,3401-3402 + switchport mode trunk + mlag 8 +! +interface Ethernet1 + description P2P_LINK_TO_DC1-SPINE1_Ethernet4 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.13/31 +! +interface Ethernet2 + description P2P_LINK_TO_DC1-SPINE2_Ethernet4 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.15/31 +! +interface Ethernet3 + description MLAG_PEER_dc1-leaf2a_Ethernet3 + no shutdown + channel-group 3 mode active +! +interface Ethernet4 + description MLAG_PEER_dc1-leaf2a_Ethernet4 + no shutdown + channel-group 3 mode active +! +interface Ethernet5 + description dc1-leaf2-server1_PCI2 + no shutdown + channel-group 5 mode active +! +interface Ethernet8 + description DC1-LEAF2C_Ethernet2 + no shutdown + channel-group 8 mode active +! +interface Loopback0 + description EVPN_Overlay_Peering + no shutdown + ip address 10.255.0.6/32 +! +interface Loopback1 + description VTEP_VXLAN_Tunnel_Source + no shutdown + ip address 10.255.1.5/32 +! +interface Loopback10 + description VRF10_VTEP_DIAGNOSTICS + no shutdown + vrf VRF10 + ip address 10.255.10.6/32 +! +interface Loopback11 + description VRF11_VTEP_DIAGNOSTICS + no shutdown + vrf VRF11 + ip address 10.255.11.6/32 +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.104/24 +! +interface Vlan11 + description VRF10_VLAN11 + no shutdown + vrf VRF10 + ip address virtual 10.10.11.1/24 +! +interface Vlan12 + description VRF10_VLAN12 + no shutdown + vrf VRF10 + ip address virtual 10.10.12.1/24 +! +interface Vlan21 + description VRF11_VLAN21 + no shutdown + vrf VRF11 + ip address virtual 10.10.21.1/24 +! +interface Vlan22 + description VRF11_VLAN22 + no shutdown + vrf VRF11 + ip address virtual 10.10.22.1/24 +! +interface Vlan3009 + description MLAG_PEER_L3_iBGP: vrf VRF10 + no shutdown + mtu 1500 + vrf VRF10 + ip address 10.255.1.101/31 +! +interface Vlan3010 + description MLAG_PEER_L3_iBGP: vrf VRF11 + no shutdown + mtu 1500 + vrf VRF11 + ip address 10.255.1.101/31 +! +interface Vlan4093 + description MLAG_PEER_L3_PEERING + no shutdown + mtu 1500 + ip address 10.255.1.101/31 +! +interface Vlan4094 + description MLAG_PEER + no shutdown + mtu 1500 + no autostate + ip address 10.255.1.69/31 +! +interface Vxlan1 + description dc1-leaf2b_VTEP + vxlan source-interface Loopback1 + vxlan virtual-router encapsulation mac-address mlag-system-id + vxlan udp-port 4789 + vxlan vlan 11 vni 10011 + vxlan vlan 12 vni 10012 + vxlan vlan 21 vni 10021 + vxlan vlan 22 vni 10022 + vxlan vlan 3401 vni 13401 + vxlan vlan 3402 vni 13402 + vxlan vrf VRF10 vni 10 + vxlan vrf VRF11 vni 11 +! +ip virtual-router mac-address 00:1c:73:00:00:99 +! +ip address virtual source-nat vrf VRF10 address 10.255.10.6 +ip address virtual source-nat vrf VRF11 address 10.255.11.6 +! +ip routing +no ip routing vrf MGMT +ip routing vrf VRF10 +ip routing vrf VRF11 +! +ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY + seq 10 permit 10.255.0.0/27 eq 32 + seq 20 permit 10.255.1.0/27 eq 32 +! +mlag configuration + domain-id DC1_L3_LEAF2 + local-interface Vlan4094 + peer-address 10.255.1.68 + peer-link Port-Channel3 + reload-delay mlag 300 + reload-delay non-mlag 330 +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +route-map RM-CONN-2-BGP permit 10 + match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +! +route-map RM-MLAG-PEER-IN permit 10 + description Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing + set origin incomplete +! +router bfd + multihop interval 300 min-rx 300 multiplier 3 +! +router bgp 65102 + router-id 10.255.0.6 + maximum-paths 4 ecmp 4 + no bgp default ipv4-unicast + neighbor EVPN-OVERLAY-PEERS peer group + neighbor EVPN-OVERLAY-PEERS update-source Loopback0 + neighbor EVPN-OVERLAY-PEERS bfd + neighbor EVPN-OVERLAY-PEERS ebgp-multihop 3 + neighbor EVPN-OVERLAY-PEERS password 7 Q4fqtbqcZ7oQuKfuWtNGRQ== + neighbor EVPN-OVERLAY-PEERS send-community + neighbor EVPN-OVERLAY-PEERS maximum-routes 0 + neighbor IPv4-UNDERLAY-PEERS peer group + neighbor IPv4-UNDERLAY-PEERS password 7 7x4B4rnJhZB438m9+BrBfQ== + neighbor IPv4-UNDERLAY-PEERS send-community + neighbor IPv4-UNDERLAY-PEERS maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER peer group + neighbor MLAG-IPv4-UNDERLAY-PEER remote-as 65102 + neighbor MLAG-IPv4-UNDERLAY-PEER next-hop-self + neighbor MLAG-IPv4-UNDERLAY-PEER description dc1-leaf2a + neighbor MLAG-IPv4-UNDERLAY-PEER password 7 4b21pAdCvWeAqpcKDFMdWw== + neighbor MLAG-IPv4-UNDERLAY-PEER send-community + neighbor MLAG-IPv4-UNDERLAY-PEER maximum-routes 12000 + neighbor MLAG-IPv4-UNDERLAY-PEER route-map RM-MLAG-PEER-IN in + neighbor 10.255.0.1 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.1 remote-as 65100 + neighbor 10.255.0.1 description dc1-spine1 + neighbor 10.255.0.2 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.2 remote-as 65100 + neighbor 10.255.0.2 description dc1-spine2 + neighbor 10.255.1.100 peer group MLAG-IPv4-UNDERLAY-PEER + neighbor 10.255.1.100 description dc1-leaf2a + neighbor 10.255.255.12 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.12 remote-as 65100 + neighbor 10.255.255.12 description dc1-spine1_Ethernet4 + neighbor 10.255.255.14 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.14 remote-as 65100 + neighbor 10.255.255.14 description dc1-spine2_Ethernet4 + redistribute connected route-map RM-CONN-2-BGP + ! + vlan 11 + rd 10.255.0.6:10011 + route-target both 10011:10011 + redistribute learned + ! + vlan 12 + rd 10.255.0.6:10012 + route-target both 10012:10012 + redistribute learned + ! + vlan 21 + rd 10.255.0.6:10021 + route-target both 10021:10021 + redistribute learned + ! + vlan 22 + rd 10.255.0.6:10022 + route-target both 10022:10022 + redistribute learned + ! + vlan 3401 + rd 10.255.0.6:13401 + route-target both 13401:13401 + redistribute learned + ! + vlan 3402 + rd 10.255.0.6:13402 + route-target both 13402:13402 + redistribute learned + ! + address-family evpn + neighbor EVPN-OVERLAY-PEERS activate + ! + address-family ipv4 + no neighbor EVPN-OVERLAY-PEERS activate + neighbor IPv4-UNDERLAY-PEERS activate + neighbor MLAG-IPv4-UNDERLAY-PEER activate + ! + vrf VRF10 + rd 10.255.0.6:10 + route-target import evpn 10:10 + route-target export evpn 10:10 + router-id 10.255.0.6 + neighbor 10.255.1.100 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected + ! + vrf VRF11 + rd 10.255.0.6:11 + route-target import evpn 11:11 + route-target export evpn 11:11 + router-id 10.255.0.6 + neighbor 10.255.1.100 peer group MLAG-IPv4-UNDERLAY-PEER + redistribute connected +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf2c.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf2c.cfg new file mode 100644 index 0000000..636f4a5 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-leaf2c.cfg @@ -0,0 +1,89 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-leaf2c +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode mstp +spanning-tree mst 0 priority 32768 +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vlan 11 + name VRF10_VLAN11 +! +vlan 12 + name VRF10_VLAN12 +! +vlan 21 + name VRF11_VLAN21 +! +vlan 22 + name VRF11_VLAN22 +! +vlan 3401 + name L2_VLAN3401 +! +vlan 3402 + name L2_VLAN3402 +! +vrf instance MGMT +! +interface Port-Channel1 + description DC1_L3_LEAF2_Po8 + no shutdown + switchport + switchport trunk allowed vlan 11-12,21-22,3401-3402 + switchport mode trunk +! +interface Ethernet1 + description DC1-LEAF2A_Ethernet8 + no shutdown + channel-group 1 mode active +! +interface Ethernet2 + description DC1-LEAF2B_Ethernet8 + no shutdown + channel-group 1 mode active +! +interface Ethernet5 + description dc1-leaf2-server1_iLO + no shutdown + switchport access vlan 11 + switchport mode access + switchport + spanning-tree portfast +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.152/24 +no ip routing vrf MGMT +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-spine1.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-spine1.cfg new file mode 100644 index 0000000..a5e3a1d --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-spine1.cfg @@ -0,0 +1,138 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-spine1 +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode none +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vrf instance MGMT +! +interface Ethernet1 + description P2P_LINK_TO_DC1-LEAF1A_Ethernet1 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.0/31 +! +interface Ethernet2 + description P2P_LINK_TO_DC1-LEAF1B_Ethernet1 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.4/31 +! +interface Ethernet3 + description P2P_LINK_TO_DC1-LEAF2A_Ethernet1 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.8/31 +! +interface Ethernet4 + description P2P_LINK_TO_DC1-LEAF2B_Ethernet1 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.12/31 +! +interface Loopback0 + description EVPN_Overlay_Peering + no shutdown + ip address 10.255.0.1/32 +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.11/24 +! +ip routing +no ip routing vrf MGMT +! +ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY + seq 10 permit 10.255.0.0/27 eq 32 +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +route-map RM-CONN-2-BGP permit 10 + match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +! +router bfd + multihop interval 300 min-rx 300 multiplier 3 +! +router bgp 65100 + router-id 10.255.0.1 + maximum-paths 4 ecmp 4 + no bgp default ipv4-unicast + neighbor EVPN-OVERLAY-PEERS peer group + neighbor EVPN-OVERLAY-PEERS next-hop-unchanged + neighbor EVPN-OVERLAY-PEERS update-source Loopback0 + neighbor EVPN-OVERLAY-PEERS bfd + neighbor EVPN-OVERLAY-PEERS ebgp-multihop 3 + neighbor EVPN-OVERLAY-PEERS password 7 Q4fqtbqcZ7oQuKfuWtNGRQ== + neighbor EVPN-OVERLAY-PEERS send-community + neighbor EVPN-OVERLAY-PEERS maximum-routes 0 + neighbor IPv4-UNDERLAY-PEERS peer group + neighbor IPv4-UNDERLAY-PEERS password 7 7x4B4rnJhZB438m9+BrBfQ== + neighbor IPv4-UNDERLAY-PEERS send-community + neighbor IPv4-UNDERLAY-PEERS maximum-routes 12000 + neighbor 10.255.0.3 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.3 remote-as 65101 + neighbor 10.255.0.3 description dc1-leaf1a + neighbor 10.255.0.4 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.4 remote-as 65101 + neighbor 10.255.0.4 description dc1-leaf1b + neighbor 10.255.0.5 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.5 remote-as 65102 + neighbor 10.255.0.5 description dc1-leaf2a + neighbor 10.255.0.6 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.6 remote-as 65102 + neighbor 10.255.0.6 description dc1-leaf2b + neighbor 10.255.255.1 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.1 remote-as 65101 + neighbor 10.255.255.1 description dc1-leaf1a_Ethernet1 + neighbor 10.255.255.5 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.5 remote-as 65101 + neighbor 10.255.255.5 description dc1-leaf1b_Ethernet1 + neighbor 10.255.255.9 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.9 remote-as 65102 + neighbor 10.255.255.9 description dc1-leaf2a_Ethernet1 + neighbor 10.255.255.13 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.13 remote-as 65102 + neighbor 10.255.255.13 description dc1-leaf2b_Ethernet1 + redistribute connected route-map RM-CONN-2-BGP + ! + address-family evpn + neighbor EVPN-OVERLAY-PEERS activate + ! + address-family ipv4 + no neighbor EVPN-OVERLAY-PEERS activate + neighbor IPv4-UNDERLAY-PEERS activate +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-spine2.cfg b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-spine2.cfg new file mode 100644 index 0000000..2b82cf5 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/configs/dc1-spine2.cfg @@ -0,0 +1,138 @@ +!RANCID-CONTENT-TYPE: arista +! +daemon TerminAttr + exec /usr/bin/TerminAttr -cvaddr=192.168.1.12:9910 -cvauth=token,/tmp/token -cvvrf=MGMT -disableaaa -smashexcludes=ale,flexCounter,hardware,kni,pulse,strata -ingestexclude=/Sysdb/cell/1/agent,/Sysdb/cell/2/agent -taillogs + no shutdown +! +vlan internal order ascending range 1006 1199 +! +transceiver qsfp default-mode 4x10G +! +service routing protocols model multi-agent +! +hostname dc1-spine2 +ip name-server vrf MGMT 192.168.1.1 +! +ntp local-interface vrf MGMT Management1 +ntp server vrf MGMT 0.pool.ntp.org prefer +! +spanning-tree mode none +! +no enable password +no aaa root +! +username admin privilege 15 role network-admin nopassword +username ansible privilege 15 role network-admin secret sha512 $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +! +vrf instance MGMT +! +interface Ethernet1 + description P2P_LINK_TO_DC1-LEAF1A_Ethernet2 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.2/31 +! +interface Ethernet2 + description P2P_LINK_TO_DC1-LEAF1B_Ethernet2 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.6/31 +! +interface Ethernet3 + description P2P_LINK_TO_DC1-LEAF2A_Ethernet2 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.10/31 +! +interface Ethernet4 + description P2P_LINK_TO_DC1-LEAF2B_Ethernet2 + no shutdown + mtu 1500 + no switchport + ip address 10.255.255.14/31 +! +interface Loopback0 + description EVPN_Overlay_Peering + no shutdown + ip address 10.255.0.2/32 +! +interface Management1 + description oob_management + no shutdown + vrf MGMT + ip address 172.16.1.12/24 +! +ip routing +no ip routing vrf MGMT +! +ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY + seq 10 permit 10.255.0.0/27 eq 32 +! +ip route vrf MGMT 0.0.0.0/0 172.16.1.1 +! +route-map RM-CONN-2-BGP permit 10 + match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +! +router bfd + multihop interval 300 min-rx 300 multiplier 3 +! +router bgp 65100 + router-id 10.255.0.2 + maximum-paths 4 ecmp 4 + no bgp default ipv4-unicast + neighbor EVPN-OVERLAY-PEERS peer group + neighbor EVPN-OVERLAY-PEERS next-hop-unchanged + neighbor EVPN-OVERLAY-PEERS update-source Loopback0 + neighbor EVPN-OVERLAY-PEERS bfd + neighbor EVPN-OVERLAY-PEERS ebgp-multihop 3 + neighbor EVPN-OVERLAY-PEERS password 7 Q4fqtbqcZ7oQuKfuWtNGRQ== + neighbor EVPN-OVERLAY-PEERS send-community + neighbor EVPN-OVERLAY-PEERS maximum-routes 0 + neighbor IPv4-UNDERLAY-PEERS peer group + neighbor IPv4-UNDERLAY-PEERS password 7 7x4B4rnJhZB438m9+BrBfQ== + neighbor IPv4-UNDERLAY-PEERS send-community + neighbor IPv4-UNDERLAY-PEERS maximum-routes 12000 + neighbor 10.255.0.3 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.3 remote-as 65101 + neighbor 10.255.0.3 description dc1-leaf1a + neighbor 10.255.0.4 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.4 remote-as 65101 + neighbor 10.255.0.4 description dc1-leaf1b + neighbor 10.255.0.5 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.5 remote-as 65102 + neighbor 10.255.0.5 description dc1-leaf2a + neighbor 10.255.0.6 peer group EVPN-OVERLAY-PEERS + neighbor 10.255.0.6 remote-as 65102 + neighbor 10.255.0.6 description dc1-leaf2b + neighbor 10.255.255.3 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.3 remote-as 65101 + neighbor 10.255.255.3 description dc1-leaf1a_Ethernet2 + neighbor 10.255.255.7 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.7 remote-as 65101 + neighbor 10.255.255.7 description dc1-leaf1b_Ethernet2 + neighbor 10.255.255.11 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.11 remote-as 65102 + neighbor 10.255.255.11 description dc1-leaf2a_Ethernet2 + neighbor 10.255.255.15 peer group IPv4-UNDERLAY-PEERS + neighbor 10.255.255.15 remote-as 65102 + neighbor 10.255.255.15 description dc1-leaf2b_Ethernet2 + redistribute connected route-map RM-CONN-2-BGP + ! + address-family evpn + neighbor EVPN-OVERLAY-PEERS activate + ! + address-family ipv4 + no neighbor EVPN-OVERLAY-PEERS activate + neighbor IPv4-UNDERLAY-PEERS activate +! +management api http-commands + protocol https + no shutdown + ! + vrf MGMT + no shutdown +! +end diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf1a.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf1a.yml new file mode 100644 index 0000000..33b2c59 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf1a.yml @@ -0,0 +1,488 @@ +hostname: dc1-leaf1a +is_deployed: true +router_bgp: + as: '65101' + router_id: 10.255.0.3 + bgp: + default: + ipv4_unicast: false + maximum_paths: + paths: 4 + ecmp: 4 + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + type: ipv4 + remote_as: '65101' + next_hop_self: true + description: dc1-leaf1b + password: 4b21pAdCvWeAqpcKDFMdWw== + maximum_routes: 12000 + send_community: all + route_map_in: RM-MLAG-PEER-IN + - name: IPv4-UNDERLAY-PEERS + type: ipv4 + password: 7x4B4rnJhZB438m9+BrBfQ== + maximum_routes: 12000 + send_community: all + - name: EVPN-OVERLAY-PEERS + type: evpn + update_source: Loopback0 + bfd: true + password: Q4fqtbqcZ7oQuKfuWtNGRQ== + send_community: all + maximum_routes: 0 + ebgp_multihop: 3 + address_family_ipv4: + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + activate: true + - name: IPv4-UNDERLAY-PEERS + activate: true + - name: EVPN-OVERLAY-PEERS + activate: false + neighbors: + - ip_address: 10.255.1.97 + peer_group: MLAG-IPv4-UNDERLAY-PEER + peer: dc1-leaf1b + description: dc1-leaf1b + - ip_address: 10.255.255.0 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine1 + description: dc1-spine1_Ethernet1 + - ip_address: 10.255.255.2 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine2 + description: dc1-spine2_Ethernet1 + - ip_address: 10.255.0.1 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine1 + description: dc1-spine1 + remote_as: '65100' + - ip_address: 10.255.0.2 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine2 + description: dc1-spine2 + remote_as: '65100' + redistribute_routes: + - source_protocol: connected + route_map: RM-CONN-2-BGP + address_family_evpn: + peer_groups: + - name: EVPN-OVERLAY-PEERS + activate: true + vrfs: + - name: VRF10 + router_id: 10.255.0.3 + rd: 10.255.0.3:10 + route_targets: + import: + - address_family: evpn + route_targets: + - '10:10' + export: + - address_family: evpn + route_targets: + - '10:10' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.97 + peer_group: MLAG-IPv4-UNDERLAY-PEER + - name: VRF11 + router_id: 10.255.0.3 + rd: 10.255.0.3:11 + route_targets: + import: + - address_family: evpn + route_targets: + - '11:11' + export: + - address_family: evpn + route_targets: + - '11:11' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.97 + peer_group: MLAG-IPv4-UNDERLAY-PEER + vlans: + - id: 11 + tenant: TENANT1 + rd: 10.255.0.3:10011 + route_targets: + both: + - 10011:10011 + redistribute_routes: + - learned + - id: 12 + tenant: TENANT1 + rd: 10.255.0.3:10012 + route_targets: + both: + - 10012:10012 + redistribute_routes: + - learned + - id: 21 + tenant: TENANT1 + rd: 10.255.0.3:10021 + route_targets: + both: + - 10021:10021 + redistribute_routes: + - learned + - id: 22 + tenant: TENANT1 + rd: 10.255.0.3:10022 + route_targets: + both: + - 10022:10022 + redistribute_routes: + - learned + - id: 3401 + tenant: TENANT1 + rd: 10.255.0.3:13401 + route_targets: + both: + - 13401:13401 + redistribute_routes: + - learned + - id: 3402 + tenant: TENANT1 + rd: 10.255.0.3:13402 + route_targets: + both: + - 13402:13402 + redistribute_routes: + - learned +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +ip_routing: true +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: mstp + mst_instances: + - id: '0' + priority: 4096 + no_spanning_tree_vlan: 4093-4094 +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +- name: VRF10 + tenant: TENANT1 + ip_routing: true +- name: VRF11 + tenant: TENANT1 + ip_routing: true +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.101/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +vlans: +- id: 4093 + tenant: system + name: LEAF_PEER_L3 + trunk_groups: + - LEAF_PEER_L3 +- id: 4094 + tenant: system + name: MLAG_PEER + trunk_groups: + - MLAG +- id: 11 + name: VRF10_VLAN11 + tenant: TENANT1 +- id: 12 + name: VRF10_VLAN12 + tenant: TENANT1 +- id: 3009 + name: MLAG_iBGP_VRF10 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 21 + name: VRF11_VLAN21 + tenant: TENANT1 +- id: 22 + name: VRF11_VLAN22 + tenant: TENANT1 +- id: 3010 + name: MLAG_iBGP_VRF11 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 3401 + name: L2_VLAN3401 + tenant: TENANT1 +- id: 3402 + name: L2_VLAN3402 + tenant: TENANT1 +vlan_interfaces: +- name: Vlan4093 + description: MLAG_PEER_L3_PEERING + shutdown: false + mtu: 1500 + ip_address: 10.255.1.96/31 +- name: Vlan4094 + description: MLAG_PEER + shutdown: false + no_autostate: true + mtu: 1500 + ip_address: 10.255.1.64/31 +- name: Vlan11 + tenant: TENANT1 + description: VRF10_VLAN11 + shutdown: false + ip_address_virtual: 10.10.11.1/24 + vrf: VRF10 +- name: Vlan12 + tenant: TENANT1 + description: VRF10_VLAN12 + shutdown: false + ip_address_virtual: 10.10.12.1/24 + vrf: VRF10 +- name: Vlan3009 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF10' + vrf: VRF10 + mtu: 1500 + ip_address: 10.255.1.96/31 +- name: Vlan21 + tenant: TENANT1 + description: VRF11_VLAN21 + shutdown: false + ip_address_virtual: 10.10.21.1/24 + vrf: VRF11 +- name: Vlan22 + tenant: TENANT1 + description: VRF11_VLAN22 + shutdown: false + ip_address_virtual: 10.10.22.1/24 + vrf: VRF11 +- name: Vlan3010 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF11' + vrf: VRF11 + mtu: 1500 + ip_address: 10.255.1.96/31 +port_channel_interfaces: +- name: Port-Channel3 + description: MLAG_PEER_dc1-leaf1b_Po3 + type: switched + shutdown: false + mode: trunk + trunk_groups: + - LEAF_PEER_L3 + - MLAG +- name: Port-Channel8 + description: DC1-LEAF1C_Po1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22,3401-3402 + mlag: 8 +- name: Port-Channel5 + description: dc1-leaf1-server1_PortChannel dc1-leaf1-server1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22 + native_vlan: 4092 + spanning_tree_portfast: edge + mlag: 5 +ethernet_interfaces: +- name: Ethernet3 + peer: dc1-leaf1b + peer_interface: Ethernet3 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf1b_Ethernet3 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet4 + peer: dc1-leaf1b + peer_interface: Ethernet4 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf1b_Ethernet4 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet1 + peer: dc1-spine1 + peer_interface: Ethernet1 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE1_Ethernet1 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.1/31 +- name: Ethernet2 + peer: dc1-spine2 + peer_interface: Ethernet1 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE2_Ethernet1 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.3/31 +- name: Ethernet8 + peer: dc1-leaf1c + peer_interface: Ethernet1 + peer_type: l2leaf + description: DC1-LEAF1C_Ethernet1 + shutdown: false + type: port-channel-member + channel_group: + id: 8 + mode: active +- name: Ethernet5 + peer: dc1-leaf1-server1 + peer_interface: PCI1 + peer_type: server + description: dc1-leaf1-server1_PCI1 + shutdown: false + type: port-channel-member + channel_group: + id: 5 + mode: active +mlag_configuration: + domain_id: DC1_L3_LEAF1 + local_interface: Vlan4094 + peer_address: 10.255.1.65 + peer_link: Port-Channel3 + reload_delay_mlag: '300' + reload_delay_non_mlag: '330' +route_maps: +- name: RM-MLAG-PEER-IN + sequence_numbers: + - sequence: 10 + type: permit + set: + - origin incomplete + description: Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing +- name: RM-CONN-2-BGP + sequence_numbers: + - sequence: 10 + type: permit + match: + - ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +loopback_interfaces: +- name: Loopback0 + description: EVPN_Overlay_Peering + shutdown: false + ip_address: 10.255.0.3/32 +- name: Loopback1 + description: VTEP_VXLAN_Tunnel_Source + shutdown: false + ip_address: 10.255.1.3/32 +- name: Loopback10 + description: VRF10_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF10 + ip_address: 10.255.10.3/32 +- name: Loopback11 + description: VRF11_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF11 + ip_address: 10.255.11.3/32 +prefix_lists: +- name: PL-LOOPBACKS-EVPN-OVERLAY + sequence_numbers: + - sequence: 10 + action: permit 10.255.0.0/27 eq 32 + - sequence: 20 + action: permit 10.255.1.0/27 eq 32 +router_bfd: + multihop: + interval: 300 + min_rx: 300 + multiplier: 3 +ip_igmp_snooping: + globally_enabled: true +ip_virtual_router_mac_address: 00:1c:73:00:00:99 +vxlan_interface: + Vxlan1: + description: dc1-leaf1a_VTEP + vxlan: + udp_port: 4789 + source_interface: Loopback1 + virtual_router_encapsulation_mac_address: mlag-system-id + vlans: + - id: 11 + vni: 10011 + - id: 12 + vni: 10012 + - id: 21 + vni: 10021 + - id: 22 + vni: 10022 + - id: 3401 + vni: 13401 + - id: 3402 + vni: 13402 + vrfs: + - name: VRF10 + vni: 10 + - name: VRF11 + vni: 11 +virtual_source_nat_vrfs: +- name: VRF10 + ip_address: 10.255.10.3 +- name: VRF11 + ip_address: 10.255.11.3 +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf1b.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf1b.yml new file mode 100644 index 0000000..9ca6cf6 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf1b.yml @@ -0,0 +1,488 @@ +hostname: dc1-leaf1b +is_deployed: true +router_bgp: + as: '65101' + router_id: 10.255.0.4 + bgp: + default: + ipv4_unicast: false + maximum_paths: + paths: 4 + ecmp: 4 + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + type: ipv4 + remote_as: '65101' + next_hop_self: true + description: dc1-leaf1a + password: 4b21pAdCvWeAqpcKDFMdWw== + maximum_routes: 12000 + send_community: all + route_map_in: RM-MLAG-PEER-IN + - name: IPv4-UNDERLAY-PEERS + type: ipv4 + password: 7x4B4rnJhZB438m9+BrBfQ== + maximum_routes: 12000 + send_community: all + - name: EVPN-OVERLAY-PEERS + type: evpn + update_source: Loopback0 + bfd: true + password: Q4fqtbqcZ7oQuKfuWtNGRQ== + send_community: all + maximum_routes: 0 + ebgp_multihop: 3 + address_family_ipv4: + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + activate: true + - name: IPv4-UNDERLAY-PEERS + activate: true + - name: EVPN-OVERLAY-PEERS + activate: false + neighbors: + - ip_address: 10.255.1.96 + peer_group: MLAG-IPv4-UNDERLAY-PEER + peer: dc1-leaf1a + description: dc1-leaf1a + - ip_address: 10.255.255.4 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine1 + description: dc1-spine1_Ethernet2 + - ip_address: 10.255.255.6 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine2 + description: dc1-spine2_Ethernet2 + - ip_address: 10.255.0.1 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine1 + description: dc1-spine1 + remote_as: '65100' + - ip_address: 10.255.0.2 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine2 + description: dc1-spine2 + remote_as: '65100' + redistribute_routes: + - source_protocol: connected + route_map: RM-CONN-2-BGP + address_family_evpn: + peer_groups: + - name: EVPN-OVERLAY-PEERS + activate: true + vrfs: + - name: VRF10 + router_id: 10.255.0.4 + rd: 10.255.0.4:10 + route_targets: + import: + - address_family: evpn + route_targets: + - '10:10' + export: + - address_family: evpn + route_targets: + - '10:10' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.96 + peer_group: MLAG-IPv4-UNDERLAY-PEER + - name: VRF11 + router_id: 10.255.0.4 + rd: 10.255.0.4:11 + route_targets: + import: + - address_family: evpn + route_targets: + - '11:11' + export: + - address_family: evpn + route_targets: + - '11:11' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.96 + peer_group: MLAG-IPv4-UNDERLAY-PEER + vlans: + - id: 11 + tenant: TENANT1 + rd: 10.255.0.4:10011 + route_targets: + both: + - 10011:10011 + redistribute_routes: + - learned + - id: 12 + tenant: TENANT1 + rd: 10.255.0.4:10012 + route_targets: + both: + - 10012:10012 + redistribute_routes: + - learned + - id: 21 + tenant: TENANT1 + rd: 10.255.0.4:10021 + route_targets: + both: + - 10021:10021 + redistribute_routes: + - learned + - id: 22 + tenant: TENANT1 + rd: 10.255.0.4:10022 + route_targets: + both: + - 10022:10022 + redistribute_routes: + - learned + - id: 3401 + tenant: TENANT1 + rd: 10.255.0.4:13401 + route_targets: + both: + - 13401:13401 + redistribute_routes: + - learned + - id: 3402 + tenant: TENANT1 + rd: 10.255.0.4:13402 + route_targets: + both: + - 13402:13402 + redistribute_routes: + - learned +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +ip_routing: true +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: mstp + mst_instances: + - id: '0' + priority: 4096 + no_spanning_tree_vlan: 4093-4094 +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +- name: VRF10 + tenant: TENANT1 + ip_routing: true +- name: VRF11 + tenant: TENANT1 + ip_routing: true +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.102/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +vlans: +- id: 4093 + tenant: system + name: LEAF_PEER_L3 + trunk_groups: + - LEAF_PEER_L3 +- id: 4094 + tenant: system + name: MLAG_PEER + trunk_groups: + - MLAG +- id: 11 + name: VRF10_VLAN11 + tenant: TENANT1 +- id: 12 + name: VRF10_VLAN12 + tenant: TENANT1 +- id: 3009 + name: MLAG_iBGP_VRF10 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 21 + name: VRF11_VLAN21 + tenant: TENANT1 +- id: 22 + name: VRF11_VLAN22 + tenant: TENANT1 +- id: 3010 + name: MLAG_iBGP_VRF11 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 3401 + name: L2_VLAN3401 + tenant: TENANT1 +- id: 3402 + name: L2_VLAN3402 + tenant: TENANT1 +vlan_interfaces: +- name: Vlan4093 + description: MLAG_PEER_L3_PEERING + shutdown: false + mtu: 1500 + ip_address: 10.255.1.97/31 +- name: Vlan4094 + description: MLAG_PEER + shutdown: false + no_autostate: true + mtu: 1500 + ip_address: 10.255.1.65/31 +- name: Vlan11 + tenant: TENANT1 + description: VRF10_VLAN11 + shutdown: false + ip_address_virtual: 10.10.11.1/24 + vrf: VRF10 +- name: Vlan12 + tenant: TENANT1 + description: VRF10_VLAN12 + shutdown: false + ip_address_virtual: 10.10.12.1/24 + vrf: VRF10 +- name: Vlan3009 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF10' + vrf: VRF10 + mtu: 1500 + ip_address: 10.255.1.97/31 +- name: Vlan21 + tenant: TENANT1 + description: VRF11_VLAN21 + shutdown: false + ip_address_virtual: 10.10.21.1/24 + vrf: VRF11 +- name: Vlan22 + tenant: TENANT1 + description: VRF11_VLAN22 + shutdown: false + ip_address_virtual: 10.10.22.1/24 + vrf: VRF11 +- name: Vlan3010 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF11' + vrf: VRF11 + mtu: 1500 + ip_address: 10.255.1.97/31 +port_channel_interfaces: +- name: Port-Channel3 + description: MLAG_PEER_dc1-leaf1a_Po3 + type: switched + shutdown: false + mode: trunk + trunk_groups: + - LEAF_PEER_L3 + - MLAG +- name: Port-Channel8 + description: DC1-LEAF1C_Po1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22,3401-3402 + mlag: 8 +- name: Port-Channel5 + description: dc1-leaf1-server1_PortChannel dc1-leaf1-server1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22 + native_vlan: 4092 + spanning_tree_portfast: edge + mlag: 5 +ethernet_interfaces: +- name: Ethernet3 + peer: dc1-leaf1a + peer_interface: Ethernet3 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf1a_Ethernet3 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet4 + peer: dc1-leaf1a + peer_interface: Ethernet4 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf1a_Ethernet4 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet1 + peer: dc1-spine1 + peer_interface: Ethernet2 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE1_Ethernet2 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.5/31 +- name: Ethernet2 + peer: dc1-spine2 + peer_interface: Ethernet2 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE2_Ethernet2 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.7/31 +- name: Ethernet8 + peer: dc1-leaf1c + peer_interface: Ethernet2 + peer_type: l2leaf + description: DC1-LEAF1C_Ethernet2 + shutdown: false + type: port-channel-member + channel_group: + id: 8 + mode: active +- name: Ethernet5 + peer: dc1-leaf1-server1 + peer_interface: PCI2 + peer_type: server + description: dc1-leaf1-server1_PCI2 + shutdown: false + type: port-channel-member + channel_group: + id: 5 + mode: active +mlag_configuration: + domain_id: DC1_L3_LEAF1 + local_interface: Vlan4094 + peer_address: 10.255.1.64 + peer_link: Port-Channel3 + reload_delay_mlag: '300' + reload_delay_non_mlag: '330' +route_maps: +- name: RM-MLAG-PEER-IN + sequence_numbers: + - sequence: 10 + type: permit + set: + - origin incomplete + description: Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing +- name: RM-CONN-2-BGP + sequence_numbers: + - sequence: 10 + type: permit + match: + - ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +loopback_interfaces: +- name: Loopback0 + description: EVPN_Overlay_Peering + shutdown: false + ip_address: 10.255.0.4/32 +- name: Loopback1 + description: VTEP_VXLAN_Tunnel_Source + shutdown: false + ip_address: 10.255.1.3/32 +- name: Loopback10 + description: VRF10_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF10 + ip_address: 10.255.10.4/32 +- name: Loopback11 + description: VRF11_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF11 + ip_address: 10.255.11.4/32 +prefix_lists: +- name: PL-LOOPBACKS-EVPN-OVERLAY + sequence_numbers: + - sequence: 10 + action: permit 10.255.0.0/27 eq 32 + - sequence: 20 + action: permit 10.255.1.0/27 eq 32 +router_bfd: + multihop: + interval: 300 + min_rx: 300 + multiplier: 3 +ip_igmp_snooping: + globally_enabled: true +ip_virtual_router_mac_address: 00:1c:73:00:00:99 +vxlan_interface: + Vxlan1: + description: dc1-leaf1b_VTEP + vxlan: + udp_port: 4789 + source_interface: Loopback1 + virtual_router_encapsulation_mac_address: mlag-system-id + vlans: + - id: 11 + vni: 10011 + - id: 12 + vni: 10012 + - id: 21 + vni: 10021 + - id: 22 + vni: 10022 + - id: 3401 + vni: 13401 + - id: 3402 + vni: 13402 + vrfs: + - name: VRF10 + vni: 10 + - name: VRF11 + vni: 11 +virtual_source_nat_vrfs: +- name: VRF10 + ip_address: 10.255.10.4 +- name: VRF11 + ip_address: 10.255.11.4 +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf1c.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf1c.yml new file mode 100644 index 0000000..89bd6af --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf1c.yml @@ -0,0 +1,123 @@ +hostname: dc1-leaf1c +is_deployed: true +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: mstp + mst_instances: + - id: '0' + priority: 32768 +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.151/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +ethernet_interfaces: +- name: Ethernet1 + peer: dc1-leaf1a + peer_interface: Ethernet8 + peer_type: l3leaf + description: DC1-LEAF1A_Ethernet8 + shutdown: false + type: port-channel-member + channel_group: + id: 1 + mode: active +- name: Ethernet2 + peer: dc1-leaf1b + peer_interface: Ethernet8 + peer_type: l3leaf + description: DC1-LEAF1B_Ethernet8 + shutdown: false + type: port-channel-member + channel_group: + id: 1 + mode: active +- name: Ethernet5 + peer: dc1-leaf1-server1 + peer_interface: iLO + peer_type: server + description: dc1-leaf1-server1_iLO + shutdown: false + type: switched + mode: access + vlans: '11' + spanning_tree_portfast: edge +port_channel_interfaces: +- name: Port-Channel1 + description: DC1_L3_LEAF1_Po8 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22,3401-3402 +vlans: +- id: 11 + name: VRF10_VLAN11 + tenant: TENANT1 +- id: 12 + name: VRF10_VLAN12 + tenant: TENANT1 +- id: 21 + name: VRF11_VLAN21 + tenant: TENANT1 +- id: 22 + name: VRF11_VLAN22 + tenant: TENANT1 +- id: 3401 + name: L2_VLAN3401 + tenant: TENANT1 +- id: 3402 + name: L2_VLAN3402 + tenant: TENANT1 +ip_igmp_snooping: + globally_enabled: true +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf2a.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf2a.yml new file mode 100644 index 0000000..8a9af75 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf2a.yml @@ -0,0 +1,488 @@ +hostname: dc1-leaf2a +is_deployed: true +router_bgp: + as: '65102' + router_id: 10.255.0.5 + bgp: + default: + ipv4_unicast: false + maximum_paths: + paths: 4 + ecmp: 4 + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + type: ipv4 + remote_as: '65102' + next_hop_self: true + description: dc1-leaf2b + password: 4b21pAdCvWeAqpcKDFMdWw== + maximum_routes: 12000 + send_community: all + route_map_in: RM-MLAG-PEER-IN + - name: IPv4-UNDERLAY-PEERS + type: ipv4 + password: 7x4B4rnJhZB438m9+BrBfQ== + maximum_routes: 12000 + send_community: all + - name: EVPN-OVERLAY-PEERS + type: evpn + update_source: Loopback0 + bfd: true + password: Q4fqtbqcZ7oQuKfuWtNGRQ== + send_community: all + maximum_routes: 0 + ebgp_multihop: 3 + address_family_ipv4: + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + activate: true + - name: IPv4-UNDERLAY-PEERS + activate: true + - name: EVPN-OVERLAY-PEERS + activate: false + neighbors: + - ip_address: 10.255.1.101 + peer_group: MLAG-IPv4-UNDERLAY-PEER + peer: dc1-leaf2b + description: dc1-leaf2b + - ip_address: 10.255.255.8 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine1 + description: dc1-spine1_Ethernet3 + - ip_address: 10.255.255.10 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine2 + description: dc1-spine2_Ethernet3 + - ip_address: 10.255.0.1 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine1 + description: dc1-spine1 + remote_as: '65100' + - ip_address: 10.255.0.2 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine2 + description: dc1-spine2 + remote_as: '65100' + redistribute_routes: + - source_protocol: connected + route_map: RM-CONN-2-BGP + address_family_evpn: + peer_groups: + - name: EVPN-OVERLAY-PEERS + activate: true + vrfs: + - name: VRF10 + router_id: 10.255.0.5 + rd: 10.255.0.5:10 + route_targets: + import: + - address_family: evpn + route_targets: + - '10:10' + export: + - address_family: evpn + route_targets: + - '10:10' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.101 + peer_group: MLAG-IPv4-UNDERLAY-PEER + - name: VRF11 + router_id: 10.255.0.5 + rd: 10.255.0.5:11 + route_targets: + import: + - address_family: evpn + route_targets: + - '11:11' + export: + - address_family: evpn + route_targets: + - '11:11' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.101 + peer_group: MLAG-IPv4-UNDERLAY-PEER + vlans: + - id: 11 + tenant: TENANT1 + rd: 10.255.0.5:10011 + route_targets: + both: + - 10011:10011 + redistribute_routes: + - learned + - id: 12 + tenant: TENANT1 + rd: 10.255.0.5:10012 + route_targets: + both: + - 10012:10012 + redistribute_routes: + - learned + - id: 21 + tenant: TENANT1 + rd: 10.255.0.5:10021 + route_targets: + both: + - 10021:10021 + redistribute_routes: + - learned + - id: 22 + tenant: TENANT1 + rd: 10.255.0.5:10022 + route_targets: + both: + - 10022:10022 + redistribute_routes: + - learned + - id: 3401 + tenant: TENANT1 + rd: 10.255.0.5:13401 + route_targets: + both: + - 13401:13401 + redistribute_routes: + - learned + - id: 3402 + tenant: TENANT1 + rd: 10.255.0.5:13402 + route_targets: + both: + - 13402:13402 + redistribute_routes: + - learned +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +ip_routing: true +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: mstp + mst_instances: + - id: '0' + priority: 4096 + no_spanning_tree_vlan: 4093-4094 +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +- name: VRF10 + tenant: TENANT1 + ip_routing: true +- name: VRF11 + tenant: TENANT1 + ip_routing: true +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.103/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +vlans: +- id: 4093 + tenant: system + name: LEAF_PEER_L3 + trunk_groups: + - LEAF_PEER_L3 +- id: 4094 + tenant: system + name: MLAG_PEER + trunk_groups: + - MLAG +- id: 11 + name: VRF10_VLAN11 + tenant: TENANT1 +- id: 12 + name: VRF10_VLAN12 + tenant: TENANT1 +- id: 3009 + name: MLAG_iBGP_VRF10 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 21 + name: VRF11_VLAN21 + tenant: TENANT1 +- id: 22 + name: VRF11_VLAN22 + tenant: TENANT1 +- id: 3010 + name: MLAG_iBGP_VRF11 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 3401 + name: L2_VLAN3401 + tenant: TENANT1 +- id: 3402 + name: L2_VLAN3402 + tenant: TENANT1 +vlan_interfaces: +- name: Vlan4093 + description: MLAG_PEER_L3_PEERING + shutdown: false + mtu: 1500 + ip_address: 10.255.1.100/31 +- name: Vlan4094 + description: MLAG_PEER + shutdown: false + no_autostate: true + mtu: 1500 + ip_address: 10.255.1.68/31 +- name: Vlan11 + tenant: TENANT1 + description: VRF10_VLAN11 + shutdown: false + ip_address_virtual: 10.10.11.1/24 + vrf: VRF10 +- name: Vlan12 + tenant: TENANT1 + description: VRF10_VLAN12 + shutdown: false + ip_address_virtual: 10.10.12.1/24 + vrf: VRF10 +- name: Vlan3009 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF10' + vrf: VRF10 + mtu: 1500 + ip_address: 10.255.1.100/31 +- name: Vlan21 + tenant: TENANT1 + description: VRF11_VLAN21 + shutdown: false + ip_address_virtual: 10.10.21.1/24 + vrf: VRF11 +- name: Vlan22 + tenant: TENANT1 + description: VRF11_VLAN22 + shutdown: false + ip_address_virtual: 10.10.22.1/24 + vrf: VRF11 +- name: Vlan3010 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF11' + vrf: VRF11 + mtu: 1500 + ip_address: 10.255.1.100/31 +port_channel_interfaces: +- name: Port-Channel3 + description: MLAG_PEER_dc1-leaf2b_Po3 + type: switched + shutdown: false + mode: trunk + trunk_groups: + - LEAF_PEER_L3 + - MLAG +- name: Port-Channel8 + description: DC1-LEAF2C_Po1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22,3401-3402 + mlag: 8 +- name: Port-Channel5 + description: dc1-leaf2-server1_PortChannel dc1-leaf2-server1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22 + native_vlan: 4092 + spanning_tree_portfast: edge + mlag: 5 +ethernet_interfaces: +- name: Ethernet3 + peer: dc1-leaf2b + peer_interface: Ethernet3 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf2b_Ethernet3 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet4 + peer: dc1-leaf2b + peer_interface: Ethernet4 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf2b_Ethernet4 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet1 + peer: dc1-spine1 + peer_interface: Ethernet3 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE1_Ethernet3 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.9/31 +- name: Ethernet2 + peer: dc1-spine2 + peer_interface: Ethernet3 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE2_Ethernet3 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.11/31 +- name: Ethernet8 + peer: dc1-leaf2c + peer_interface: Ethernet1 + peer_type: l2leaf + description: DC1-LEAF2C_Ethernet1 + shutdown: false + type: port-channel-member + channel_group: + id: 8 + mode: active +- name: Ethernet5 + peer: dc1-leaf2-server1 + peer_interface: PCI1 + peer_type: server + description: dc1-leaf2-server1_PCI1 + shutdown: false + type: port-channel-member + channel_group: + id: 5 + mode: active +mlag_configuration: + domain_id: DC1_L3_LEAF2 + local_interface: Vlan4094 + peer_address: 10.255.1.69 + peer_link: Port-Channel3 + reload_delay_mlag: '300' + reload_delay_non_mlag: '330' +route_maps: +- name: RM-MLAG-PEER-IN + sequence_numbers: + - sequence: 10 + type: permit + set: + - origin incomplete + description: Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing +- name: RM-CONN-2-BGP + sequence_numbers: + - sequence: 10 + type: permit + match: + - ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +loopback_interfaces: +- name: Loopback0 + description: EVPN_Overlay_Peering + shutdown: false + ip_address: 10.255.0.5/32 +- name: Loopback1 + description: VTEP_VXLAN_Tunnel_Source + shutdown: false + ip_address: 10.255.1.5/32 +- name: Loopback10 + description: VRF10_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF10 + ip_address: 10.255.10.5/32 +- name: Loopback11 + description: VRF11_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF11 + ip_address: 10.255.11.5/32 +prefix_lists: +- name: PL-LOOPBACKS-EVPN-OVERLAY + sequence_numbers: + - sequence: 10 + action: permit 10.255.0.0/27 eq 32 + - sequence: 20 + action: permit 10.255.1.0/27 eq 32 +router_bfd: + multihop: + interval: 300 + min_rx: 300 + multiplier: 3 +ip_igmp_snooping: + globally_enabled: true +ip_virtual_router_mac_address: 00:1c:73:00:00:99 +vxlan_interface: + Vxlan1: + description: dc1-leaf2a_VTEP + vxlan: + udp_port: 4789 + source_interface: Loopback1 + virtual_router_encapsulation_mac_address: mlag-system-id + vlans: + - id: 11 + vni: 10011 + - id: 12 + vni: 10012 + - id: 21 + vni: 10021 + - id: 22 + vni: 10022 + - id: 3401 + vni: 13401 + - id: 3402 + vni: 13402 + vrfs: + - name: VRF10 + vni: 10 + - name: VRF11 + vni: 11 +virtual_source_nat_vrfs: +- name: VRF10 + ip_address: 10.255.10.5 +- name: VRF11 + ip_address: 10.255.11.5 +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf2b.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf2b.yml new file mode 100644 index 0000000..a8724dd --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf2b.yml @@ -0,0 +1,488 @@ +hostname: dc1-leaf2b +is_deployed: true +router_bgp: + as: '65102' + router_id: 10.255.0.6 + bgp: + default: + ipv4_unicast: false + maximum_paths: + paths: 4 + ecmp: 4 + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + type: ipv4 + remote_as: '65102' + next_hop_self: true + description: dc1-leaf2a + password: 4b21pAdCvWeAqpcKDFMdWw== + maximum_routes: 12000 + send_community: all + route_map_in: RM-MLAG-PEER-IN + - name: IPv4-UNDERLAY-PEERS + type: ipv4 + password: 7x4B4rnJhZB438m9+BrBfQ== + maximum_routes: 12000 + send_community: all + - name: EVPN-OVERLAY-PEERS + type: evpn + update_source: Loopback0 + bfd: true + password: Q4fqtbqcZ7oQuKfuWtNGRQ== + send_community: all + maximum_routes: 0 + ebgp_multihop: 3 + address_family_ipv4: + peer_groups: + - name: MLAG-IPv4-UNDERLAY-PEER + activate: true + - name: IPv4-UNDERLAY-PEERS + activate: true + - name: EVPN-OVERLAY-PEERS + activate: false + neighbors: + - ip_address: 10.255.1.100 + peer_group: MLAG-IPv4-UNDERLAY-PEER + peer: dc1-leaf2a + description: dc1-leaf2a + - ip_address: 10.255.255.12 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine1 + description: dc1-spine1_Ethernet4 + - ip_address: 10.255.255.14 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65100' + peer: dc1-spine2 + description: dc1-spine2_Ethernet4 + - ip_address: 10.255.0.1 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine1 + description: dc1-spine1 + remote_as: '65100' + - ip_address: 10.255.0.2 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-spine2 + description: dc1-spine2 + remote_as: '65100' + redistribute_routes: + - source_protocol: connected + route_map: RM-CONN-2-BGP + address_family_evpn: + peer_groups: + - name: EVPN-OVERLAY-PEERS + activate: true + vrfs: + - name: VRF10 + router_id: 10.255.0.6 + rd: 10.255.0.6:10 + route_targets: + import: + - address_family: evpn + route_targets: + - '10:10' + export: + - address_family: evpn + route_targets: + - '10:10' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.100 + peer_group: MLAG-IPv4-UNDERLAY-PEER + - name: VRF11 + router_id: 10.255.0.6 + rd: 10.255.0.6:11 + route_targets: + import: + - address_family: evpn + route_targets: + - '11:11' + export: + - address_family: evpn + route_targets: + - '11:11' + redistribute_routes: + - source_protocol: connected + neighbors: + - ip_address: 10.255.1.100 + peer_group: MLAG-IPv4-UNDERLAY-PEER + vlans: + - id: 11 + tenant: TENANT1 + rd: 10.255.0.6:10011 + route_targets: + both: + - 10011:10011 + redistribute_routes: + - learned + - id: 12 + tenant: TENANT1 + rd: 10.255.0.6:10012 + route_targets: + both: + - 10012:10012 + redistribute_routes: + - learned + - id: 21 + tenant: TENANT1 + rd: 10.255.0.6:10021 + route_targets: + both: + - 10021:10021 + redistribute_routes: + - learned + - id: 22 + tenant: TENANT1 + rd: 10.255.0.6:10022 + route_targets: + both: + - 10022:10022 + redistribute_routes: + - learned + - id: 3401 + tenant: TENANT1 + rd: 10.255.0.6:13401 + route_targets: + both: + - 13401:13401 + redistribute_routes: + - learned + - id: 3402 + tenant: TENANT1 + rd: 10.255.0.6:13402 + route_targets: + both: + - 13402:13402 + redistribute_routes: + - learned +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +ip_routing: true +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: mstp + mst_instances: + - id: '0' + priority: 4096 + no_spanning_tree_vlan: 4093-4094 +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +- name: VRF10 + tenant: TENANT1 + ip_routing: true +- name: VRF11 + tenant: TENANT1 + ip_routing: true +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.104/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +vlans: +- id: 4093 + tenant: system + name: LEAF_PEER_L3 + trunk_groups: + - LEAF_PEER_L3 +- id: 4094 + tenant: system + name: MLAG_PEER + trunk_groups: + - MLAG +- id: 11 + name: VRF10_VLAN11 + tenant: TENANT1 +- id: 12 + name: VRF10_VLAN12 + tenant: TENANT1 +- id: 3009 + name: MLAG_iBGP_VRF10 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 21 + name: VRF11_VLAN21 + tenant: TENANT1 +- id: 22 + name: VRF11_VLAN22 + tenant: TENANT1 +- id: 3010 + name: MLAG_iBGP_VRF11 + trunk_groups: + - LEAF_PEER_L3 + tenant: TENANT1 +- id: 3401 + name: L2_VLAN3401 + tenant: TENANT1 +- id: 3402 + name: L2_VLAN3402 + tenant: TENANT1 +vlan_interfaces: +- name: Vlan4093 + description: MLAG_PEER_L3_PEERING + shutdown: false + mtu: 1500 + ip_address: 10.255.1.101/31 +- name: Vlan4094 + description: MLAG_PEER + shutdown: false + no_autostate: true + mtu: 1500 + ip_address: 10.255.1.69/31 +- name: Vlan11 + tenant: TENANT1 + description: VRF10_VLAN11 + shutdown: false + ip_address_virtual: 10.10.11.1/24 + vrf: VRF10 +- name: Vlan12 + tenant: TENANT1 + description: VRF10_VLAN12 + shutdown: false + ip_address_virtual: 10.10.12.1/24 + vrf: VRF10 +- name: Vlan3009 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF10' + vrf: VRF10 + mtu: 1500 + ip_address: 10.255.1.101/31 +- name: Vlan21 + tenant: TENANT1 + description: VRF11_VLAN21 + shutdown: false + ip_address_virtual: 10.10.21.1/24 + vrf: VRF11 +- name: Vlan22 + tenant: TENANT1 + description: VRF11_VLAN22 + shutdown: false + ip_address_virtual: 10.10.22.1/24 + vrf: VRF11 +- name: Vlan3010 + tenant: TENANT1 + type: underlay_peering + shutdown: false + description: 'MLAG_PEER_L3_iBGP: vrf VRF11' + vrf: VRF11 + mtu: 1500 + ip_address: 10.255.1.101/31 +port_channel_interfaces: +- name: Port-Channel3 + description: MLAG_PEER_dc1-leaf2a_Po3 + type: switched + shutdown: false + mode: trunk + trunk_groups: + - LEAF_PEER_L3 + - MLAG +- name: Port-Channel8 + description: DC1-LEAF2C_Po1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22,3401-3402 + mlag: 8 +- name: Port-Channel5 + description: dc1-leaf2-server1_PortChannel dc1-leaf2-server1 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22 + native_vlan: 4092 + spanning_tree_portfast: edge + mlag: 5 +ethernet_interfaces: +- name: Ethernet3 + peer: dc1-leaf2a + peer_interface: Ethernet3 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf2a_Ethernet3 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet4 + peer: dc1-leaf2a + peer_interface: Ethernet4 + peer_type: mlag_peer + description: MLAG_PEER_dc1-leaf2a_Ethernet4 + type: port-channel-member + shutdown: false + channel_group: + id: 3 + mode: active +- name: Ethernet1 + peer: dc1-spine1 + peer_interface: Ethernet4 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE1_Ethernet4 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.13/31 +- name: Ethernet2 + peer: dc1-spine2 + peer_interface: Ethernet4 + peer_type: spine + description: P2P_LINK_TO_DC1-SPINE2_Ethernet4 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.15/31 +- name: Ethernet8 + peer: dc1-leaf2c + peer_interface: Ethernet2 + peer_type: l2leaf + description: DC1-LEAF2C_Ethernet2 + shutdown: false + type: port-channel-member + channel_group: + id: 8 + mode: active +- name: Ethernet5 + peer: dc1-leaf2-server1 + peer_interface: PCI2 + peer_type: server + description: dc1-leaf2-server1_PCI2 + shutdown: false + type: port-channel-member + channel_group: + id: 5 + mode: active +mlag_configuration: + domain_id: DC1_L3_LEAF2 + local_interface: Vlan4094 + peer_address: 10.255.1.68 + peer_link: Port-Channel3 + reload_delay_mlag: '300' + reload_delay_non_mlag: '330' +route_maps: +- name: RM-MLAG-PEER-IN + sequence_numbers: + - sequence: 10 + type: permit + set: + - origin incomplete + description: Make routes learned over MLAG Peer-link less preferred on spines to ensure optimal routing +- name: RM-CONN-2-BGP + sequence_numbers: + - sequence: 10 + type: permit + match: + - ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +loopback_interfaces: +- name: Loopback0 + description: EVPN_Overlay_Peering + shutdown: false + ip_address: 10.255.0.6/32 +- name: Loopback1 + description: VTEP_VXLAN_Tunnel_Source + shutdown: false + ip_address: 10.255.1.5/32 +- name: Loopback10 + description: VRF10_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF10 + ip_address: 10.255.10.6/32 +- name: Loopback11 + description: VRF11_VTEP_DIAGNOSTICS + shutdown: false + vrf: VRF11 + ip_address: 10.255.11.6/32 +prefix_lists: +- name: PL-LOOPBACKS-EVPN-OVERLAY + sequence_numbers: + - sequence: 10 + action: permit 10.255.0.0/27 eq 32 + - sequence: 20 + action: permit 10.255.1.0/27 eq 32 +router_bfd: + multihop: + interval: 300 + min_rx: 300 + multiplier: 3 +ip_igmp_snooping: + globally_enabled: true +ip_virtual_router_mac_address: 00:1c:73:00:00:99 +vxlan_interface: + Vxlan1: + description: dc1-leaf2b_VTEP + vxlan: + udp_port: 4789 + source_interface: Loopback1 + virtual_router_encapsulation_mac_address: mlag-system-id + vlans: + - id: 11 + vni: 10011 + - id: 12 + vni: 10012 + - id: 21 + vni: 10021 + - id: 22 + vni: 10022 + - id: 3401 + vni: 13401 + - id: 3402 + vni: 13402 + vrfs: + - name: VRF10 + vni: 10 + - name: VRF11 + vni: 11 +virtual_source_nat_vrfs: +- name: VRF10 + ip_address: 10.255.10.6 +- name: VRF11 + ip_address: 10.255.11.6 +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf2c.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf2c.yml new file mode 100644 index 0000000..a41fff4 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-leaf2c.yml @@ -0,0 +1,123 @@ +hostname: dc1-leaf2c +is_deployed: true +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: mstp + mst_instances: + - id: '0' + priority: 32768 +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.152/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +ethernet_interfaces: +- name: Ethernet1 + peer: dc1-leaf2a + peer_interface: Ethernet8 + peer_type: l3leaf + description: DC1-LEAF2A_Ethernet8 + shutdown: false + type: port-channel-member + channel_group: + id: 1 + mode: active +- name: Ethernet2 + peer: dc1-leaf2b + peer_interface: Ethernet8 + peer_type: l3leaf + description: DC1-LEAF2B_Ethernet8 + shutdown: false + type: port-channel-member + channel_group: + id: 1 + mode: active +- name: Ethernet5 + peer: dc1-leaf2-server1 + peer_interface: iLO + peer_type: server + description: dc1-leaf2-server1_iLO + shutdown: false + type: switched + mode: access + vlans: '11' + spanning_tree_portfast: edge +port_channel_interfaces: +- name: Port-Channel1 + description: DC1_L3_LEAF2_Po8 + type: switched + shutdown: false + mode: trunk + vlans: 11-12,21-22,3401-3402 +vlans: +- id: 11 + name: VRF10_VLAN11 + tenant: TENANT1 +- id: 12 + name: VRF10_VLAN12 + tenant: TENANT1 +- id: 21 + name: VRF11_VLAN21 + tenant: TENANT1 +- id: 22 + name: VRF11_VLAN22 + tenant: TENANT1 +- id: 3401 + name: L2_VLAN3401 + tenant: TENANT1 +- id: 3402 + name: L2_VLAN3402 + tenant: TENANT1 +ip_igmp_snooping: + globally_enabled: true +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-spine1.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-spine1.yml new file mode 100644 index 0000000..5377ee2 --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-spine1.yml @@ -0,0 +1,199 @@ +hostname: dc1-spine1 +is_deployed: true +router_bgp: + as: '65100' + router_id: 10.255.0.1 + bgp: + default: + ipv4_unicast: false + maximum_paths: + paths: 4 + ecmp: 4 + peer_groups: + - name: IPv4-UNDERLAY-PEERS + type: ipv4 + password: 7x4B4rnJhZB438m9+BrBfQ== + maximum_routes: 12000 + send_community: all + - name: EVPN-OVERLAY-PEERS + type: evpn + update_source: Loopback0 + bfd: true + password: Q4fqtbqcZ7oQuKfuWtNGRQ== + send_community: all + maximum_routes: 0 + ebgp_multihop: 3 + next_hop_unchanged: true + address_family_ipv4: + peer_groups: + - name: IPv4-UNDERLAY-PEERS + activate: true + - name: EVPN-OVERLAY-PEERS + activate: false + redistribute_routes: + - source_protocol: connected + route_map: RM-CONN-2-BGP + neighbors: + - ip_address: 10.255.255.1 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65101' + peer: dc1-leaf1a + description: dc1-leaf1a_Ethernet1 + - ip_address: 10.255.255.5 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65101' + peer: dc1-leaf1b + description: dc1-leaf1b_Ethernet1 + - ip_address: 10.255.255.9 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65102' + peer: dc1-leaf2a + description: dc1-leaf2a_Ethernet1 + - ip_address: 10.255.255.13 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65102' + peer: dc1-leaf2b + description: dc1-leaf2b_Ethernet1 + - ip_address: 10.255.0.3 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf1a + description: dc1-leaf1a + remote_as: '65101' + - ip_address: 10.255.0.4 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf1b + description: dc1-leaf1b + remote_as: '65101' + - ip_address: 10.255.0.5 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf2a + description: dc1-leaf2a + remote_as: '65102' + - ip_address: 10.255.0.6 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf2b + description: dc1-leaf2b + remote_as: '65102' + address_family_evpn: + peer_groups: + - name: EVPN-OVERLAY-PEERS + activate: true +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +ip_routing: true +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: none +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.11/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +ethernet_interfaces: +- name: Ethernet1 + peer: dc1-leaf1a + peer_interface: Ethernet1 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF1A_Ethernet1 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.0/31 +- name: Ethernet2 + peer: dc1-leaf1b + peer_interface: Ethernet1 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF1B_Ethernet1 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.4/31 +- name: Ethernet3 + peer: dc1-leaf2a + peer_interface: Ethernet1 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF2A_Ethernet1 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.8/31 +- name: Ethernet4 + peer: dc1-leaf2b + peer_interface: Ethernet1 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF2B_Ethernet1 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.12/31 +loopback_interfaces: +- name: Loopback0 + description: EVPN_Overlay_Peering + shutdown: false + ip_address: 10.255.0.1/32 +prefix_lists: +- name: PL-LOOPBACKS-EVPN-OVERLAY + sequence_numbers: + - sequence: 10 + action: permit 10.255.0.0/27 eq 32 +route_maps: +- name: RM-CONN-2-BGP + sequence_numbers: + - sequence: 10 + type: permit + match: + - ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +router_bfd: + multihop: + interval: 300 + min_rx: 300 + multiplier: 3 +metadata: + platform: vEOS-lab diff --git a/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-spine2.yml b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-spine2.yml new file mode 100644 index 0000000..701251c --- /dev/null +++ b/tests/data/single-dc-l3ls-fabric/intended-golden-4.9.0/structured_configs/dc1-spine2.yml @@ -0,0 +1,199 @@ +hostname: dc1-spine2 +is_deployed: true +router_bgp: + as: '65100' + router_id: 10.255.0.2 + bgp: + default: + ipv4_unicast: false + maximum_paths: + paths: 4 + ecmp: 4 + peer_groups: + - name: IPv4-UNDERLAY-PEERS + type: ipv4 + password: 7x4B4rnJhZB438m9+BrBfQ== + maximum_routes: 12000 + send_community: all + - name: EVPN-OVERLAY-PEERS + type: evpn + update_source: Loopback0 + bfd: true + password: Q4fqtbqcZ7oQuKfuWtNGRQ== + send_community: all + maximum_routes: 0 + ebgp_multihop: 3 + next_hop_unchanged: true + address_family_ipv4: + peer_groups: + - name: IPv4-UNDERLAY-PEERS + activate: true + - name: EVPN-OVERLAY-PEERS + activate: false + redistribute_routes: + - source_protocol: connected + route_map: RM-CONN-2-BGP + neighbors: + - ip_address: 10.255.255.3 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65101' + peer: dc1-leaf1a + description: dc1-leaf1a_Ethernet2 + - ip_address: 10.255.255.7 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65101' + peer: dc1-leaf1b + description: dc1-leaf1b_Ethernet2 + - ip_address: 10.255.255.11 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65102' + peer: dc1-leaf2a + description: dc1-leaf2a_Ethernet2 + - ip_address: 10.255.255.15 + peer_group: IPv4-UNDERLAY-PEERS + remote_as: '65102' + peer: dc1-leaf2b + description: dc1-leaf2b_Ethernet2 + - ip_address: 10.255.0.3 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf1a + description: dc1-leaf1a + remote_as: '65101' + - ip_address: 10.255.0.4 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf1b + description: dc1-leaf1b + remote_as: '65101' + - ip_address: 10.255.0.5 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf2a + description: dc1-leaf2a + remote_as: '65102' + - ip_address: 10.255.0.6 + peer_group: EVPN-OVERLAY-PEERS + peer: dc1-leaf2b + description: dc1-leaf2b + remote_as: '65102' + address_family_evpn: + peer_groups: + - name: EVPN-OVERLAY-PEERS + activate: true +static_routes: +- vrf: MGMT + destination_address_prefix: 0.0.0.0/0 + gateway: 172.16.1.1 +service_routing_protocols_model: multi-agent +ip_routing: true +daemon_terminattr: + cvaddrs: + - 192.168.1.12:9910 + cvauth: + method: token + token_file: /tmp/token + cvvrf: MGMT + smashexcludes: ale,flexCounter,hardware,kni,pulse,strata + ingestexclude: /Sysdb/cell/1/agent,/Sysdb/cell/2/agent + disable_aaa: true +vlan_internal_order: + allocation: ascending + range: + beginning: 1006 + ending: 1199 +ip_name_servers: +- ip_address: 192.168.1.1 + vrf: MGMT +spanning_tree: + mode: none +local_users: +- name: admin + privilege: 15 + role: network-admin + no_password: true +- name: ansible + privilege: 15 + role: network-admin + sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920 +vrfs: +- name: MGMT + ip_routing: false +management_interfaces: +- name: Management1 + description: oob_management + shutdown: false + vrf: MGMT + ip_address: 172.16.1.12/24 + gateway: 172.16.1.1 + type: oob +management_api_http: + enable_vrfs: + - name: MGMT + enable_https: true +ntp: + local_interface: + name: Management1 + vrf: MGMT + servers: + - name: 0.pool.ntp.org + vrf: MGMT + preferred: true +ethernet_interfaces: +- name: Ethernet1 + peer: dc1-leaf1a + peer_interface: Ethernet2 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF1A_Ethernet2 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.2/31 +- name: Ethernet2 + peer: dc1-leaf1b + peer_interface: Ethernet2 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF1B_Ethernet2 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.6/31 +- name: Ethernet3 + peer: dc1-leaf2a + peer_interface: Ethernet2 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF2A_Ethernet2 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.10/31 +- name: Ethernet4 + peer: dc1-leaf2b + peer_interface: Ethernet2 + peer_type: l3leaf + description: P2P_LINK_TO_DC1-LEAF2B_Ethernet2 + shutdown: false + mtu: 1500 + type: routed + ip_address: 10.255.255.14/31 +loopback_interfaces: +- name: Loopback0 + description: EVPN_Overlay_Peering + shutdown: false + ip_address: 10.255.0.2/32 +prefix_lists: +- name: PL-LOOPBACKS-EVPN-OVERLAY + sequence_numbers: + - sequence: 10 + action: permit 10.255.0.0/27 eq 32 +route_maps: +- name: RM-CONN-2-BGP + sequence_numbers: + - sequence: 10 + type: permit + match: + - ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY +router_bfd: + multihop: + interval: 300 + min_rx: 300 + multiplier: 3 +metadata: + platform: vEOS-lab