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.

MLAG provides these benefits:
  • 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.
Note: For information on enabling Precision Timing Protocol (PTP) on an MLAG interface, see the Timing Protocols chapter.
Note: The global STP configuration is derived from the primary peer device while the secondary device parameters are ignored. When STP is disabled on the primary device, the secondary device will not contain any STP configuration information from the primary device. As a result, the secondary device will not be able to decide on the port roles or states, and will remain in the default state which is the discarding state. This is an expected behavior.
Note: It is highly recommended that both MLAG peer switches are identical platforms and run identical EOS images. Running different images/platform may result in a failure to form an association with the MLAG peer or see discrepancy in behavior.

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.

Figure 1. MLAG Domain Topology
When MLAG is disabled, peer switches revert to their independent state. MLAG is disabled by any of the following:
  • 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.

Note: IPv6 Flow Label is included in the LAG hashing algorithm only when the MAC header hashing is not enabled for IPv6 traffic.

MLAG Maintenance

These sections describe tasks required for MLAG to operate on the switch:

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

If an MLAG peer reboots, all ports except those in the peer-link port-channel remain in errdisabled state for a specified time, called the reload-delay period. This period allows all topology states to stabilize before the switch begins forwarding traffic. 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

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

A seamless EOS upgrade on an MLAG peer requires that the following features are configured consistently on each switch:
  • 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 upgrade 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.

Table 1. Reload Warning Resolutions
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
The following reload command generates MLAG warning conditions that should be addressed before confirming the proceed with reload prompt.
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:

  1. Verify configuration consistency on each peer (Verifying Configuration Compatibility).
  2. Verify version compatibility between the new and existing images (Version Compatibility).
  3. Configure reload-delay mlag (MLAG Availability through a Single Functional Peer) if needed. Recommended delay period varies by switch type, and each switch defaults to its recommended delay period.
  4. Install the new image onto one of the peers:
    1. Upload the new image to the switch.
    2. Set the boot path to the new image.
    3. Enter the reload command.
  5. Resolve all reload warnings.
  6. Confirm the reload.
  7. Wait for MLAG peers to renegotiate to the active state and reload-delay expiry on rebooted peer; until reload-delay period has expired, ports on the rebooted peer (except the peer-link) will be in errdisabled state with err-disabled reason being mlag-issu.

    Avoid configuration changes on both peers until after this step.

  8. Repeat the upgrade process for the other peer.

    When upgrading modular switches with dual supervisors, upgrade the standby supervisors first, then upgrade the active supervisors.

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

The following limitaions apply to the MLAG Dual Primary Detection feature.
  1. 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.
  2. At least one MLAG port-channel must be configured on the MLAG peers to perform dual primary detection and the corresponding errdisable action.
  3. 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).
  4. 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.
  5. 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.
  6. Changing the recovery delay configurations during active recovery delay may cause interfaces to stay errdisabled.

MLAG Dual Primary Detection and Release Configuration

To enable MLAG dual primary detection feature, you must configure the following commands on both MLAG peers in the MLAG configuration mode.
switch(config-mlag)# peer-address heartbeat Peer-IP [vrf VRF-NAME ]
Parameters:
  • 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]
Parameters:
  • 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.
Note: This feature must be configured on both MLAG peers.

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.

Examples
  • 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.

The following commands remove the Dual Primary Detection feature. You must unconfigure both MLAG peers.
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.

Example
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.

Example
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.

Example
switch# show interfaces status errdisabled
 Port Name Status Reason
 ------------ ---------------- ----------------- ---------------------
 Et1 errdisabled mlagdualprimary
 Et2 errdisabled mlagdualprimary
 Et14 errdisabled mlagdualprimary 
...

Configuring MLAG

These sections describe the basic MLAG configuration steps:

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.

Disruptions to peer link connectivity due to forwarding agent restarts may cause an extended MLAG outage. Forwarding agent restart event include some configuration changes, such as port speed change or UFT mode change). The following precautions can reduce the risk of losing peer-link connectivity:
  • 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

Peer connection parameters configure the connection between the MLAG peer switches. This section describes the following peer configuration 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)#
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.

Note: On 7500 and 7500E Series Switches, Arista recommends setting the heartbeat interval to 10 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

 

The reload delay period specifies the interval that non-peer links are disabled after an MLAG peer reboots. This interval allows non-peer links to learn multicast and OSPF states and synchronize ARP caches before the ports start handling traffic. Each Arista switch defaults to the recommended reload-delay value, which varies by switch platform.
  • 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.

Examples
  • 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.

Port channels configured as an MLAG must have identical port channel numbers. Although the MLAG ID is a distinct parameter from the port channel number, best practices recommend assigning the MLAG ID to match the port channel number.
Note: Arista recommends configuring the downstream switch or router connected to the MLAG peers to negotiate a LAG using LACP rather than configuring static LAGs. (On Arista switches, LACP is enabled using the command channel-group mode active. See Port Channels and LACP.) Using LAGs negotiated by LACP can help avoid problems caused by miscabling because LACP PDUs include the system ID and LACP key, which identify the switch and the LAG it belongs to. If MLAG miscabling happens using a LACP LAG, some ports will be inactive in the LAG which prevents it from bridging traffic erroneously. More importantly, when the MLAG state is primary on one switch and inactive on another, the peer switches are acting as two independent L2 switches rather than as one logical L2 switch. In this scenario, the downstream switch will have its LAG (logical L2 port) connected to two distinct L2 switches, which can result in spanning tree problems on the downstream switch because it will receive BPDUs with different system IDs on the same LAG. If spanning tree is not running, an L2 loop will be created between MLAG peer switches and the downstream device. Allowing LACP to negotiate the downstream LAG will avoid this problem because only ports connected to a given peer will be active in the LAG., and the other set of ports will not be able to bridge traffic.

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.

Figure 2. MLAG Interface Configuration

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.

Table 2. Route Advertisement
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.

Figure 3. MLAG Implementation Example

Topology

Figure 3 displays the MLAG topology. Switch 1 and Switch 2 are MLAG peers that logically represent a single Layer 2 switch. The peer link between the switches contains the following interfaces:
  • 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

To configure the switches in the described topology, perform the tasks in these sections:

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

The show mlag interfaces command displays MLAG connections between the MLAG switches and the Network Attached Devices.
  • 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

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]

Parameters
  • 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.
Examples
  • 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

Parameters
  • 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.

Note: On 7500 and 7500E Series Switches, Arista recommends setting the heartbeat interval to 10 seconds.

Example

This command configures the heartbeat interval to 15000 milliseconds:
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]

Parameters
  • 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.
Examples
  • 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

These commands enter MLAG configuration mode and configure MLAG parameters:
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

The reload-delay non-mlag command specifies the period that non-MLAG links are disabled after an MLAG peer reboots. This interval allows non peer links to learn multicast and OSPF states before the ports start handling traffic. The recommended minimum value required to ensure the forwarding hardware is initialized with the topology state depends on the switch platform:
  • 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

PERIOD     Period that non-MLAG links are disabled after an MLAG peer reboots. Options include:
  • 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]

Parameters
  • 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]

Parameters
  • 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

INFO_LEVEL     specifies information displayed by command. Options include:
  • 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)#