The CE routers CE1-3 are preconfigured with EIGRP.
Configure VPLS and verify that the EIGRP neighborships come up.
Use LDP for the signaling of the service label, but do not manually specify neighbors under the VFI.
Use XR1 as the RR for BGP-AD.
Turn the CW off for all dynamically discovered tLDP sessions.
Answer
#XR1
router bgp 65000
add l2vpn vpls
!
neighbor-group IBGP
remote-as 65000
update-source Loopback0
address-family l2vpn vpls-vpws
route-reflector-client
Signalling bgp disable
!
neighbor 1.1.1.1 use neighbor-group IBGP
neighbor 3.3.3.3 use neighbor-group IBGP
neighbor 5.5.5.5 use neighbor-group IBGP
#R1
router bgp 65000
neighbor 11.11.11.11 remote-as 65000
neighbor 11.11.11.11 update-so lo0
add l2vpn vpls
neighbor 11.11.11.11 activate
neighbor 11.11.11.11 prefix-length-size 2
!
int gi4
service instance 1 eth
encap default
exit
!
template type pseudowire NO_CW
encapsulation mpls
control-word exclude
!
l2vpn vfi context VPLS1
vpn id 100
autodiscovery bgp signaling ldp template NO_CW
!
bridge-domain 100
member gi4 service-instance 1
member vfi VPLS1
#R3, R5
router bgp 65000
neighbor 11.11.11.11 remote-as 65000
neighbor 11.11.11.11 update-so lo0
add l2vpn vpls
neighbor 11.11.11.11 activate
neighbor 11.11.11.11 prefix-length-size 2
!
int gi6
service instance 1 eth
encap default
exit
!
template type pseudowire NO_CW
encapsulation mpls
control-word exclude
!
l2vpn vfi context VPLS1
vpn id 100
autodiscovery bgp signaling ldp template NO_CW
!
bridge-domain 100
member gi6 service-instance 1
member vfi VPLS1
Explanation
IOS-XR uses negative logic for the signaling protocol under l2vpn/vpls. To use LDP, you use signaling bgp disable. To use BGP, you use signaling ldp disable.
In this lab, we are using BGP for auto-discovery, and LDP for signaling, therefore we use the following config on the XR RR:
IOS-XE simply uses LDP by default, and uses BGP with disable-signaling-protocol ldp. Therefore we don't need any special command on the IOS-XE RR clients.
However, we must fix an interoperability issue between XE and XR. The XE routers must specify the XR neighbor as prefix-length-size 2. The original implementation of IOS BGP AD only used 1 byte for prefix length, but XR is expecting 2 bytes.