Yes, I know that MPLS doesn't care about L3 and higher levels and it is one of its features. But I do not really understand its role in L2/L3 VPNs.
L2VPN - we are building xconnects to PE's AC. Why does xconnect need to be configured to be encapsulated in MPLS (
encapsulation mpls command)? Why cannot we just land our xconnect to PE's loopback for example? We have IP connectivity, we land it to PE's loopback, sounds pretty clear but what's the role of MPLS there?
L3VPN - we are sending VPNv4 routes from PE to PE using MPBGP. And same question again: we have IP connectivity between them and iBGP should work fine, why do we need MPLS there?
It's kinda specific questions so I wasn't able to find answers on the Internet. Thanks!