MLAG is a networking technology which allows for increased redundancy and bandwidth in layer 2 networks. This talk will begin with an overview of MLAG, the problems it solves, and the common use cases. This leads to the important design considerations and caveats of a properly functioning MLAG implementation, especially with respect to MAC address learning and packet forwarding. This requires additional capabilities to be added to the Linux kernel bridging and bonding drivers for proper MLAG operation. Each of these enhancements will be enumerated and described in detail. Then, an example of a recent implementation of MLAG on a Linux system will be used to describe the types of data which must be synchronized between bridges and the interactions with other system components, such as spanning tree, iproute2/Netlink, and ifupdown2.