I do think 7.3beta40 solved the issue with BGP signaling of VPLS connections. But I think there are still some cross platform issues. We are trying to run VPLS between Mikrotik and Juniper. The Lab device running 7.3beta40 will now connect to other Mikrotik PE’s, but not to a Juniper PE. All Mikrotik PE’s get full mesh VPLS interfaces, and the Juniper PE shows a connection to all of the Mikrotik PE’s, but the ROSv7 PE doesn’t show a connection to the Juniper PE. The ROSv7 PE also doesn’t mark the vpls interfaces as BGP. Perhaps 7.3beta40 is sending BGP signaling, but not correctly making use of BGP signaling? All of the PEs connect through Juniper P1 which is also the route reflector.
Juniper P1
vMX 18.2R1.9
set version 18.2R1.9
set system host-name P1
set system syslog user * any emergency
set system syslog file messages any notice
set system syslog file messages authorization info
set system syslog file interactive-commands interactive-commands any
set interfaces ge-0/0/0 unit 0 family inet address 10.0.0.1/30
set interfaces ge-0/0/0 unit 0 family mpls
set interfaces ge-0/0/1 unit 0 family inet address 10.0.0.5/30
set interfaces ge-0/0/1 unit 0 family mpls
set interfaces ge-0/0/2 unit 0 family inet address 10.0.0.9/30
set interfaces ge-0/0/2 unit 0 family mpls
set interfaces ge-0/0/3 unit 0 family inet address 10.0.0.13/30
set interfaces ge-0/0/3 unit 0 family mpls
set interfaces lo0 unit 0 family inet address 10.1.1.5/32
set routing-options router-id 10.1.1.5
set protocols rsvp interface ge-0/0/0.0
set protocols rsvp interface ge-0/0/1.0
set protocols rsvp interface ge-0/0/2.0
set protocols rsvp interface ge-0/0/3.0
set protocols mpls interface ge-0/0/0.0
set protocols mpls interface ge-0/0/1.0
set protocols mpls interface ge-0/0/2.0
set protocols mpls interface ge-0/0/3.0
set protocols bgp traceoptions file bgp-debug
set protocols bgp traceoptions flag open
set protocols bgp local-address 10.1.1.5
set protocols bgp local-as 65500
set protocols bgp group ibgp-route-reflect type internal
set protocols bgp group ibgp-route-reflect family inet unicast
set protocols bgp group ibgp-route-reflect family l2vpn signaling
set protocols bgp group ibgp-route-reflect cluster 1.1.1.1
set protocols bgp group ibgp-route-reflect neighbor 10.1.1.1 peer-as 65500
set protocols bgp group ibgp-route-reflect neighbor 10.1.1.2 peer-as 65500
set protocols bgp group ibgp-route-reflect neighbor 10.1.1.3 peer-as 65500
set protocols bgp group ibgp-route-reflect neighbor 10.1.1.4 peer-as 65500
set protocols ospf traffic-engineering
set protocols ospf area 0.0.0.0 interface ge-0/0/0.0
set protocols ospf area 0.0.0.0 interface ge-0/0/1.0
set protocols ospf area 0.0.0.0 interface ge-0/0/2.0
set protocols ospf area 0.0.0.0 interface ge-0/0/3.0
set protocols ospf area 0.0.0.0 interface lo0.0 passive
set protocols ldp interface ge-0/0/0.0
set protocols ldp interface ge-0/0/1.0
set protocols ldp interface ge-0/0/2.0
set protocols ldp interface ge-0/0/3.0
set protocols ldp interface lo0.0
Juniper PE1
vMX 18.2R1.9
set version 18.2R1.9
set system host-name vMX-PE1
set system syslog user * any emergency
set system syslog file messages any notice
set system syslog file messages authorization info
set system syslog file interactive-commands interactive-commands any
set interfaces ge-0/0/0 unit 0 family inet address 10.0.0.2/30
set interfaces ge-0/0/0 unit 0 family mpls
set interfaces ge-0/0/9 encapsulation ethernet-vpls
set interfaces ge-0/0/9 unit 0 family vpls
set interfaces lo0 unit 0 family inet address 10.1.1.1/32
set routing-options router-id 10.1.1.1
set protocols rsvp interface ge-0/0/0.0
set protocols mpls label-switched-path pe1-to-pe2 from 10.1.1.1
set protocols mpls label-switched-path pe1-to-pe2 to 10.1.1.2
set protocols mpls label-switched-path pe1-to-pe3 from 10.1.1.1
set protocols mpls label-switched-path pe1-to-pe3 to 10.1.1.3
set protocols mpls label-switched-path pe1-to-pe4 from 10.1.1.1
set protocols mpls label-switched-path pe1-to-pe4 to 10.1.1.4
set protocols mpls interface ge-0/0/0.0
set protocols bgp local-address 10.1.1.1
set protocols bgp local-as 65500
set protocols bgp group ibgp-group type internal
set protocols bgp group ibgp-group family inet unicast
set protocols bgp group ibgp-group family l2vpn signaling
set protocols bgp group ibgp-group neighbor 10.1.1.5 peer-as 65500
set protocols ospf traffic-engineering
set protocols ospf area 0.0.0.0 interface ge-0/0/0.0
set protocols ospf area 0.0.0.0 interface lo0.0
set protocols ldp interface ge-0/0/0.0
set protocols ldp interface lo0.0
set routing-instances vpls-1 instance-type vpls
set routing-instances vpls-1 interface ge-0/0/9.0
set routing-instances vpls-1 route-distinguisher 10.1.1.1:1
set routing-instances vpls-1 vrf-target target:1.1.1.1:1
set routing-instances vpls-1 protocols vpls traceoptions file vpls-debug
set routing-instances vpls-1 protocols vpls traceoptions flag all
set routing-instances vpls-1 protocols vpls control-word
set routing-instances vpls-1 protocols vpls site-range 30
set routing-instances vpls-1 protocols vpls no-tunnel-services
set routing-instances vpls-1 protocols vpls site vpls-1-pe1 site-identifier 17
set routing-instances vpls-1 protocols vpls site vpls-1-pe1 interface ge-0/0/9.0
Mikrotik CHR
ROSv6 PE2
# may/24/2022 21:15:29 by RouterOS 6.48.5
# software id =
#
#
#
/interface bridge
add name=VPLS-BR-1
add name=lo0
/mpls traffic-eng tunnel-path
add name=dynamic
/interface traffic-eng
add disabled=no from-address=10.1.1.2 name=pe2-to-pe1 primary-path=dynamic record-route=yes to-address=10.1.1.1
add disabled=no from-address=10.1.1.2 name=pe2-to-pe3 primary-path=dynamic record-route=yes to-address=10.1.1.3
add disabled=no from-address=10.1.1.2 name=pe2-to-pe4 primary-path=dynamic record-route=yes to-address=10.1.1.4
/routing bgp instance
set default as=65500 router-id=10.1.1.2
/routing ospf instance
set [ find default=yes ] mpls-te-area=backbone mpls-te-router-id=lo0 router-id=10.1.1.2
/interface bridge port
add bridge=VPLS-BR-1 interface=ether4
/interface vpls bgp-vpls
add bridge=VPLS-BR-1 export-route-targets=1.1.1.1:1 import-route-targets=1.1.1.1:1 name=vpls-1 route-distinguisher=10.1.1.2:1 site-id=2
/ip address
add address=10.0.0.6/30 interface=ether1 network=10.0.0.4
add address=10.1.1.2 interface=lo0 network=10.1.1.2
/mpls ldp
set enabled=yes lsr-id=10.1.1.2 transport-address=10.1.1.2
/mpls ldp interface
add interface=lo0
add interface=ether1
/mpls traffic-eng interface
add bandwidth=1Gbps interface=ether1
/routing bgp peer
add address-families=ip,l2vpn name=RR-10.1.1.5 remote-address=10.1.1.5 remote-as=65500 update-source=lo0
/routing ospf interface
add interface=lo0 passive=yes
add interface=ether1
/routing ospf network
add area=backbone network=10.1.1.2/32
add area=backbone network=10.0.0.4/30
/system identity
set name=ROSv6-PE2
Mikrotik CHR
ROSv7-PE4 (Interfaces re-ordered to get ROS and Eve-NG to agree on names)
# may/24/2022 21:50:33 by RouterOS 7.3beta40
# software id =
#
/interface bridge
add name=VPLS-BR-1
add name=lo0
/interface ethernet
set [ find default-name=ether3 ] name=ether1
set [ find default-name=ether1 ] name=ether2
set [ find default-name=ether2 ] name=ether3
/mpls traffic-eng path
add name=dynamic
/port
set 0 name=serial0
/routing ospf instance
add disabled=no mpls-te-address=10.1.1.4 mpls-te-area=0.0.0.0 name=ospf2 router-id=10.1.1.4 routing-table=main
/routing ospf area
add disabled=no instance=ospf2 name=backbone
/interface bridge port
add bridge=VPLS-BR-1 interface=ether4
/interface vpls bgp-vpls
add bridge=VPLS-BR-1 export-route-targets=1.1.1.1:1 import-route-targets=1.1.1.1:1 name=vpls-1 pw-control-word=enabled pw-type=vpls rd=10.1.1.4:1 site-id=20
/ip address
add address=10.1.1.4 interface=lo0 network=10.1.1.4
add address=10.0.0.14/30 interface=ether1 network=10.0.0.12
/mpls ldp
add afi=ip lsr-id=10.1.1.4 transport-addresses=10.1.1.4
/mpls ldp interface
add accept-dynamic-neighbors=yes afi=ip interface=ether1 transport-addresses=10.1.1.4
/mpls traffic-eng interface
add bandwidth=1Gbps interface=ether1
/mpls traffic-eng tunnel
add from-address=10.1.1.4 name=pe4-to-pe1 primary-path=dynamic to-address=10.1.1.1
add from-address=10.1.1.4 name=pe4-to-pe2 primary-path=dynamic to-address=10.1.1.2
add from-address=10.1.1.4 name=pe4-to-pe3 primary-path=dynamic to-address=10.1.1.3
/routing bgp connection
add address-families=ip,l2vpn as=65500 local.address=10.1.1.4 .role=ibgp name=RR-10.1.1.5 remote.address=10.1.1.5 .as=65500 router-id=10.1.1.4
/routing ospf interface-template
add area=backbone disabled=no interfaces=lo0 passive
add area=backbone disabled=no interfaces=ether1
/system identity
set name=ROSv7-PE4
Juniper PE1
VPLS connections:
root@vMX-PE1> show vpls connections
Layer-2 VPN connections:
Legend for connection status (St)
EI -- encapsulation invalid NC -- interface encapsulation not CCC/TCC/VPLS
EM -- encapsulation mismatch WE -- interface and instance encaps not same
VC-Dn -- Virtual circuit down NP -- interface hardware not present
CM -- control-word mismatch -> -- only outbound connection is up
CN -- circuit not provisioned <- -- only inbound connection is up
OR -- out of range Up -- operational
OL -- no outgoing label Dn -- down
LD -- local site signaled down CF -- call admission control failure
RD -- remote site signaled down SC -- local and remote site ID collision
LN -- local site not designated LM -- local site ID not minimum designated
RN -- remote site not designated RM -- remote site ID not minimum designated
XX -- unknown connection status IL -- no incoming label
MM -- MTU mismatch MI -- Mesh-Group ID not available
BK -- Backup connection ST -- Standby connection
PF -- Profile parse failure PB -- Profile busy
RS -- remote site standby SN -- Static Neighbor
LB -- Local site not best-site RB -- Remote site not best-site
VM -- VLAN ID mismatch HS -- Hot-standby Connection
Legend for interface status
Up -- operational
Dn -- down
Instance: vpls-1
Edge protection: Not-Primary
Local site: vpls-1-pe1 (17)
connection-site Type St Time last up # Up trans
2 rmt Up May 24 19:52:52 2022 1
Remote PE: 10.1.1.2, Negotiated control-word: Yes (Null)
Incoming label: 262170, Outgoing label: 39
Local interface: lsi.1048580, Status: Up, Encapsulation: VPLS
Description: Intf - vpls vpls-1 local site 17 remote site 2
Flow Label Transmit: No, Flow Label Receive: No
3 rmt Up May 24 20:38:20 2022 1
Remote PE: 10.1.1.3, Negotiated control-word: Yes (Null)
Incoming label: 262171, Outgoing label: 40
Local interface: lsi.1048581, Status: Up, Encapsulation: VPLS
Description: Intf - vpls vpls-1 local site 17 remote site 3
Flow Label Transmit: No, Flow Label Receive: No
20 rmt Up May 24 20:43:15 2022 1
Remote PE: 10.1.1.4, Negotiated control-word: Yes (Null)
Incoming label: 262156, Outgoing label: 17
Local interface: lsi.1048583, Status: Up, Encapsulation: VPLS
Description: Intf - vpls vpls-1 local site 17 remote site 20
Flow Label Transmit: No, Flow Label Receive: No
ROSv6 PE2
VPLS interfaces
[admin@ROSv6-PE2] > interface vpls print detail
Flags: X - disabled, R - running, D - dynamic, B - bgp-signaled, C - cisco-bgp-signaled
0 RDB name="vpls2" mtu=1500 l2mtu=1500 mac-address=02:B7:52:32:BB:71 arp=enabled arp-timeout=auto disable-running-check=no remote-peer=10.1.1.1
cisco-style=no cisco-style-id=0 advertised-l2mtu=1500 pw-type=raw-ethernet use-control-word=yes vpls=vpls-1
1 RDB name="vpls3" mtu=1500 l2mtu=1500 mac-address=02:42:34:91:CB:AB arp=enabled arp-timeout=auto disable-running-check=no remote-peer=10.1.1.3
cisco-style=no cisco-style-id=0 advertised-l2mtu=1500 pw-type=raw-ethernet use-control-word=yes vpls=vpls-1
2 RDB name="vpls5" mtu=1500 l2mtu=1500 mac-address=02:1D:1F:FC:E2:11 arp=enabled arp-timeout=auto disable-running-check=no remote-peer=10.1.1.4
cisco-style=no cisco-style-id=0 advertised-l2mtu=1500 pw-type=raw-ethernet use-control-word=yes vpls=vpls-1
ROSv7 PE4
VPLS interfaces
[admin@ROSv7-PE4] > interface/vpls/print detail
Flags: X - disabled, R - running; D - dynamic; B - bgp-signaled, C - cisco-bgp-signaled
0 RD name="vpls1" mtu=1500 mac-address=02:A4:52:68:94:48 arp-timeout=auto peer=10.1.1.2 pw-type=vpls pw-l2mtu=1500 pw-control-word=enabled
bridge=VPLS-BR-1 bgp-vpls=vpls-1 bgp-vpls-prfx="veId=2,veBlockOffset=16&10.1.1.2:1"
1 RD name="vpls2" mtu=1500 mac-address=02:82:6E:FA:CA:57 arp-timeout=auto peer=10.1.1.3 pw-type=vpls pw-l2mtu=1500 pw-control-word=enabled
bridge=VPLS-BR-1 bgp-vpls=vpls-1 bgp-vpls-prfx="veId=3,veBlockOffset=16&10.1.1.3:1"