We are having a BGP configuration problem which looks trivial but is not
working the way we expect. I'm going to throw myself on the mercy of
the court and ask for help.
There are three routers A, B and C. These are in ASa, ASb and ASc,
respectively. B imports 10.1.64/19 from A and 10.1/16 from C. What
we were expecting was for B's route to the /19 to be via A, just because
this is the more specific route. However, the only route (both in the
BGP and routing tables on B) is for the entire /16 via C.
I have a hunch that what is happening is that B is saying "gee, I can
get to the entire /16 by going through C, so why bother with A". If I'm
not mistaken, this can be fixed by introducing local_pref for both peers.
Could someone please comment on this?