[j-nsp] BGP Route Reflector
Jesper Skriver
jesper at skriver.dk
Mon Apr 21 16:28:59 EDT 2003
On Mon, Apr 21, 2003 at 05:11:07PM +0800, Tay Chee Yong wrote:
> Hi all,
>
> I have 2 route reflectors (Router A and Router B).
> 2 RR clients (C and D)
>
> Both C and D are the clients of A and B
> A and B are full mesh
>
> Both A and B are using the same cluster id, 1.1.1.1
>
> I then add router E to be client of B only, with some routes filtering.
>
> Strangely, router A is not selecting the better route from B learned from
> E, instead router A is registering the better route from its learned eBGP
> peer.
>
> Why aren't B propagating the better route learned from E to router A?
A router reflector will discard all routes learned with it's own cluster
id, see rfc2796 section 7, which say
CLUSTER_LIST
Cluster-list is a new optional, non-transitive BGP attribute of Type
code 10. It is a sequence of CLUSTER_ID values representing the
reflection path that the route has passed. It is encoded as follows:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Attr. Flags |Attr. Type Code| Length | value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Where Length is the number of octets.
When a RR reflects a route, it must prepend the local CLUSTER_ID to
the CLUSTER_LIST. If the CLUSTER_LIST is empty, it must create a new
one. Using this attribute an RR can identify if the routing
information is looped back to the same cluster due to mis-
configuration. If the local CLUSTER_ID is found in the cluster-list,
the advertisement received should be ignored.
/Jesper
--
Jesper Skriver, jesper(at)skriver(dot)dk - CCIE #5456
One Unix to rule them all, One Resolver to find them,
One IP to bring them all and in the zone to bind them.
More information about the juniper-nsp
mailing list