In Junos, a BGP Route Reflector can reflect vpnv4 routes successfully even if it doesn't have MPLS reachability to the PEs. Simply with this command:
set routing-options rib inet.3 routing-options static route 0/0 discard
This installs a default route in the BGP next-hop resolution auxiliary RIB and it does the trick.
I am looking for a way to do the same in IOS-XR. Can a vpnv4 RR reflect routes even if it doesn't have MPLS reachability to the PEs?
An RR just reflects the route but does do next hop verification, it just reflects those routes.
The next hop doesnt need to be reachable on the RR technically, but due to the next hop validation rule, the nexthop needs to have a route.
The BGP routes don't necessarily need to be in the RIB (or routing table), as long as the BGP paths are "valid" in teh bgp table, they will be reflected to the clients. As long as it is not inline of coruse (that is in the forwarding path of the PE to PE etc).
Also, just an fyi, if you want to use RPL to modify the paths, then you need a special CLI to enforce ibgp policy modifications. This because generally speaking an RR is not supposed to modify routes in iBGP obviously.