EBGP vs. IBGP decision process "problem"?

From: Michael Whittle (mgwhittle@gmail.com)
Date: Thu May 22 2008 - 03:17:25 ART


Hi all,

I saw something strange the other day and I'm not sure if it's a problem or
expected behavior. My understanding is after a longest match is selected
from the routing table if there are two equal routes from two different
protocols it will select the one with the more preferred AD. Well I saw
something the other day which contracted this with EBGP and IBGP. I've seen
it now in two completely different scenarios using different kit, software
and technologies.
In my lab I have the following setup:

     ___mpbgp____[ MPLS VPN ] ___mpbgp___
    | |
[ PE1 ] [ PE1 ]
    | |
 ebgp ebgp
    | |
[ CE1 ]---ibgp---[RRCE1]-----[RRCE2]---ibgp---[ CE2 ]
    | |
[ LAN1 ] [ LAN2 ]

---
[ LAN1 ] now needs to get to [ LAN2 ] and I want it to use the backend link.
By default I would have expected it to route out via [ PE1 ] because it
would be receiving the route via the EBGP via the MPLS VPN with an AD of 20
and it would be receiving the same route via IBGP from [RRCE1] with an AD of
200. The default behavior without a backdoor link or manually changing the
distance should route the traffic out via EBGP (20) instead of IBGP (200).
The really strange thing is it's selecting the IBGP route over EBGP which is
what I want but from my understanding this shouldn't be happening. I've seen
this happen both on [ CE1 ] and on [ PE1 ]. How is this possible?

I found some info which said that in this scenario the normal BGP bestpath process would be used instead of comparing the AD first. This is the first I've heard of that and would like ot know if it's true? I mean what's the point of the backdoor command or messing around with distance if that's the case in this scenario. I tried changing local pref and the as-path and it seems to be used over AD. Has anyone else seen this before?

Regards, Mike



This archive was generated by hypermail 2.1.4 : Mon Jun 02 2008 - 06:59:18 ART