Allow create MLAG across multiple switches #2326

Closed
opened 2025-12-29 17:24:53 +01:00 by adam · 1 comment
Owner

Originally created by @s-fu on GitHub (Jan 30, 2019).

Environment

  • Python version: 3.6.7
  • NetBox version: 4.0.5

Proposed Functionality

Allow multiple switches sharing a Multi-Chassis Link Aggregation (MLAG).

There should be a function allowing multiple independent switches have a shared MLAG. Currently only LAG is available, which allows the the bonding of multiple ports on one switch.

The switches sharing the MLAG are independent (not belong to a virtual chassis). They will have the port like 0/[1-24] on all switches instead of [0-1]/[0-24] in a stack

Use Case

Almost all the vendors have their own proprietary MC-LAG implementations. The use case is usually like this:

                  |-----------------|                     |-----------------|
                  |     coresw1     |=====================|     coresw2     |
                  |                 |                     |                 | 
                  -------------------                     -------------------
                                \                              /
                                 \                            /
                                  \                          /
                                  |---------------------------|
                                  |        access switch      |
                                  |---------------------------|

The bond between core switches is LAG, e.g LACP.
The connection from access switch to both core switches shares the same MLAG number.

You can't have the LAG shared by two switches now, unless using virtual chassis. However, it causes inconsistency of port number.

Database Changes

External Dependencies

Originally created by @s-fu on GitHub (Jan 30, 2019). <!-- NOTE: This form is only for proposing specific new features or enhancements. If you have a general idea or question, please post to our mailing list instead of opening an issue: https://groups.google.com/forum/#!forum/netbox-discuss NOTE: Due to an excessive backlog of feature requests, we are not currently accepting any proposals which significantly extend NetBox's feature scope. Please describe the environment in which you are running NetBox. Be sure that you are running an unmodified instance of the latest stable release before submitting a bug report. --> ### Environment * Python version: <!-- Example: 3.5.4 --> 3.6.7 * NetBox version: <!-- Example: 2.3.6 --> 4.0.5 <!-- Describe in detail the new functionality you are proposing. Include any specific changes to work flows, data models, or the user interface. --> ### Proposed Functionality Allow multiple switches sharing a Multi-Chassis Link Aggregation (MLAG). There should be a function allowing multiple independent switches have a shared MLAG. Currently only LAG is available, which allows the the bonding of multiple ports on one switch. The switches sharing the MLAG are independent (not belong to a virtual chassis). They will have the port like 0/[1-24] on all switches instead of [0-1]/[0-24] in a stack <!-- Convey an example use case for your proposed feature. Write from the perspective of a NetBox user who would benefit from the proposed functionality and describe how. ---> ### Use Case Almost all the vendors have their own proprietary MC-LAG [implementations](https://en.wikipedia.org/wiki/MC-LAG#Vendor_Implementations). The use case is usually like this: ``` |-----------------| |-----------------| | coresw1 |=====================| coresw2 | | | | | ------------------- ------------------- \ / \ / \ / |---------------------------| | access switch | |---------------------------| ``` The bond between core switches is LAG, e.g LACP. The connection from access switch to both core switches shares the same MLAG number. You can't have the LAG shared by two switches now, unless using virtual chassis. However, it causes inconsistency of port number. <!-- Note any changes to the database schema necessary to support the new feature. For example, does the proposal require adding a new model or field? (Not all new features require database changes.) ---> ### Database Changes <!-- List any new dependencies on external libraries or services that this new feature would introduce. For example, does the proposal require the installation of a new Python package? (Not all new features introduce new dependencies.) --> ### External Dependencies
adam closed this issue 2025-12-29 17:24:53 +01:00
Author
Owner

@jeremystretch commented on GitHub (Jan 31, 2019):

To model multichassis LAG, you'll need to create the LAG interface with the same name/ID on both switches. There isn't really anything else for NetBox to model: The multichassis functionality is accomplished by proprietary hacks performed on the forwarding plane, which vary in their implementation among platforms and are out of scope for NetBox.

@jeremystretch commented on GitHub (Jan 31, 2019): To model multichassis LAG, you'll need to create the LAG interface with the same name/ID on both switches. There isn't really anything else for NetBox to model: The multichassis functionality is accomplished by proprietary hacks performed on the forwarding plane, which vary in their implementation among platforms and are out of scope for NetBox.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#2326