When two BGP instances are added to a VPLS service, both BGP-EVPN MPLS and BGP-EVPN VXLAN can be configured at the same time in the service. A maximum of two BGP instances are supported in the same VPLS, where BGP-EVPN MPLS and BGP-EVPN VXLAN can both use BGP instance 1 or 2, as long as they use different instances.
For example, in a service where EVPN-VXLAN and EVPN-MPLS are configured together, the configure service vpls bgp-evpn vxlan bgp 1 and configure service vpls bgp-evpn mpls bgp 2 commands allow the user to associate the BGP-EVPN MPLS to a different instance from that associated with BGP-EVPN VXLAN, and have both encapsulations simultaneously enabled in the same service. At the control plane level, MAC or IP routes received in one instance are consumed and re-advertised in the other instance as long as the route is the best route for a specific MAC. Inclusive multicast routes are independently generated for each BGP instance. From a data plane perspective, the EVPN-MPLS and EVPN-VXLAN destinations are instantiated in different implicit Split Horizon Groups (SHGs) so that traffic can be forwarded between them.
The following example shows a VPLS service with two BGP instances and both VXLAN and MPLS encapsulations configured for the same BGP-EVPN service.
*A:PE-1>config>service>vpls# info
----------------------------------------------
description "evpn-mpls and evpn-vxlan in the same service"
vxlan instance 1 vni 7000 create
exit
bgp
route-distinguisher 10:2
route-target target:64500:1
exit
bgp 2
route-distinguisher 10:1
route-target target:64500:1
exit
bgp-evpn
evi 7000
incl-mcast-orig-ip 10.12.12.12
vxlan bgp 1 vxlan-instance 1
no shutdown
mpls bgp 2
control-word
auto-bind-tunnel
resolution any
exit
force-vlan-vc-forwarding
no shutdown
exit
exit
no shutdown
The following list describe the preceding example:
bgp 1 or bgp is the default BGP instance
bgp 2 is the additional instance required when both bgp-evpn vxlan and bgp-evpn mpls are enabled in the service
The commands supported in instance 1 are also available for the second instance with the following considerations.
pw-template-binding: the pw-template-binding can only exist in instance 1; it is not supported in instance 2.
route-distinguisher: the operating route-distinguisher in both bgp instances must be different
route-target: the route-target in both instances can be the same or different
vsi-import and vsi-export: import and export policies can also be defined for either bgp instance
MPLS and VXLAN can use either BGP instance and the instance is associated when bgp-evpn mpls or bgp-evpn vxlan is created. The bgp-evpn vxlan command must include not only the association to a BGP instance, but also to a vxlan-instance (because the VPLS services support two VXLAN instances).
The bgp-evpn vxlan no shutdown command is only allowed if bgp-evpn mpls shutdown is configured, or if the BGP instance associated with the MPLS has a different route distinguisher than the VXLAN instance.
The following features are not supported when two BGP instances are enabled on the same VPLS/R-VPLS service:
SDP bindings
M-VPLS, I-VPLS, B-VPLS, or E-Tree VPLS
Proxy-ARP and proxy-ND
BGP Multi homing
IGMP, MLD, and PIM snooping
The command service>vpls>bgp-evpn>ip-route-advertisement is not supported on R-VPLS services with two BGP instances.