This article will help you add a logical unit from an interface to a VPLS instance, while the rest of the units remain separate and are running Multiple Spanning Tree Protocol (MSTP).
Acronyms used:
IFL= Logical Interface (i.e., unit ge-0/0/0.40)
IFD= Physical Interface (i.e., ge-0/0/0)
MSTP= Multiple Spanning Tree Protocol
VPLS= virtual private LAN service
If an IFL is attempted to be added to a VPLS instance while the IFD is still part of MSTP, then the following error will be retrieved when commiting the changes:
JTAC@MX80# commit check error: STP for interface ge-0/0/0.40 must be configured within a routing-instance of type layer2-control. Currently its configured as part of instance default. This is incorrect. error: configuration check-out failed
If an IFL needs to remain separate from the rest because it will serve another purpose, such as another instance of the router, in this case VPLS, then the rest of the units will also need to be isolated. This is so the router will still be able to track and perform Layer 2 Control Protocol features such as nonstop bridging or Layer 2 Tunneling Protocol (L2TP).
Remove the IFD from the MSTP configuration currently belonging to the default/master instance of the router:
JTAC@MX80# show
protocols {
mstp {
interface ge-0/0/0;
}
}
JTAC@MX80# delete protocols mstp interface ge-0/0/0
And then add it to a layer2-control
routing instance, so the router can have it isolated:
JTAC@MX80# show routing-instances
LAYER2_CONTROL {
instance-type layer2-control;
protocols {
mstp {
interface ge-0/0/0;
}
}
}
Final configuration might look like this:
JTAC@MX80# show interfaces ge-0/0/0
flexible-vlan-tagging;
encapsulation flexible-ethernet-services;
unit 10 {
encapsulation vlan-bridge;
vlan-id 10;
}
unit 20 {
encapsulation vlan-bridge;
vlan-id 20;
}
unit 30 {
encapsulation vlan-bridge;
vlan-id 30;
}
unit 40 {
encapsulation vlan-vpls;
vlan-id 40;
}
unit 50 {
encapsulation vlan-bridge;
vlan-id 50;
}
unit 60 {
encapsulation vlan-bridge;
vlan-id 60;
}
JTAC@MX80# show routing-instances
LAYER2_CONTROL {
instance-type layer2-control;
protocols {
mstp {
interface ge-0/0/0;
}
}
}
VPLS_A {
instance-type vpls;
interface ge-0/0/0.40;
route-distinguisher 1000:1;
vrf-target target:1000:1;
protocols {
vpls {
site VPLS_SITE {
site-identifier 1;
interface ge-0/0/0.40;
}
}
}
}
And the commit will finally succeed:
JTAC@MX80# commit check
configuration check succeeds
Note that the ifl
in question is ge-0/0/0.40
, which needs to be part of the VPLS routing instance; the rest of the IFLs are still running encapsulation vlan-bridge
, and might be running MSTP on a separate part of the network.
Keep in mind that whenever you want to check on MSTP information or statistics, you will now need to reference the configured layer2-control
instance; otherwise no information will be retrieved:
JTAC@MX80> show spanning-tree mstp configuration
Spanning-tree is not enabled at global level.
JTAC@MX80> show spanning-tree mstp configuration routing-instance LAYER2_CONTROL
MSTP configuration information
Context identifier : 1
Revision : 0
Configuration digest : ac:36:17:7f:50:28:3c:d4:b8:38:21:d8:ab:26:de:62
MSTI Member VLANs
0 0-4094