.. _c-and-b_evpn_mulithoming: EVPN Multihoming Lab ============================= In this Lab we will use the left side of the Lab Topology to setup EVPN Multihoming. .. image:: ./images/12.png :alt: A diagram of a structure Description automatically generated Create Switch Template ---------------------- .. warning:: Do NEVER configure a network locally at a Switch. This is a door to chaos! **Always configure a Network via Switch Template and then import into the Fabric!** Go to **Organization -> Switch Templates** .. image:: ./images/13.png :alt: A screenshot of a computer Description automatically generated EMBEDDED BELOW: You will find a JSON File creating the Switch Template if you are in a hurry. .. raw:: html
.. code-block:: none { "additional_config_cmds": [], "networks": { "vlan1099": { "vlan_id": "1099", "subnet": "10.99.99.0/24" }, "vlan1088": { "vlan_id": "1088", "subnet": "10.88.88.0/24" }, "vlan1033": { "vlan_id": "1033", "subnet": "10.33.33.0/24" } }, "port_usages": { "vlan1099": { "mode": "access", "disabled": false, "port_network": "vlan1099", "voip_network": null, "stp_edge": false, "mac_auth_protocol": null, "all_networks": false, "networks": null, "port_auth": null, "allow_multiple_supplicants": null, "enable_mac_auth": null, "mac_auth_only": null, "guest_network": null, "bypass_auth_when_server_down": null, "dynamic_vlan_networks": null, "speed": "auto", "duplex": "auto", "mac_limit": 0, "persist_mac": false, "poe_disabled": false, "enable_qos": false, "storm_control": {}, "mtu": 9014, "description": "", "disable_autoneg": false }, "vlan1088": { "mode": "access", "disabled": false, "port_network": "vlan1088", "voip_network": null, "stp_edge": false, "mac_auth_protocol": null, "all_networks": false, "networks": null, "port_auth": null, "allow_multiple_supplicants": null, "enable_mac_auth": null, "mac_auth_only": null, "guest_network": null, "bypass_auth_when_server_down": null, "dynamic_vlan_networks": null, "speed": "auto", "duplex": "auto", "mac_limit": 0, "persist_mac": false, "poe_disabled": false, "enable_qos": false, "storm_control": {}, "mtu": 9014, "description": "", "disable_autoneg": false }, "vlan1033": { "mode": "access", "disabled": false, "port_network": "vlan1033", "voip_network": null, "stp_edge": false, "mac_auth_protocol": null, "all_networks": false, "networks": null, "port_auth": null, "allow_multiple_supplicants": null, "enable_mac_auth": null, "mac_auth_only": null, "guest_network": null, "bypass_auth_when_server_down": null, "dynamic_vlan_networks": null, "speed": "auto", "duplex": "auto", "mac_limit": 0, "persist_mac": false, "poe_disabled": false, "enable_qos": false, "storm_control": {}, "mtu": 9014, "description": "", "disable_autoneg": false }, "myuplink": { "mode": "trunk", "disabled": false, "port_network": "default", "voip_network": null, "stp_edge": false, "mac_auth_protocol": null, "port_auth": null, "all_networks": true, "networks": [], "speed": "auto", "duplex": "auto", "mac_limit": 0, "persist_mac": false, "poe_disabled": false, "enable_qos": false, "storm_control": {}, "mtu": 9018, "description": "", "disable_autoneg": false }, "dynamic": { "mode": "dynamic", "reset_default_when": "link_down", "rules": [] } }, "no_system_defined_port_usages": false, "switch_mgmt": { "config_revert_timer": 10, "root_password": "", "protect_re": { "enabled": false }, "tacacs": { "enabled": false } }, "radius_config": { "auth_servers": [], "acct_servers": [], "auth_servers_timeout": 5, "auth_servers_retries": 3, "fast_dot1x_timers": false, "acct_interim_interval": 0, "auth_server_selection": "ordered", "coa_enabled": false, "coa_port": "" }, "vrf_config": { "enabled": false }, "remote_syslog": { "enabled": false }, "snmp_config": { "enabled": false }, "dhcp_snooping": { "enabled": false }, "bgp_config": null, "routing_policies": {}, "dns_servers": [], "dns_suffix": [], "ntp_servers": [], "acl_policies": [], "port_mirroring": {}, "switch_matching": { "enable": true, "rules": [] }, "name": "Topology1" } .. raw:: html


Create a new Template to the existing one calling it “Topology1”. .. image:: ./images/14.png :alt: A screenshot of a website Description automatically generated Assign it to .. image:: ./images/15.png :alt: A screenshot of a computer Description automatically generated Assign to the Site also called Topology1 .. image:: ./images/16.png :alt: A screenshot of a web page Description automatically generated Check you have now 4 Switches applicable to this Template .. image:: ./images/17.png :alt: A screenshot of a computer Description automatically generated Configure 3 Networks: - First Network - Name=vlan1099 - VLAN ID=1099 - Subnet=10.99.99.0/24 - Second Network - Name=vlan1088 - VLAN ID=1088 - Subnet=10.88.88.0/24 - Third Network - Name=vlan1033 - VLAN ID=1033 - Subnet=10.33.33.0/24 Below is a screenshot from the first Network .. image:: ./images/18.png :alt: A screenshot of a computer Description automatically generated The resulting configuration should look like below .. image:: ./images/19.png :alt: A screenshot of a computer Description automatically generated Configure Port Profiles: - First Port Profile - Name=vlan1099 - Mode=Access - Port Network=vlan1099 - Enable MTU=Checked - MTU value=9014 - Second Port Profile - Name=vlan1088 - Mode=Access - Port Network=vlan1088 - Enable MTU=Checked - MTU value=9014 - Third Port Profile - Name=vlan1033 - Mode=Access - Port Network=vlan1033 - Enable MTU=Checked - MTU value=9014 - Forth Port Profile - Name=myuplink - Mode=Trunk - Port Network=default - Trunk Networks=All Networks - Enable MTU=Checked - MTU value=9018 .. image:: ./images/20.png :alt: A screenshot of a computer Description automatically generated . .. image:: ./images/21.png :alt: A screenshot of a phone Description automatically generated Here is our own uplink profile .. image:: ./images/22.png :alt: A screenshot of a computer Description automatically generated . .. image:: ./images/23.png :alt: A screenshot of a phone Description automatically generated The resulting configuration should look like the below .. image:: ./images/24.png :alt: A screenshot of a computer Description automatically generated Save your Template .. image:: ./images/25.png :alt: A grey rectangle with white text Description automatically generated Create EVPN Multihoming Fabric ------------------------------ Go to **Organization -> Campus Fabric** like below indicated. .. image:: ./images/26.png :alt: A screenshot of a computer Description automatically generated Make sure you are in Site “Toplology1” and create a new Lab .. image:: ./images/27.png :alt: A screen shot of a computer Description automatically generated Create new Multihoming Lab but **DO NOT CHANGE THE DEFAULTS** on this Page .. image:: ./images/28.png :alt: A screenshot of a computer Description automatically generated Go to the next Page. Assign the Nodes as shown below .. image:: ./images/29.png :alt: A screenshot of a computer program Description automatically generated Go to the next Page. Add the three Networks that appear now .. image:: ./images/30.png :alt: A screenshot of a computer Description automatically generated The following warning message should appear now. .. image:: ./images/31.png :alt: A screenshot of a computer Description automatically generated Go into each of the 3 Networks assigning the first host IP as virtual Gateway IP-Address to get rid of the warning message. Example below for VLAN 1033. .. image:: ./images/32.png :alt: A screenshot of a computer Description automatically generated Now check the resulting “Other IP Configuration” made on core1 and core2 for the static VGA addresses auto assigned. .. image:: ./images/33.png :alt: A screenshot of a computer Description automatically generated Core1 Switch .. image:: ./images/34.png :alt: A screenshot of a computer Description automatically generated Core2 Switch .. image:: ./images/35.png :alt: A screenshot of a computer Description automatically generated Enable VRF configuration as below .. image:: ./images/36.png :alt: A screenshot of a computer Description automatically generated Add the following VRF’s - First VRF - Name=customera - Networks=vlan1099 - Extra Routes - Route=0.0.0.0/0 - Via=10.99.99.254 - Second VRF - Name=customerb - Networks=vlan1088 - Extra Routes - Route=0.0.0.0/0 - Via=10.88.88.254 - Third VRF - Name=devices - Networks=vlan1033 - Extra Routes - Route=0.0.0.0/0 - Via=10.33.33.254 Example for first VRF below: .. image:: ./images/37.png :alt: A screenshot of a computer Description automatically generated The resulting configuration should look like the below .. image:: ./images/38.png :alt: A screenshot of a computer Description automatically generated Before you advance the Page add a name like “fabriclag” to the Core / Access Port Configuration like below. .. image:: ./images/39.png :alt: A screenshot of a computer Description automatically generated Go now to the next Page where you configure the Links between the systems. As a reminder these are the Links we do configure in this step. .. image:: ./images/40.png :alt: A diagram of a diagram Description automatically generated The cheat-sheet below tells you what to click and what the access/link ID is. .. image:: ./images/41.png :alt: A screenshot of a computer keyboard Description automatically generated .. image:: ./images/42.png :alt: A screenshot of a computer Description automatically generated When configuring Access Switch Ports you just need to tell the Link is a “ge-“ Interface. .. image:: ./images/43.png :alt: A screenshot of a computer Description automatically generated .. warning:: Please ensure that the Access Switches do NOT use the AE Index 0 as we use that on the uplink of the WAN-Router. When ready go to next Page and apply the configuration. .. image:: ./images/44.png :alt: A screenshot of a computer Description automatically generated . .. image:: ./images/45.png :alt: A close up of a logo Description automatically generated Go to core1 and core2 switches via remote shell and review bgp and lacp interface status confirming the Fabric came up. .. image:: ./images/46.png :alt: A screenshot of a computer Description automatically generated If that is not the case review the confirmation rendered that should be on the Switch. .. image:: ./images/47.png :alt: A screenshot of a computer Description automatically generated The config should have such statements as example .. code-block:: none . set protocols bgp group evpn_underlay type external set protocols bgp group evpn_underlay local-as 65001 set protocols bgp group evpn_underlay multipath multiple-as set protocols bgp group evpn_underlay authentication-key $9$zLF8ntuIEcMLxCtNdbwaJ69CABISyKx-Vtu7-dVY2TzF3tucylW87levL7NY2fTQF39p0Bcre0OLx7-2g/CA0EcM8X-dsuOclvWx7P5TQ69u0ISyK0OEylK8Ldbs4Uj5QF39AQzSrvMN-Hq.Pfzp0ByevEhgoZGiHtu0OhSvMX-ds8LHqf5F3tuOIRS set protocols bgp group evpn_underlay family inet unicast set protocols bgp group evpn_underlay bfd-liveness-detection minimum-interval 350 set protocols bgp group evpn_underlay bfd-liveness-detection multiplier 3 set protocols bgp group evpn_underlay log-updown set protocols bgp group evpn_underlay export evpn_underlay_export set protocols bgp group evpn_underlay import evpn_underlay_import set protocols bgp group evpn_underlay neighbor 10.255.240.4 peer-as 65002 set protocols bgp group evpn_underlay neighbor 10.255.240.3 peer-as 65002 set protocols bgp group evpn_overlay type internal set protocols bgp group evpn_overlay local-address 172.16.254.1 set protocols bgp group evpn_overlay local-as 65000 set protocols bgp group evpn_overlay multipath set protocols bgp group evpn_overlay authentication-key $9$zLF8ntuIEcMLxCtNdbwaJ69CABISyKx-Vtu7-dVY2TzF3tucylW87levL7NY2fTQF39p0Bcre0OLx7-2g/CA0EcM8X-dsuOclvWx7P5TQ69u0ISyK0OEylK8Ldbs4Uj5QF39AQzSrvMN-Hq.Pfzp0ByevEhgoZGiHtu0OhSvMX-ds8LHqf5F3tuOIRS set protocols bgp group evpn_overlay family evpn signaling set protocols bgp group evpn_overlay log-updown set protocols bgp group evpn_overlay bfd-liveness-detection minimum-interval 1000 set protocols bgp group evpn_overlay bfd-liveness-detection multiplier 3 set protocols bgp group evpn_overlay bfd-liveness-detection session-mode automatic set protocols bgp group evpn_overlay neighbor 172.16.254.2 set protocols bgp group evpn_overlay cluster 1.0.0.1. . If those are not local on the Switch then enforce a configuration sync as it might help a well. .. image:: ./images/48.png :alt: A screenshot of a computer Description automatically generated Attach Port Profiles to Ports on Access Switches ------------------------------------------------ As a reminder these are the Links we do configure in this step. .. image:: ./images/49.png :alt: A green numbers and a white background Description automatically generated Go to **Access1** Switch and attach Port profile “vlan1099” to Port ge-0/0/3 .. image:: ./images/50.png :alt: A screenshot of a computer Description automatically generated The following should be configured now .. image:: ./images/51.png :alt: A screenshot of a computer Description automatically generated “Save” your Switch configuration. Go to Access2 Switch and attach Port profile “vlan1088” to Port ge-0/0/3 .. image:: ./images/52.png :alt: A screenshot of a computer Description automatically generated The following should be configured now .. image:: ./images/53.png :alt: A screenshot of a computer Description automatically generated “Save” your Switch configuration. Configure WAN-Router ESI-LAG ---------------------------- As a reminder these are the Links we do configure in this step. .. image:: ./images/54.png :alt: A diagram of a diagram Description automatically generated Review under Port Profiles the Switch Template created Profile named “myuplink” make sure all VLANs are trunked there. Go to **core1** Switch and configure the following Port configuration: - Port IDs=ge-0/0/0 - Interface=L2 Interface - Configuration Profile=myuplink - Port Aggregation=Enabled - AE Index=0 - ESI-LAG=Enabled .. image:: ./images/55.png :alt: A screenshot of a computer Description automatically generated The following should be configured now .. image:: ./images/56.png :alt: A screenshot of a computer Description automatically generated “Save” your configuration **REPEAT THE SAME CONFIGURATION ON CORE2 SWITCH!** Test Fabric traffic ------------------- Go via Apache guacamole to the decktop1 VM of Lab1 and open a local shell. Try the following tests. .. code-block:: none # to review the interface ens5 has the IP-Address 10.99.99.99 do ifconfig ens5 # to review that 10.99.99.1 (VGA Fabric) is the default GW route -n # ping the local Gateway of the Fabric ping -c3 10.99.99.1 # ping the Internet to ensure Traffic flows via WAN-Router ping -c3 8.8.8.8 # ping the desktop 2 VM in the other VRF and Switch. Traffic has to flow via WAN-Router. ping -c3 10.88.88.88 You should see similar results like the ones below. .. image:: ./images/57.png :alt: A screenshot of a computer screen Description automatically generated