BGP Constrained Route Distribution is described in RFC 4684 and provides a mechanism for MP-BGP peers to exchange RT information and automatically filter outbound route updates based on this information.Before BGP Constrained Route Distribution, the default behaviour for a MP-BGP session would be to send all VPNv4 routes to the configured peer regardless of the peer's VPN membership.

R3 then starts to advertise this route to R1 and R2 via i BGP.

At this point R1 and R2 does have a route to 192.168.1.0/24 via R3.

At this point R1, PE2, and PE3 do not have a route to 192.168.1.0/24.

R3 now goes through the "BGP Best Path Selection" and figures out that it has another route from CE-2 for the same prefix 192.168.1.0/24 which can now be put into the routing table.

On a Cisco platform then all we need to do is enable an additional address family (SAFI) for each BGP peer by configuring the below commands.

The neighbour IP should be a VPNv4 peer (whether it be the IP of a PE or a RR).

However it requires the administrator to manually define the list of routes.

On initial BGP peer start up (OPEN message) the BGP speakers will exchange capabilities.

However wouldn’t it make more sense to filter the routes on egress?