04-12-2011 01:39 PM - edited 03-04-2019 12:03 PM
Hello all, thanks for reading / replying.
I have taken over managing an ISP's Layer 3, and it needs some work to say the least. They are using BGP for both their eBGP (obviously) and IGP. My problem has to do with Route Reflection and our Dual Homeing eBGP peers.
Here is a diagram for reference: http://www.lucidchart.com/documents/view/4da4b2cc-edb4-43e8-a656-0d550ac1d2e5
We have two routers connected to different eBGP peers, both receiving full routes. Both routers have an iBGP session up with each other. The problem is that Router A is a route reflector client of Router B, but the routes received from Router A's eBGP neighbor have a heavier weight than those received from Router B.
Now Router B is bringing up a new eBGP peer, advertising only three subnets both ways. Router B has a heavier weight set on the routes received from the new eBGP peer, and so properly updates it's eBGP routing table to it's provider. However, since Router A prefers the routes of it's eBGP peer to those that were learned from Router B, it does not update it's eBGP routing table, and therefore does not advertise these routes to it's provider.
Last night I tried setting up an statement on Router A: every route learned from Router B that matches these three subnets, place a heavier weight on them than that of it's own eBGP provider.
This caused some issues, when the session was cleared with a soft inbound update, ALL routes from Router B took presidence over it's own eBGP peer; all routes went out Router B. yikes.
Can anyone recommend a method for Router A to prefer these three new subnets from Router B's new peer over it's own eBGP peer?
Here is what I used:
neighbor x.x.251.2 remote-as (LOCAL_AS)
neighbor x.x.251.2 soft-reconfiguration inbound
neighbor x.x.251.2 route-map set.ROUTERB.routes.weightin in
access-list 75 permit x.x.188.0 0.0.0.255 log
access-list 75 permit x.x.184.0 0.0.0.255 log
access-list 75 permit x.x.192.0 0.0.0.255 log
route-map set.ROUTERB.routes.weightin permit 10
match ip address 75
set metric 0
set local-preference 201
set weight 201
!
route-map set.ROUTERB.routes.weightin permit 20
set local-preference 50
set weight 50
Solved! Go to Solution.
04-13-2011 04:11 AM
Hi,
a) Route reflector configuration is irelavant here, as it has an influence only on prefixes received from an iBGP neighbor to be advertised to anothor iBGP neighbor which is not this case,
b) It seems your statement "Router A has a weight of 35000 for all routes received from eBGP peer"
is not working.
If it were,
set weight 201
would not help, as 35000 would still beat it.
So it seems like the deafult weight=0 is applied on the routes coming from the eBGP neighbor.
That explains why
set weight 50
made all prefixes recived from B to be used.
HTH,
Milan
04-13-2011 04:11 AM
Hi,
a) Route reflector configuration is irelavant here, as it has an influence only on prefixes received from an iBGP neighbor to be advertised to anothor iBGP neighbor which is not this case,
b) It seems your statement "Router A has a weight of 35000 for all routes received from eBGP peer"
is not working.
If it were,
set weight 201
would not help, as 35000 would still beat it.
So it seems like the deafult weight=0 is applied on the routes coming from the eBGP neighbor.
That explains why
set weight 50
made all prefixes recived from B to be used.
HTH,
Milan
04-15-2011 04:31 PM
Thanks for the reply
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide