Multi-Chassis Link Aggregation
Arista switches support Multi-Chassis Link Aggregation (MLAG) to logically aggregate ports across two switches. For example, two 10-gigabit Ethernet ports, one each from two MLAG configured switches, can connect to two 10-gigabit ports on a host, switch, or network device to create a link that appears as a single 20-gigabit port. MLAG-configured ports provide Layer 2 multipathing, increased bandwidth, higher availability, and other improvements on traditional active-passive or Spanning Tree governed infrastructures.
MLAG Introduction
High availability data center topologies typically provide redundancy protection at the expense of over-subscription by connecting Top-Of-Rack (TOR) switches and servers to dual aggregation switches. In these topologies, Spanning Tree Protocol prevents network loops by blocking half of the links to the aggregation switches. This reduces the available bandwidth by 50%.
Deploying MLAG removes over-subscription by configuring an MLAG link between two aggregation switches to create a single logical switching instance that utilizes all connections to the switches. Interfaces on both devices participate in a distributed port channel, enabling all active paths to carry data traffic while maintaining the integrity of the Spanning Tree topology.
- Aggregates multiple Ethernet ports across two switches.
- Provides higher bandwidth links as network traffic increases.
- Utilizes bandwidth more efficiently with fewer links blocked by STP.
- Connects to other switches and servers by static LAG or LACP without other proprietary protocols.
- Supports normal STP operation to prevent loops.
- Supports active-active Layer-2 redundancy.
MLAG Conceptual Overview
MLAG Operation Process
A Multi-chassis Link Aggregation Group (MLAG) is a pair of links that terminate on two cooperating switches and appear as an ordinary Link Aggregation Group (LAG). The cooperating switches are MLAG peer switches and communicate through an interface called a peer link. While the peer link’s primary purpose is exchanging MLAG control information between peer switches, it also carries data traffic from devices that are attached to only one MLAG peer and have no alternative path. An MLAG domain consists of the peer switches and the control links that connect the switches.
In the figure below, Switch A and Switch B are peer switches in the MLAG domain and connect to each other through the peer link. Each peer switch uses the peer address to form and maintain the peer link.
The MLAG domain ID is a text string configured in each peer switch. MLAG switches use this string to identify their peers. The MLAG System ID (MSI) is the MLAG domain’s MAC address. The MSI is automatically derived when the MLAG forms and does not match the bridge MAC address of either peer. Each peer uses the MSI in STP and LACP PDUs.
The topology shown below contains four MLAGs: one MLAG connects each device to the MLAG domain. Each peer switch connects to the four servers through MLAG link interfaces.
In a conventional topology, with dually-attaching devices to multiple switches for redundancy, Spanning Tree Protocol (STP) blocks half of the switch-device links. In the MLAG topology, STP does not block any portion because it views the MLAG Domain as a single switch and each MLAG as a single port. The MLAG protocol facilitates the balancing of device traffic between the peer switches.
![](/assets/images/user-manual/um-eos/Graphics/MLAG/MLAG_Concepts.png)
- MLAG configuration changes.
- The TCP connection breaks.
- The peer-link or local-interface goes down.
- A switch does not receive a response to a keep alive message from its peer within a specified period.
MLAG Interoperability with Other Features
The following sections describe MLAG interaction with other switch features.
VLANs
VLAN parameters must be configured identically on each peer for the LAGs comprising the peer link and MLAGs. These parameters include the switchport access VLAN, switchport mode, trunk-allowed VLANs, the trunk native VLAN, and switchport trunk groups.
Configuration discrepancies may result in traffic loss in certain failure scenarios. Port-specific bridging configuration originates on the switch where the port is physically located.
LACP
Link Aggregation Control Protocol (LACP) should be used on all MLAG interfaces, including the peer-link. LACP control packets reference the MLAG system ID.
Static MAC Addresses
A static MAC address configured on an MLAG interface is automatically configured on the peer’s corresponding interface. Configuring static MAC addresses on both peers prevents undesired flooding if an MLAG peer relationship fails.
If the MLAG peering relationship is disabled, the static MAC previously learned from peer is removed.
Spanning Tree Protocol (STP)
When implementing MLAG in a spanning tree network, spanning tree must be configured globally and on port-channels configured with an MLAG ID. Port specific spanning tree configuration comes from the switch where the port physically resides. This includes spanning-tree PortFast BPDU Guard and BPDU filter.
Port Mirroring
A port channel which is a member of an MLAG must not be used as the destination port for a port mirroring (port monitoring) session.
IPv6 Flow Label Hashing
Arista switches use the hashing algorithm to load-balance traffic among LAG members and Layer 3 ECMP (equal cost multipath) paths. For IP and IPv6 traffic, the hashing algorithm includes (if so configured for LAG) the IP packet fields such as source and destination IP addresses as well as source and destination ports for UDP and TCP traffic.
To improve traffic distribution for IPv6 traffic, IPv6 Flow Label field has been added to the hashing algorithm for both LAG and ECMP.
MLAG Maintenance
Ensuring Control Plane ACL Compatibility
The control plane Access Control List (ACL) on any interface participating in the MLAG must be configured to allow only the peer link neighbor to generate MLAG control traffic. The required rules are included in the default control plane ACL for Ethernet ports.
Any custom control plane ACL applied to a participating port must include these three rules:
permit tcp any any eq mlag ttl eq 255
permit udp any any eq mlag ttl eq 255
permit tcp any eq mlag any ttl eq 255
MLAG peers that function as routers must each have routing enabled.
MLAG Availability through a Single Functional Peer
MLAG high availability advantages are fully realized when all devices that connect to one MLAG switch also connect to the peer switch. A switch can continue supporting MLAG when its peer is offline if the STP agent is restartable. When one peer is offline, data traffic flows from the devices through the MLAG component link that connects to the functioning switch. When a switch is offline, its interfaces and ports do not appear in show mlag and show spanning tree protocol commands of the functioning peer.
To view the restartability status of the STP agent, use the detail option of theshow spanning-tree instancecommand:
switch-1# show spanning-tree instance detail | grep agent
Stp agent restartable : True
STP agent restartability requires consistent configuration between the peers of STP, LACP, MLAG, and switchport parameters. Events triggering an STP state machine change may also briefly prevent the STP agent from being restartable.
Reload Delay
- Fixed configuration switches: 300 seconds
- Trident II modular switches: 1200 seconds
- 7304
- 7308
- 7316
- 7300X series
- Sand platform fixed configuration switches: 600 seconds
- 7280 series (except 7280CR2 and 7280SR2)
- 7020 series
- Sand platform modular switches: 1800 seconds
- 7504
- 7508
- 7500E series
- 7548S
- Sand Jericho+ fixed configuration switches: 900 seconds
- 7280CR2 series
- 7280SR2 series
In those cases where network topology requires additional time to stabilize or where a shorter delay can be tolerated, the reload-delay period can be configured using the reload-delay mlag command.
Severing the physical connection (cable) that establishes the peer-link between MLAG peers may result in a split brain state where each peer independently enters spanning tree state to prevent topology loops. Sessions established through one interface of a dual attached device may fail if its path is disrupted by the STP reconvergence, possibly resulting in temporarily lost connectivity. Sessions can be reestablished if permitted by the resulting topology.
Upgrading MLAG Peers
MLAG ISSU (In-Service Software Upgrade) upgrades eos software on one MLAG peer with minimal traffic disruptions on active MLAG interfaces and without changing the network topology.
Verifying Configuration Compatibility
- VLANs.
- Switchport configuration on port channel interfaces that are configured with an MLAG ID.
- STP configuration (global).
Version Compatibility
A switch running MLAG can be upgraded without disrupting MLAG traffic when the upgraded eos version is compatible with the version on the peer switch. Refer to the Release Notes for a list of compatible eos versions.
Reload Warning Conditions
Entering an eos reload command while MLAG is active generates warning messages if conditions that can result in packet loss during the upgrade are present. All warnings should be resolved before confirming the reload request. The following table displays the reload conditions and a common resolution method for each condition.
Reload Condition | Resolution Method |
Compatibility check | Refer to the Release Notes to verify that the new version is compatible with the currently installed version. |
Active-partial MLAG warning | Bring up the remote port-channel. If the MLAG is not actively used, then this warning can be ignored. |
STP is not restartable | Wait for STP to be restartable: typically 30 seconds, up to 120 seconds for a newly started STP agent. Refer to MLAG Availability through a Single Functional Peer for information on checking restartability. |
Reload delay too low | Configure a reload delay value greater than or equal to the default. Recommend delay is 300 seconds for TOR switches, 900 seconds for modular switches, and 600 seconds for Sand platform fixed configuration switches (7020 and 7280 series (except 7280CR2 and 7280SR2)). |
Peer has error-disabled interfaces | Wait for reload-delay to expire on the peer. |
Example
switch(config)# reload
If you are performing an upgrade, and the Release Notes for the
new version of eos indicate that MLAG is not backwards-compatible
with the currently installed version (4.9.2), the upgrade will
result in packet loss.
The following MLAGs are not in Active mode. Traffic to or from these ports will
be lost during the upgrade process.
local/remote
mlag desc state local remote status
--------- --------- ------------------- ---------- ----------- ------------
14 active-partial Po14 Po14 up/down
15 active-partial Po15 Po15 up/down
Stp is not restartable. Topology changes will occur during the upgrade process.
The configured reload delay of 100 seconds is below the default
value of 300 seconds. A longer reload delay allows more time to
rollback an unsuccessful upgrade due to incompatibility.
The other MLAG peer has errdisabled interfaces. Traffic loss will occur during
the upgrade process.
Proceed with reload? [confirm]
Performing an MLAG ISSU Upgrade
The following procedure performs an MLAG ISSU upgrade:
MLAG Dual Primary Detection and Release
When the MLAG peer-link goes down, the secondary peer assumes the primary peer is down or dead, andtakes over the primary role. It is possible that when peer-link is down, the primary is not actually down or dead, and both MLAG peers think they are the primary. This is called dual-primary condition or state. In this state, each peer runs Layer-2 protocols such as Spanning Tree Protocol independently. Depending on the topology, this can cause loops in the network. This can also impact the IGMP snooping feature.
The Dual Primary Detection feature uses the management interface as an out-of-band connection between the two peers along with the peer-link. Once configured, the MLAG peers sends UDP heartbeat packets on the management interface. When the peer-link goes down and the heartbeat is still active on out-of-band connection, both MLAG peers detects dual-primary condition. The switch can take optional action to shutdown all links except the peer-link on the original secondary MLAG peer.
Beginning with the eos Release 4.23.1F, there is support for dual primary recovery delay.
Recovery delay is an improvement to the current dual-primary detection feature. Use only when MLAG pairs recover from dual-primary detection with configured errdisable all-interfaces. When recovery delay is configured, the old secondary MLAG peer expects to un-errdisable MLAG interfaces later than non-MLAG to allow more time for L3 interfaces to converge.
Beginning with the eos Release 4.25.0F, when dual-primary-detection is enabled, there will be heartbeats transferred on both the peer-link and the management link at the same time. This improves dual-primary-detection because both the management link and the peer-link need to fail before the detection fails.
Supported eos Versions
MLAG dual primary detection is supported beginning with eos Release 4.20.0F and onwards.
Limitations
- UDP port 4432 is used to exchange control information between the peers, and must not be blocked on the management interfaces on both of the MLAG peers.
- At least one MLAG port-channel must be configured on the MLAG peers to perform dual primary detection and the corresponding errdisable action.
- Errdisable action brings down all physical Ethernet interfaces excluding the MLAG peer-link and management port. However, Layer-2 port-channels go down and VLAN SVIs may go down (i.e. autostate taking down VLAN SVIs).
- When the errdisable action is configured with the non-MLAG interfaces recovery delay the errdisable action must always be less than the MLAG interfaces recovery delay. Otherwise, MLAG interfaces will come up sooner and cause northbound traffic loss.
- Do not configure this feature if there can be consecutive peer-link flaps. There is an issue that if there are consecutive peer-link flaps during which MLAG peers also happen to switch roles, you can have unexpired recovery timers on the new primary and the secondary can not go dual primary detected until the MLAG recovery timer expires. This can open a small window for L3 traffic blackholing on the primary depending on the delta between recovery delay for MLAG and non-MLAG interfaces.
- Changing the recovery delay configurations during active recovery delay may cause interfaces to stay errdisabled.
MLAG Dual Primary Detection and Release Configuration
switch(config-mlag)# peer-address heartbeat Peer-IP [vrf VRF-NAME ]
- Peer-IP The Management IP address of the MLAG peer reachable in the targeted VRF.
- VRF-NAME The MLAG peer reachable in VRF (or default VRF if no VRF is configured).
The peer-address heartbeat command causes the MLAG agent to start using Peer-IP address in the given VRF for UDP-based heartbeat control messages.
The dual-primary detection delay command configures dual primary detection delay with an optional action to errdisable all interfaces on secondary MLAG peer after detecting the dual primary condition.
switch(config-mlag)# dual-primary detection delay SECONDS [action errdisable all-interfaces]
- delay Specifies the number of seconds to wait after MLAG failover to listen for MLAG heartbeats to determine dual primary condition.
- action errdisable all-interfaces Errdisables all local physical interfaces on the secondary MLAG peer after detecting the dual primary condition.
Use both the peer-address heartbeat command and the dual-primary detection command on each peer to disable the Dual Primary Detection feature.
The peer-address heartbeat command triggers MLAG to revert using the peer-link for heartbeat control messages instead of the management IP address of the MLAG peer.
switch(config-mlag)# (no|default) peer-address heartbeat
The dual-primary detection command removes the detection delay time as well as detection action.
-
This example specifies the MLAG Peer’s Management IP address 172.30.118.190 in default VRF for heartbeats.
switch(config)# mlag switch(config-mlag)# peer-address heartbeat 172.30.118.190
- In this example, the command errdisables all physical interfaces on secondary MLAG peer when dual primary condition is detected.
switch(config-mlag)# dual-primary detection delay 5 action errdisable all-interfaces
Both MLAG peers must have equivalent configurations.
switch(config-mlag)# no peer-address heartbeat
switch(config-mlag)# no dual-primary detection
The dual-primary recovery delay command configures the dual-primary detection recovery-delay for MOLG interfaces and non-MPLG interfaces. Negating the configurations or configuring default valuesmakes both recovery delay values reset back to 0. The non-MLAG delay must always be less than the MLAG delay so that you have more time for L3 convergence before you enable the MLAG interfaces. A suggested value for MLAG is 60 seconds, and non-MLAG is 0 seconds. These values can be adjusted depending on the network scale.
switch(config-mlag)# dual-primary recovery delay mlag <0-1000> non-mlag <0-1000>
switch(config-mlag)# [no|default] dual-primary recovery delay
ISSU Implications
When upgrading from an eos release that does not support the Dual Primary Detection feature, you must configure this feature only after both MLAG peers are upgraded to the release that has support. When downgrading to a release without Dual Primary Detection support, the configuration must be removed from both the peers before the downgrade process is initiated on either peer. Otherwise, MLAG fails configuration sanity.
Viewing the MLAG Dual Primary Detection and Release Status
Use the show running-config command to display the MLAG dual primary detection configuration.
switch# show running-config
...
mlag configuration
domain-id test_domain_1
local-interface Vlan4094
peer-address 10.0.0.2
peer-address heartbeat 172.30.118.190
primary-priority 11
peer-link Port-Channel1
dual-primary detection delay 5 action errdisable all-interfaces
...
Use the show mlag detail command to display MLAG dual primary interface errdisabled status, recovery delay status, and the heartbeat counts sent and received. You can infer that the status of recovery delay is active if the dual-primary detection is Configured (dual primary resolved) and dual-primary interface errdisabled is True.
switch(config-mlag)# show mlag detail
MLAG Configuration:
domain-id : test_domain_1
local-interface : Vlan4094
peer-address : 10.0.0.1
peer-link : Port-Channel1
hb-peer-address : 172.30.117.28
peer-config : consistent
MLAG Status:
state : Active
negotiation status : Connecting
peer-link status : Down
local-int status : Up
system-id : 46:4c:a8:c6:42:dd
dual-primary detection : Detected
MLAG Ports:
Disabled : 0
Configured : 0
Inactive : 0
Active-partial : 0
Active-full : 0
MLAG Detailed Status:
State : primary
State changes : 5
Last state change time : 1:06:19 ago
Hardware ready : True
Failover : True
Last failover change time : 1:06:19 ago
Secondary from failover : False
primary-priority : 12
Peer primary-priority : 11
Peer MAC address : 44:4c:a8:c6:42:dd
Peer MAC routing supported : True
Reload delay : 0 seconds
Non-MLAG reload delay : 0 seconds
Peer ports errdisabled : False
Lacp standby : False
Configured heartbeat interval : 4000 ms
Effective heartbeat interval : 4000 ms
Heartbeat timeout : 60000 ms
Last heartbeat timeout : never
Heartbeat timeouts since reboot : 0
UDP heartbeat alive : True
Heartbeats sent/received : 3189/3189
Peer monotonic clock offset : unknown
Agent should be running : True
P2p mount state changes : 4
Fast MAC redirection enabled : False
Dual-primary detection delay : 5
Dual-primary action : errdisable-all
When the dual-primary action is errdisable and detects the dual-primary condition, all the ethernet interfaces on the secondary MLAG peer are errdisabled with a mlagdualprimary reason.
switch# show interfaces status errdisabled
Port Name Status Reason
------------ ---------------- ----------------- ---------------------
Et1 errdisabled mlagdualprimary
Et2 errdisabled mlagdualprimary
Et14 errdisabled mlagdualprimary
...
Configuring MLAG
Configuring the MLAG Peers
Connecting two switches as MLAG peers requires the establishment of the peer link and an SVI that defines local and peer IP addresses on each switch.
The peer link is composed of a LAG between the switches. When all devices that connect to the MLAG domain are dually connected to the switches through an MLAG, a peer link of two Ethernet interfaces is sufficient to handle MLAG control data and provide N+1 redundancy. When the domain connects to devices through only one MLAG peer, the peer link may require additional Ethernet interfaces to manage data traffic.
- all switches: constructing peer-links from port-channels in preference to a single Ethernet interface.
- modular systems: peer-link port-channel members should span multiple line cards.
- multi-chip systems: peer-link port-channel member should span multiple chips.
Managing Switch Configuration Settings describes modular systems.
Configuring the Port Channels, VLAN Interfaces, and IP addresses
The peer link is a normal port channel. The local address is the SVI that maps to the peer link port channel. The port channel and SVI must be configured on each peer switch. The port channel should be an active LACP port. The local and peer addresses must be located on the same IP address subnet. Autostate should be disabled on the SVI configured as the local interface.
Examples
- These commands create an active mode LACP port channel interface from two Ethernet interfaces and configure it as part of a trunk group on each switch.
The switchport mode trunk command permits all VLANs on the interface by default, so all VLANs are permitted on port channel 10 in the following example. The configuration of a trunk group for a VLAN restricts only that specific VLAN to the associated ports: VLAN 4094 is only permitted on port channel 10, and not on any other ports on the switch. It is important to remember that all VLANs must be permitted between the peers on the peer link for correct operation.
Switch 1
switch1# config switch1(config)# vlan 4094 switch1(config-vlan-4094)# trunk group m1peer switch1# config switch1(config)# interface ethernet 1-2 switch1(config-if-et1-2)# channel-group 10 mode active switch1(config-if-et1-2)# interface port-channel 10 switch1(config-if-po10)# switchport mode trunk switch1(config-if-po10)# switchport trunk group m1peer switch1(config-if-po10)# exit switch1(config)#
Switch 2
switch2# config switch2(config)# vlan 4094 switch2(config-vlan-4094)# trunk group m1peer switch2(config-vlan-4094)# exit switch2(config)# interface ethernet 1-2 switch2(config-if-et1-2)# channel-group 10 mode active switch2(config-if-et1-2)# interface port-channel 10 switch2(config-if-po10)# switchport mode trunk switch2(config-if-po10)# switchport trunk group m1peer switch2(config-if-po10)# exit switch2(config)#
- These commands create an SVI for the local interface and associate it to the trunk group assigned to the peer link port channel.
The SVI creates a Layer 3 endpoint in the switch and enables MLAG processes to communicate via TCP. The IP address can be any unicast address that does not conflict with other SVIs. STP is disabled for the peer link vlan 4094 to prevent any potential STP disruption of inter peer communications. Recall that the VLAN has been restricted to port-channel 10 by the earlier trunk group configuration thus preventing potential Layer 2 loop conditions within vlan 4094.
Switch 1
switch1# config switch1(config)# interface vlan 4094 switch1(config-if-vl4094)# ip address 10.0.0.1/30 switch1(config-if-vl4094)# no autostate switch1(config-if-vl4094)# exit switch1(config)# no spanning-tree vlan-id 4094 switch1(config)#
Switch 2
switch2# config switch2(config)# interface vlan 4094 switch2(config-if-vl4094)# ip address 10.0.0.2/30 switch2(config-if-vl4094)# no autostate switch2(config-if-vl4094)# exit switch2(config)# no spanning-tree vlan-id 4094 switch2(config)#
Configuring Peer Parameters
MLAG Configuration Mode
Peer connection parameters are configured in MLAG-configuration mode. The mlag configuration (global configuration) command places the switch in MLAG configuration mode.
Example
This command places the switch in MLAG configuration mode.
switch(config)# mlag configuration
switch(config-mlag)#
Local VLAN Interface
The local interface specifies the SVI upon which the switch sends MLAG control traffic. The local IP address is specified within the definition of the VLAN associated with the local interface. The Peer Address configures the control traffic destination on the peer switch.
The local-interface command specifies a VLAN interface as the peer link SVI.
Example
This command configures vlan 4094 as the local interface.
switch(config-mlag)#local-interface vlan 4094
switch(config-mlag)#
Peer Address
The peer address is the destination address on the peer switch for MLAG control traffic. If the peer IP address is unreachable, MLAG peering fails and both peer switches revert to their independent state.
The peer-address command specifies the peer address.
Example
This command configures a peer address of 10.0.0.2.
switch(config-mlag)# peer-address 10.0.0.2
switch(config-mlag)#
Peer Link
An MLAG is formed by connecting two switches through an interface called a peer link. The peer link carries MLAG advertisements, keepalive messages, and data traffic between the switches. This information keeps the two switches working together as one. While interfaces comprising the peer links on each switch must be compatible, they need not use the same interface number. Ethernet and port-channel interfaces can be configured as peer links.
The peer-link command specifies the interface the switch uses to communicates MLAG control traffic.
Example
switch(config-mlag)# peer-link port-channel 10
switch(config-mlag)#
Domain ID
The MLAG domain ID is a unique identifier for an MLAG domain. The MLAG domain ID must be the identical on each switch to facilitate MLAG communication.
The domain-id command configures the MLAG domain ID.
Example
This command configures mlagDomain as the domain ID:
switch(config-mlag)# domain-id mlagDomain
switch(config-mlag)#
Heartbeat Interval and Timeout
The heartbeat interval specifies the period between the transmission of successive keepalive messages. Each MLAG switch transmits keepalive messages and monitors message reception from its peer. The heartbeat timeout is reset when the switch receives a keepalive message. If the heartbeat timeout expires, the switch disables MLAG under the premise that the peer switch is not functioning.
The heartbeat-interval (MLAG) command configures the heartbeat interval between 1 and 30 seconds, with a default value of 4 seconds. The heartbeat timeout expiry is 30 seconds.
Example
This command configures the heartbeat interval as 2500 milliseconds (2.5 seconds).
switch(config-mlag)# heartbeat-interval 2500
switch(config-mlag)#
Reload Delay Period
- Fixed configuration switches: 300 seconds (five minutes).
- Trident II platform modular switches: 1200 seconds (twenty minutes).
- Sand platform fixed configuration switches(7020 and 7280 series (except 7280CR2 and 7280SR2)): 600 seconds (ten minutes).
- Sand platform modular switches: 1800 seconds (thirty minutes).
In those cases where network topology requires additional time to stabilize or where a shorter delay can be tolerated, the reload-delay period can be configured using the reload-delay mlag command.
Example
This command configures the reload delay interval as 2.5 minutes (150 seconds).
switch(config-mlag)# reload-delay 150
switch(config-mlag)#
Shutdown
The shutdown (MLAG) command disables MLAG operations without disrupting the MLAG configuration. The no mlag configuration command (global configuration mode) disables MLAG and removes the MLAG configuration. The no shutdown command resumes MLAG activity.
- This command disables MLAG activity on the switch.
switch(config-mlag)# shutdown switch(config-mlag)#
- This command resumes MLAG activity on the switch.
switch(config-mlag)# no shutdown switch(config-mlag)#
Configuring MLAG Peer Gateway
In an MLAG setup, routing on a MLAG peer switch is possible using its own bridge system MAC, VARP MAC, or VRRP MAC. On a peer receiving an IP packet with destination MAC set to one of these MACs, a packet gets routed if its hardware has enough information to route the packet. Configuring sending traffic to a cached MAC involves routing the session table and MLAG peer traffic if packets are received with the MAC peer.
Examples
- This command enables the MLAG peer gateway.
switch(config)# ip virtual-router mac-address mlag-peer switch1(config)#
- This command disables the MLAG peer gateway.
switch(config)# no ip virtual-router mac-address mlag-peer switch1(config)#
Configuring Ingress Replication to LAGs
Hardware support for ingress replication to LAGs is enabled by default when the user configures ingress replication. When multicast traffic is sent over the LAG, the hardware uses its built-in algorithm, based on the L2/L3/L4 headers, to load balance traffic over ports in the LAG. When a port goes down in a LAG, the hardware quickly hashes the multicast traffic over the remaining ports in the LAG, resulting in fewer drops than software based LAG support.
Examples
- This command enables ingress replication.
switch(config)# platform sand multicast replication default ingress switch(config)#
- This command configures the maximum members (within a range of 1 through 64) for ingress only replication in a multicast group.
switch(config)# platform sand multicast replication ingress maximum 32 switch(config)#
Configuring MLAG Services
An MLAG is a pair of links that originate on a network attached device and terminate on the two MLAG peer switches. The MLAG switches coordinate traffic to the device through a common mlag (port-channel interface configuration) command on the interfaces that connect to the device.
The MLAG ID differs from the MLAG domain ID. The MLAG domain ID is assigned globally per switch in MLAG configuration mode, and the same MLAG domain ID must be on both switches.
The example below does not follow this convention to emphasize the parameters that are distinct. The example in MLAG Implementation Example follows the best practices convention.
Examples
- These switch1 commands bundle Ethernet interfaces 3 and 4 in port channel 20, then associate that port channel with mlag 12.
switch1(config)# interface ethernet 3-4 switch1(config-if-et3-4)# channel-group 20 mode active switch1(config-if-et3-4)# interface port-channel 20 switch1(config-if-po20)# mlag 12 switch1(config-if-po20)# exit switch1(config)#
- These switch2 commands bundle Ethernet interfaces 9 and 10 in port channel 20, then associate that port channel with mlag 12.
switch2(config)# interface ethernet 9-10 switch2(config-if-et9-10)# channel-group 20 mode active switch2(config-if-et9-10)# interface port-channel 20 switch2(config-if-po20)# mlag 12 switch2(config-if-po20)# exit switch2(config)#
- These commands configure the port channels that attach to the MLAG on network attached device:
NAD(config)# interface ethernet 1-4 NAD(config-if-Et1-4)# channel-group 1 mode active NAD(config-if-Et1-4)# exit NAD(config)#
The following figure displays the result of the interface MLAG configuration.
![](/assets/images/user-manual/um-eos/Graphics/MLAG/MLAG_Interfaces.png)
EVPN - MLAG Single-homed Hosts
Add a local VTEP to each MLAG peer for the control plane to advertise singly connected hosts as being directly behind a specific local VTEP-MLAG peer. Outgoing EVPN route advertisements contain nexthop and router MAC extended community when multi-VTEP MLAG mode is enabled. The following table summarizes the information. For symmetric IRB support, MLAG shared router MAC must be enabled.
routes | Single-homed Host | Multi-homed Host |
MAC/IP routes (Type-2) | Local VTEP IP / Bridge MAC | MLAG VTEP IP / Shared MLAG router MAC |
IMET routes (Type-3) | MLAG VTEP IP | |
IP Prefix routes (Type-5) | Local VTEP IP / Bridge MAC |
In multi-VTEP MLAG mode, IP prefix routes are advertised independently by each MLAG peer with its own local VTEP IP as nexthop, even when both peers are connected to that route. Additionally, egress VXLAN packets use the appropriate source IP to match what is advertised by the EVPN control plane.
Show Commands
The following displays the nexthop of locally generated EVPN Type-2 and Type-3 routes. The real IP address helps identify the VTEP being used. The nexthop of locally generated EVPN Type-5 routes are displayed as "-". The shared MLAG VTEP IP is 1.1.1.1 and the local VTEP IPs of the two MLAG peers are 1.0.1.1 and 1.0.2.2.
switch# show bgp evpn
BGP routing table information for VRF default
router identifier 0.0.0.1, local AS number 300
route status codes: s - suppressed, * - valid, > - active, # - not installed, E - ECMP head, e - ECMP
S - Stale, c - Contributing to ECMP, b - backup
% - Pending BGP convergence
Origin codes: i - IGP, e - EGP, ? - incomplete
AS Path Attributes: Or-ID - Originator ID, C-LST - Cluster List, LL Nexthop - Link Local Nexthop
Network Next Hop Metric LocPref Weight Path
* > RD: 1.0.1.1:200 mac-ip 52de.3c26.a0b0 10.2.0.2
1.0.1.1 - - 0 i
* > RD: 1.0.1.1:100 mac-ip 822c.0630.7ef4 10.1.0.2
1.1.1.1 - - 0 i
RD: 1.0.2.2:100 mac-ip 822c.0630.7ef4 10.1.0.2
1.1.1.1 - 100 0 i
* > RD: 1.0.2.2:200 mac-ip 8650.1ecc.3595 10.2.0.3
1.0.2.2 - 100 0 i
* > RD: 1.0.1.1:100 imet 1.1.1.1
1.1.1.1 - - 0 i
* > RD: 1.0.1.1:200 imet 1.1.1.1
1.1.1.1 - - 0 i
* > RD: 31000:300 ip-prefix 10.1.0.0/16
- - - 0 i
* RD: 31000:300 ip-prefix 10.1.0.0/16
1.0.2.2 - 100 0 i
Limitations
- BUM traffic is advertised on the MLAG VTEP IP. VXLAN flooded packets may be seen on the peer-link.
- The singly connected interfaces or non-MLAG interfaces have to be placed in an exclusive vlan that does not have any MLAG interface as a member.
- MLAG shared router MAC needs to be enabled to support symmetric IRB.
- For EVPN Type-5 setup, the VRF to VNI mapping must be configured on both VTEPs of the MLAG pair.
- For EVPN Type-5 setup as well as EVPN symmetric IRB setup, the VRF to VNI mapping must be configured to be the same across all the VTEPs in the network. That is, the same VRF must be mapped to the same value of VNI on all the VTEPs which participate in the EVPN network.
MLAG Implementation Example
This example creates an MLAG Domain, then configures MLAG connections between the peer switches and four Network Attached Devices (NADs). The MLAG switches connect through a LAG and communicate with the NADs through MLAGs. Although the NADs can be any device that supports LACP LAGs, the devices in this example are Arista switches.
![](/assets/images/user-manual/um-eos/Graphics/MLAG/MLAG_Example-1.png)
Topology
- Switch 1: ethernet 47, ethernet 48
- Switch 2: ethernet 23, ethernet 24
The example configures MLAGs from the MLAG Domain to four network attached devices (NAD-1, NAD-2, NAD-3, NAD-4).
Configuring the Peer Switch Connections
Configuring the Peer Switch Port Channels
These commands create the port channels the switches use to establish the peer link.
These commands create port channels on Switch1
switch1(config)# interface ethernet 47-48
switch1(config-if-et47-48)# channel-group 101 mode active
switch1(config-if-et47-48)# interface port-channel 101
switch1(config-if-po101)# switchport mode trunk
switch1(config-if-po101)# switchport trunk group peertrunk
switch1(config-if-po101)# exit
switch1(config)#
These commands create port channels on Switch2
switch2(config)# interface ethernet 23-24
switch2(config-if-et23-24)# channel-group 201 mode active
switch2(config-if-et23-24)# interface port-channel 201
switch2(config-if-po201)# switchport mode trunk
switch2(config-if-po201)# switchport trunk group trunkpeer
switch2(config-if-po201)# exit
switch2(config)#
Configuring the Peer Switch SVIs
For each peer switch, these commands create an SVI and associate it to the trunk group assigned to the peer link port channel. STP is disabled on the VLAN.
These commands configure the SVI on Switch1
switch1(config)# vlan 4094
switch1(config-vlan-4094)# trunk group peertrunk
switch1(config-vlan-4094)# interface vlan 4094
switch1(config-if-vl4094)# ip address 172.17.0.1/30
switch1(config-if-vl4094)# no autostate
switch1(config-if-vl4094)# exit
switch1(config)# no spanning-tree vlan-id 4094
switch1(config)#
These commands configure the SVI on Switch2
switch2(config)# vlan 4094
switch2(config-vlan-4094)# trunk group trunkpeer
switch2(config-vlan-4094)# interface vlan 4094
switch2(config-if-vl4094)# ip address 172.17.0.2/30
switch2(config-if-vl4094)# no autostate
switch2(config-if-vl4094)# exit
switch2(config)# no spanning-tree vlan-id 4094
switch2(config)#
Configuring the Peer Links
These commands create the peer links on each MLAG switch.
These commands create peer links on Switch1
switch1(config)# mlag configuration
switch1(config-mlag)# local-interface vlan 4094
switch1(config-mlag)# peer-address 172.17.0.2
switch1(config-mlag)# peer-link port-channel 101
switch1(config-mlag)# domain-id mlag_01
switch1(config-mlag)# heartbeat-interval 2500
switch1(config-mlag)# reload-delay 150
switch1(config-mlag)# exit
switch2(config)#
These commands create peer links on Switch2
switch2(config)# mlag configuration
switch2(config-mlag)# local-interface vlan 4094
switch2(config-mlag)# peer-address 172.17.0.1
switch2(config-mlag)# peer-link port-channel 201
switch2(config-mlag)# domain-id mlag_01
switch2(config-mlag)# heartbeat-interval 2500
switch2(config-mlag)# reload-delay 150
switch2(config-mlag)# exit
switch2(config)#
Configuring Peer Switch MLAGs
These commands create the MLAGs that connect the MLAG domain to the network attached devices.
These commands configure MLAG 1 on Switch1
switch1(config)# interface ethernet 17-18
switch1(config-if-et17-18)# channel-group 1 mode active
switch1(config-if-et17-18)# interface port-channel 1
switch1(config-if-po1)# mlag 1
switch1(config-if-po1)# exit
switch1(config)#
These commands configure MLAG 1 on Switch2
switch2(config)# interface ethernet 1-2
switch2(config-if-et1-2)# channel-group 1 mode active
switch2(config-if-et1-2)# interface port-channel 1
switch2(config-if-po1)# mlag 1
switch2(config-if-po1)# exit
switch2(config)#
These commands configure MLAG 2 on Switch1
switch1(config)# interface ethernet 19-20
switch1(config-if-et19-20)# channel-group 2 mode active
switch1(config-if-et19-20)# interface port-channel 2
switch1(config-if-po2)# mlag 2
switch1(config-if-po2)# exit
switch1(config)#
These commands configure MLAG 2 on Switch2
switch2(config)# interface ethernet 3-4
switch2(config-if-et3-4)# channel-group 2 mode active
switch2(config-if-et3-4)# interface port-channel 2
switch2(config-if-po2)# mlag 2
switch2(config-if-po2)# exit
switch2(config)#
These commands configure MLAG 3 on Switch1
switch1(config)# interface ethernet 23
switch1(config-if-et23)# channel-group 3 mode active
switch1(config-if-et23)# interface port-channel 3
switch1(config-if-po3)# mlag 3
switch1(config-if-po3)# exit
switch1(config)#
These commands configure MLAG 3 on Switch2
switch2(config)# interface ethernet 7
switch2(config-if-et7)# channel-group 3 mode active
switch2(config-if-et7)# interface port-channel 3
switch2(config-if-po3)# mlag 3
switch2(config-if-po3)# exit
switch2(config)#
These commands configure MLAG 4 on Switch1
switch1(config)# interface ethernet 25
switch1(config-if-et25)# channel-group 4 mode active
switch1(config-if-et25)# interface port-channel 4
switch1(config-if-po4)# mlag 4
switch1(config-if-po4)# exit
switch1(config)#
These commands configure MLAG 4 on Switch2
switch2(config)# interface ethernet 9
switch2(config-if-et9)# channel-group 4 mode active
switch2(config-if-et9)# interface port-channel 4
switch2(config-if-po4)# mlag 4
switch2(config-if-po4)# exit
switch2(config)#
Configuring the Network Attached Devices
These commands create the LAGs on the Network Attached Devices that connect to the MLAG domain.
These commands configure the port channels on NAD-1
NAD-1(config)# interface ethernet 7-10
NAD-1(config-if-Et7-10)# channel-group 1 mode active
NAD-1(config-if-Et7-10)# exit
NAD-1(config)#
These commands configure the port channels on NAD-2
NAD-2(config)# interface ethernet 25-28
NAD-2(config-if-Et25-28)# channel-group 7 mode active
NAD-2(config-if-Et25-28)# exit
NAD-2(config)#
These commands configure the port channels on NAD-3
NAD-3(config)# interface ethernet 3-4
NAD-3(config-if-Et3-4)# channel-group 5 mode active
NAD-3(config-if-Et3-4)# exit
NAD-3(config)#
These commands configure the port channels on NAD-4
NAD-4(config)# interface ethernet 1-2
NAD-4(config-if-Et1-2)# channel-group 2 mode active
NAD-4(config-if-Et1-2)# exit
NAD-4(config)#
Verification
Verify the Peer Switch Connection
To display the MLAG configuration and the MLAG status on switch 1, use the show mlag command:
switch1# show mlag
MLAG Configuration:
domain-id : mlag_01
local-interface : Vlan4094
peer-address : 172.17.0.2
peer-link : Port-Channel101
MLAG Status:
state : Active
peer-link status : Up
local-int status : Up
system-id : 02:1c:FF:00:15:38
MLAG Ports:
Disabled : 0
Configured : 0
Inactive : 0
Active-partial : 0
Active-full : 4
To display the MLAG configuration and the MLAG status on switch 2, use the show mlag command:
switch2# show mlag
MLAG Configuration:
domain-id : mlag_01
local-interface : Vlan4094
peer-address : 172.17.0.1
peer-link : Port-Channel102
MLAG Status:
state : Active
peer-link status : Up
local-int status : Up
system-id : 02:1c:FF:00:15:41
MLAG Ports:
Disabled : 0
Configured : 0
Inactive : 0
Active-partial : 0
Active-full : 4
Verify the MLAGs
- This show mlag interfaces command displays MLAG connections between the MLAG peer switch 1 and the network attached devices:
switch1# show mlag interfaces local/remote mlag desc state local remote status ---------------------------------------------------------------------------- 1 sw1.po1 active-full Po1 Po1 up/up 2 sw1.po2 active-full Po2 Po2 up/up 3 sw1.po3 active-full Po3 Po3 up/up 4 sw1.po4 active-full Po4 Po4 up/up
- The following show mlag interfaces command, with the detail option, displays MLAG connections between the MLAG peer switch 1 and the network attached devices.
switch2#show mlag interfaces detail local/remote mlag state local remote oper config last change changes ---------------------------------------------------------------------------- 1 active-full Po1 Po1 up/up ena/ena 6 days, 2:08:28 ago 5 2 active-full Po2 Po2 up/up ena/ena 6 days, 2:08:30 ago 5 3 active-full Po3 Po3 up/up ena/ena 6 days, 2:08:33 ago 5 4 active-full Po4 Po4 up/up ena/ena 6 days, 2:08:41 ago 5 switch2#
Verify Spanning Tree Protocol (STP)
STP functions can be displayed from each peer switch. MLAG interfaces are displayed as a single entry. Configured interfaces on each switch that are not included in an MLAG are displayed. Local interfaces have the normal notation; remote interfaces are preceded by P or Peer.
VLAN Output 1: Assume VLAN 3903 includes MLAG 1
switch1# show spanning-tree vlan-id 3903
Spanning tree instance for vlan 3903
VL3903
Spanning tree enabled protocol rapid-pvst
Root ID Priority 36671
Address 001c.730c.3009
Cost 1999 (Ext) 0 (Int)
Port 105 (Port-Channel5)
Hello Time 2.000 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 36671 (priority 32768 sys-id-ext 3903)
Address 021c.7300.1319
Hello Time 2.000 sec Max Age 20 sec Forward Delay 15 sec
Interface Role State Cost Prio.Nbr Type
---------------- ---------- ---------- --------- -------- --------------------
Po1 root forwarding 1999 128.105 P2p
switch1#
The output displays mlag 1 under its local interface name (Po1). A peer interface is not displayed because spanning tree considers the local and remote Port Channels as a single MLAG interface.
VLAN Output 2: Assume VLAN 3908 does not include any MLAGs
switch1# show spanning-tree vlan-id 3908
Spanning tree instance for vlan 3908
VL3908
Spanning tree enabled protocol rapid-pvst
Root ID Priority 36676
Address 021c.7300.1319
This bridge is the root
Bridge ID Priority 36676 (priority 32768 sys-id-ext 3908)
Address 021c.7300.1319
Hello Time 2.000 sec Max Age 20 sec Forward Delay 15 sec
Interface Role State Cost Prio.Nbr Type
---------------- ---------- ---------- --------- -------- ---------------
Et17 designated forwarding 2000 128.217 P2p
Et18 designated forwarding 2000 128.218 P2p
PEt17 designated forwarding 2000 128.17 P2p
PEt18 designated forwarding 2000 128.18 P2p
The output displays all interfaces from both switches. Each interface is explicitly displayed because they are individual units that STP must consider when selecting ports to block.
- Et17 and Et18 are located on the switch where the show spanning-tree command is issued.
- PEt17 and PEt18 are located on the remote switch from where the command was issued
An identical command issued on the peer switch displays similar information.
Verify the MLAG does not create topology loops (show spanning-tree blocked)
switch1# show spanning-tree blocked
Name Blocked Interfaces List
------------------------------------------------------
Number of blocked ports (segments) in the system : 0
switch1#
Verify the MLAG Port Channel
Issue the command show port-channel for channels 1-4 from switch 1:
switch# show port-channel 1-4
Port Channel Port-Channel1:
Active Ports: Ethernet17 Ethernet18 PeerEthernet1 PeerEthernet2
Port Channel Port-Channel2:
Active Ports: Ethernet19 Ethernet20 Ethernet21 Ethernet22
PeerEthernet3 PeerEthernet4 PeerEthernet5 PeerEthernet6
Port Channel Port-Channel3:
Active Ports: Ethernet23 Ethernet24 PeerEthernet7 PeerEthernet8
Port Channel Port-Channel4:
Active Ports: Ethernet25 Ethernet26 PeerEthernet9 PeerEthernet10
Issue the command show port-channel load-balance fields detailed command for channel 1 from switch 2:
switch2# show port-channel 1 detailed
Port Channel Port-Channel1:
Active Ports:
Port Time became active Protocol Mode
-----------------------------------------------------------------------
Ethernet17 7/7/11 15:27:36 LACP Active
Ethernet18 7/7/11 15:27:36 LACP Active
PeerEthernet1 7/7/11 15:27:36 LACP Active
PeerEthernet2 7/7/11 15:27:36 LACP Active
Verify the VLAN Membership
The show vlancommand displays VLAN member ports, including MLAG ports and ports on each peer not bundled in an MLAG.
Switch1# show vlan 3903, 3908
VLAN Name Status Ports
----- -------------------------------- --------- -------------------------------
3903 ar.mg.rn.172.17.254.16/29 active Cpu, Po1
3908 po.ra.ar.mg.172.17.254.64/29 active Cpu, Et17, Et18, PEt17, PEt18
MLAG Commands
Global MLAG Commands
MLAG Interface Configuration Commands
MLAG Configuration Commands
Display Commands
domain-id
The domain-id command specifies a name for the Multi-chassis Link AGgregation (MLAG) domain.
The no domain-id and default domain-id commands remove the MLAG domain name by deleting the domain-id statement from running-config.
Command Mode
MLAG Configuration
Command Syntax
domain-id identifier
no domain-id
default domain-id
Parameters
identifier alphanumeric string that names the MLAG domain.
Example
This command names the MLAG domain mlag1.
switch(config)# mlag
switch(config-mlag)# domain-id mlag1
switch(config-mlag)#
dual-primary detection delay
Use the dual-primary detection delay command to configure a dual primary detection delay with an optional action to errdisable all interfaces on secondary MLAG peer after a dual primary condition is detected.
Command Mode
MLAG configuration mode
Command Syntax
dual-primary detection delay seconds [action erridisable all-interfaces]
no dual-primary detection delay seconds [action erridisable all-interfaces]
default dual-primary detection delay seconds [action erridisable all-interfaces]
- seconds Dual primary detection delay in seconds.
- actionSpecifies the action when dual-primary is detected.
- erridisableErrdisable interfaces.
- all-interfacesDisables all Ethernet interfaces except the peer-link.
- In this example, the command errdisables all physical interfaces on secondary MLAG peer when dual primary condition is detected.
switch(config-mlag)# dual-primary detection delay 5 action errdisable all-interfaces
Both MLAG peers must have equivalent configurations.
-
The following command removes the Dual Primary Detection feature. You must unconfigure both MLAG peers.
switch(config-mlag)# no dual-primary detection
dual-primary recovery delay
Use the dual-primary recovery delay command to configure dual-primary detection recovery-delay for MLAG interfaces and non-MLAG interfaces. Negating the configurations or configuring default values makes both recovery delay values reset back to 0. The non-MLAG delay must always be less than the MLAG delay so you have more time for L3 convergence before enabling MLAG interfaces.
Command Mode
MLAG configuration mode
Command Syntax
dual-primary recovery delay mlag seconds non-mlag seconds
no dual-primary recovery delay mlag seconds non-mlag seconds
default dual-primary recovery delay mlag seconds non-mlag seconds
- mlag seconds Delay in seconds after dual-primary detection resolves until non peer-link ports that are part of an MLAG are enabled. Range 0 - 1000 seconds. A suggested value for MLAG is 60 seconds. These values can be adjusted depending on the network scale.
- non-mlag seconds Delay in seconds after dual-primary detection resolves until ports that are not part of an MLAG are enabled. Range 0 - 1000 seconds. A suggested value for non-MLAG is 0 seconds. These values can be adjusted depending on the network scale.
Example
switch(config)# mlag
switch(config-mlag)# dual-primary recovery delay mlag 60 non-mlag 0
heartbeat-interval (MLAG)
The heartbeat-interval command configures the interval at which heartbeat messages are issued in a Multi-chassis Link AGgregation (MLAG) configuration.
The no heartbeat-interval and default heartbeat-interval commands revert the heartbeat interval to the default setting by removing the heartbeat-interval command from running-config.
Command Mode
MLAG Configuration
Command Syntax
heartbeat-interval period
no heartbeat-interval
default heartbeat-interval
Parameters
period Interval duration in milliseconds. Value ranges from 1000 through 30000 milliseconds. Default interval is 4000 milliseconds.
Guidelines
Heartbeat messages flow independently in both directions between the MLAG peers. If a peer stops receiving heartbeat messages within the expected time frame (30 seconds), the other peer can assume it no longer functions and without intervention or repair, the MLAG becomes disabled. Both switches revert to their independent state.
Example
switch(config)# mlag
switch(config-mlag)# heartbeat-interval 15000
switch(config-mlag)#
local-interface
The local-interface command assigns a VLAN interface for use in Multi-chassis Link AGgregation (MLAG) configurations. The VLAN interface is used for both directions of communication between the MLAG peers.
The no local-interface and default local-interface commands delete the VLAN interface assignment by removing the local-interface command from running-config.
Command Mode
MLAG Configuration
Command Syntax
local-interface vlan vlan_number
no local-interface
default local-interface
Parameters
vlan_number VLAN number, in the range from 1 through 4094.
Guidelines
When configuring the local interface, the VLAN interface must exist already. To configure a VLAN interface, issue the command interface vlan.
Example
This command assigns VLAN 4094 as the local interface.
switch(config)# mlag
switch(config-mlag)# local-interface vlan 4094
switch(config-mlag)#
mlag (port-channel interface configuration)
The mlag command assigns an MLAG ID to a port-channel. MLAG peer switches form an MLAG when each switch configures the same MLAG ID to a port-channel interface. Only one MLAG ID can be assigned to an interface. An individual MLAG number cannot be assigned to more than one interface.
The no mlag and default mlag commands remove the MLAG ID assignment from the configuration mode interface by deleting the corresponding mlag command from running-config.
Command Mode
Interface-Port Channel Configuration
Command Syntax
mlag number
no mlag
default mlag
Parameters
number Number used as MLAG ID. Value ranges from 1 to 2000.
Example
These commands configures a port channel and assigns it mlag 4.
switch(config)# interface ethernet 5-10
switch(config-if-Et5-10)# channel-group 1 mode active
switch(config-if-Et5-10)# interface port-channel 4
switch(config-if-Po4)# switchport trunk group group4
switch(config-if-Po4)# mlag 4
switch(config-if-Po4)# exit
switch(config)#
peer-address
The peer-address command specifies the peer IPv4 address for a Multi-chassis Link AGgregation (MLAG) domain. MLAG control traffic, including keepalive messages, is sent to the peer IPv4 address. If the peer IPv4 address is unreachable, then MLAG peering fails and both peer switches revert to their independent state.
The no peer-address and default peer-address commands remove the MLAG peer’s IPv4 address assignment by deleting the peer-address command from running-config.
Command Mode
MLAG Configuration
Command Syntax
peer-address ipv4_addr
no peer-address
default peer-address
Parameters
ipv4_addr MLAG peer IPv4 address.
Example
These commands configure the MLAG peer address.
switch(config)# mlag
switch(config-mlag)# peer-address 10.0.0.2
switch(config-mlag)#
peer-address heartbeat
The peer-address heartbeat command causes the MLAG agent to start using Peer-IP address in the given VRF for UDP-based heartbeat control messages.
To enable MLAG dual primary detection feature, the command must be configured on both MLAG peers in the MLAG config mode.
Command Mode
MLAG configuration mode
Command Syntex
peer-address heartbeat Peer-IP [vrf vrf_name]
no peer-address heartbeat Peer-IP [vrf vrf_name]
default peer-address heartbeat Peer-IP [vrf vrf_name]
- Peer-IP The Management IP address of the MLAG peer reachable in the VRF VRF-NAME (or default VRF if there is no VRF configured).
- vrf vrf_nameNamed VRF.
-
switch(config)# mlag switch(config-mlag)# peer-address heartbeat 172.30.118.190
- This example removes the feature.
switch(config-mlag)# no peer-address heartbeat
peer-link
The peer-link command specifies the interface that connects Multi-chassis Link AGgregation (MLAG) peers. To form an MLAG, two switches are connected through an interface called a peer link. The peer link carries control and data traffic between the two switches. Control traffic includes MLAG-related advertisements and keepalive messages. This information keeps the two switches working as one.
The no peer-link and default peer-link command remove the peer link by deleting the peer-link command from running-config.
Command Mode
MLAG Configuration
Command Syntax
peer-link INT_NAME
no peer-link
default peer-link
Parameters
INT_NAME denotes the interface type and number of the interface. Values include:
- ethernet e_num Ethernet interface range specified by e_num.
-
port-channel p_num Channel group interface range specified by p_num.
Example
These commands creates a peer link.
switch(config)# mlag configuration
switch(config-mlag)# peer-link port-channel 10
switch(config-mlag)
mlag configuration (global configuration)
The mlag configuration command enters MLAG configuration mode to configure Multi-chassis Link AGgregation (MLAG) features. MLAG configuration mode is not a group change mode; running-config is changed immediately after commands are executed. The exit command does not affect the configuration.
The no mlag configuration and default mlag configuration commands remove all MLAG configuration commands from running-config.
The exit command returns the switch to global configuration mode.
Command Mode
Global Configuration
Command Syntax
mlag configuration
no mlag configuration
default mlag configuration
mlag and mlag configuration are identical commands.
Guidelines
An MLAG is formed by connecting two switches through an interface called a peer link. The peer link carries control and data traffic between the switches, including advertisements and keepalive messages. This information coordinates the switches. Functioning peers are in the active state.
Each peer switch uses IP-level connectivity between their local addresses and the MLAG peer IP address to form and maintain the peer link.
Commands Available in MLAG Configuration Mode
Example
switch(config)# mlag
switch(config-mlag)# local-interface vlan 4094
switch(config-mlag)# peer-address 10.0.0.2
switch(config-mlag)# peer-link port-channel 10
switch(config-mlag)# domain-id mlagDomain
switch(config-mlag)# heartbeat-interval 2500
switch(config-mlag)# reload-delay 2000
switch(config-mlag)# exit
switch(config)#
reload-delay mlag
The reload-delay mlag command configures the reload delay period for MLAG links. The command also specifies the reload delay period for non-MLAG links when the reload-delay non-mlag command is not configured.
Each Arista switch defaults to the recommended reload-delay value, which varies by switch platform:
- Fixed configuration switches: 300 seconds
-
Trident II modular switches: 1200 seconds
- 7304
- 7308
- 7316
- 7300X series
-
Sand platform fixed configuration switches: 600 seconds
- 7280 series (except 7280CR2 and 7280SR2)
- 7020 series
-
Sand platform modular switches: 1800 seconds
- 7504
- 7508
- 7500E series
- 7548S
- Sand Jericho+ fixed configuration switches: 900 seconds
- 7280CR2 series
- 7280SR2 series
The no reload-delay mlag and default reload-delay mlag commands restore the default value by deleting the reload-delay mlag statement from running-config.
Command Mode
MLAG Configuration
Command Syntax
reload-delay [mlag] PERIOD
no reload-delay [mlag]
default reload-delay [mlag]
Parameters
- PERIOD Period that non-peer links are disabled after an MLAG peer reboots. Options include:
- infinity link is not enabled after reboot.
- 0 to 86400 disabled link interval (seconds). Default varies by switch platform as described above.
Guidelines
The reload-delay and reload-delay mlag commands are equivalent.
Example
These commands configure the reload-delay interval to 15 minutes.
switch(config)# mlag configuration
switch(config-mlag)# reload-delay mlag 900
switch(config-mlag)#
reload-delay mode
The reload-delay mode command specifies the state of LACP LAG ports during the MLAG reload delay period. By default, MLAG ports remain in the errdisabled state during reload delay. This command configures MLAG ports to come up to standby mode before the expiration of the reload delay period.
The no reload-delay mode and default reload-delay mode commands restore the default behavior of MLAG ports by deleting the reload-delay mode statement from running-config. The default behavior is for the MLAG ports to remain in the errdisabled state until the expiration of the reload delay period
Command Mode
MLAG Configuration
Command Syntax
reload-delay mode lacp standby
no reload-delay mode
default reload-delay mode
Related Commands
reload-delay mlag configures the MLAG reload delay period.
Example
These commands configure the MLAG port to come up to standby state before the end of the reload delay period.
switch(config)# mlag configuration
switch(config-mlag)# reload-delay mode lacp standby
switch(config-mlag)#
reload-delay non-mlag
- Fixed configuration switches: 300 seconds (five minutes)
- Sand platform fixed configuration switches(7020 and 7280 series (except 7280CR2 and 7280SR2)): 600 seconds (ten minutes)
- Modular switches: 1200 seconds (twenty minutes)
When the reload-delay non-mlag command is not configured, the reload-delay mlag command specifies the reload delay time for non-MLAG and MLAG links.
The no reload-delay non-mlag and default reload-delay non-mlag command restores the default behavior by deleting the reload-delay non-mlag statement from running-config.
Command Mode
MLAG Configuration
Command Syntax
reload-delay non-mlag PERIOD
no reload-delay non-mlag
default reload-delay non-mlag
Parameters
- infinity links are not enabled after reboot.
- 0 to 86400 disabled link interval (seconds). Values range from 0 to 86400 (24 hours).
Example
These commands configure the reload-delay interval of non-MLAG links to 20 minutes.
switch(config)# mlag configuration
switch(config-mlag)# reload-delay non-mlag 1200
switch(config-mlag)#
show mlag interfaces members
The show mlag interfaces members command displays information about the Multi-chassis Link AGgregation (MLAG) members on bridged Ethernet interfaces.
Command Mode
EXEC
Command Syntax
show mlag interfaces members
Example
This command displays the MLAG interface members.
switch# show mlag interface members
Mlag4 is Port-Channel4
Active Ports: Ethernet3 PeerEthernet3
Mlag5 is Port-Channel5
Active Ports: Ethernet14
Mlag7 is Port-Channel7
Active Ports: Ethernet5 PeerEthernet5
Mlag8 is Port-Channel8
Active Ports: Ethernet10 PeerEthernet10
Mlag9 is Port-Channel9
Active Ports: Ethernet15 Ethernet21 PeerEthernet19 PeerEthernet20
Mlag10 is Port-Channel10
Active Ports: Ethernet19 Ethernet20 PeerEthernet21 PeerEthernet22
switch#
show mlag interfaces states
The show mlag interfaces states command displays information about the Multi-chassis Link AGgregation (MLAG) states on bridged Ethernet interfaces.
Command Mode
EXEC
Command Syntax
show mlag interfaces [MLAGS] states [ STATE_NAMES][INFO_LEVEL]
- MLAGS MLAG channels for which command displays data. Options include:
- no parameter command displays data for all MLAGs.
- mlag_id specifies MLAG for which command displays data. Value ranges from 1 to 2000.
- STATE_NAMES MLAG channels for which command displays data. Parameter may specify more than one name, which can be listed in any order. Valid state names include:
- active-full includes active-full interfaces.
- active-partial includes active-partial interfaces.
- configured includes configured interfaces.
- disabled includes disabled interfaces.
- inactive includes inactive interfaces.
- INFO_LEVEL specifies information displayed by command. Options include:
- no parameter command displays basic MLAG interface parameters.
- detail command displays detailed MLAG interface state parameters.
Example
This command displays the MLAG interface states that are active-full.
switch# show mlag interfaces states active-full
local/remote
mlag desc state local remote status
-------- -------------------- --------------- --------- ---------- ------------
4 b.po1 active-full Po4 Po4 up/up
7 ar.mg.au.po1 active-full Po7 Po7 up/up
8 co.po1 active-full Po8 Po8 up/up
9 k.po5 active-full Po9 Po9 up/up
10 ar.mg.pt.ir.po10 active-full Po10 Po10 up/up
switch#
show mlag interfaces
The show mlag interfaces command displays information about the Multi-chassis Link AGgregation (MLAG) configuration on bridged Ethernet interfaces.
Command Mode
EXEC
Command Syntax
show mlag interfaces [MLAGS][INFO_LEVEL]
- MLAGS MLAG channels for which command displays data. Options include:
- no parameter command displays data for all MLAGs.
- mlag_id specifies MLAG for which command displays data. Value ranges from 1 to 2000.
- INFO_LEVEL specifies information displayed by command. Options include:
- no parameter command displays basic MLAG interface parameters.
- detail command displays detailed MLAG interface parameters.
Example
This command displays output from the show mlag interfaces detail command:
switch> show mlag interfaces detail
local/remote
mlag state local remote oper config last change changes
----------------------------------------------------------------------------
4 active-full Po4 Po4 up/up ena/ena 6 days, 1:19:26 ago 5
5 active-full Po5 Po5 up/up ena/ena 6 days, 1:19:24 ago 5
6 active-full Po6 Po6 up/up ena/ena 6 days, 1:19:23 ago 5
7 active-full Po7 Po7 up/up ena/ena 6 days, 1:19:23 ago 5
show mlag issu warnings
The show mlag issu warnings command displays a warning message regarding the backward-compatibility of this feature before you upgrade.
Command Mode
EXEC
Command Syntax
show mlag issu warnings
Example
This command displays the MLAG backward-compatibility warning message. Refer to the latest version of the release notes for additional information before you upgrade.
switch# show mlag issu warnings
If you are performing an upgrade, and the Release Notes for the new
version of eos indicate that MLAG is not backwards-compatible with the
currently installed version, the upgrade will result in packet loss.
Stp is not restartable. Topology changes will occur during the upgrade
process.
switch#
show mlag
The show mlag command displays information about the Multi-chassis Link AGgregation (MLAG) configuration on bridged Ethernet interfaces.
Command Mode
EXEC
Command Syntax
show mlag [INFO_LEVEL]
Parameters
- no parameter command displays MLAG configuration, status, and ports.
- detail command displays MLAG configuration, status, ports, and detailed status.
Example
This command displays output from the show mlag command:
switch> show mlag
MLAG Configuration:
domain-id : ar.mg.mlag
local-interface : Vlan3901
peer-address : 172.17.254.2
peer-link : Port-Channel1
MLAG Status:
state : Active
peer-link status : Up
local-int status : Up
system-id : 02:1c:73:00:13:19
MLAG Ports:
Disabled : 0
Configured : 0
Inactive : 0
Active-partial : 0
Active-full : 5
switch>
shutdown (MLAG)
The shutdown command disables MLAG on the switch without modifying the MLAG configuration.
The no shutdown and default shutdown commands re-enable MLAG by removing the shutdown command from running-config.
Command Mode
MLAG Configuration
Command Syntax
shutdown
no shutdown
default shutdown
Example
These commands disable MLAG on the switch.
switch(config)# mlag configuration
switch(config-mlag)# shutdown
switch(config-mlag)#