BGP routes not getting advertised

Unanswered Question
Jan 4th, 2010
User Badges:

Hi,

We have three routers connected by serial link back to back. Router_A-->Router_B--->Router_C.


Each router has fastethernet enabled. All routers are in same AS. We have BGP relationship established between Router_A and Router_B

and Router_B and Router_C. Ethernet subnet is published by using network command in all routers. Problem is Router_C is not learning Router_A subnets. Similarly Router_A is not learning Router_C subnets.


I checked on Router_B it is learning routes from both Router_A and also from Router_B.

When I checked advertised-subnets to that neighbor on Router_B, it  is not advertising subnets learned from either Router_A or Router_C. Naturally that neighbor will not learn about those subnets.


Do we need to establish neighbor relationship between Router_A and Router_C also ? I have given no sync, no auto-summary and also next-hop-self conmmands. ( there is no external AS all routers are in same AS)


What I was expecting is that subnets may be learned and may be due to some reason those may not end up in routing table ( best route ) but even that is also not taking place !!

Please share the experience.

Thanks

Subodh

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 0 (0 ratings)
Loading.
Jerry Ye Mon, 01/04/2010 - 08:42
User Badges:
  • Cisco Employee,

Since you are doing iBGP between Router_A, Router_B, and Router_C, you have two (2) choices to get the routes advertise between Router_A and Router_C


1) Form a iBGP peer session between Router_A and Router_C

2) Make Router_B a router-reflector (Router_A and Router_C will be route-reflector-client)


In iBGP, you need to have full mess peering relationship between all the routers, or you have to use route-reflector.


HTH,

jerry

Giuseppe Larosa Mon, 01/04/2010 - 09:25
User Badges:
  • Super Silver, 17500 points or more
  • Hall of Fame,

    Founding Member

Hello Subdoh,

as Jerry has noted you are  facing the well known iBGP split horizon rule: a router is not allowed to send to a third iBGP neighbor what one of its iBGP neighbors has sent to it.


This is a safety measure because the AS path attribute is left unchanged within a single AS domain and so there is a lack of information on where a BGP advertisement has been reflected.


So a full mesh of iBGP neighbors would be required.


iBGP is widely used because some changes have been introduced to allow for scalability:


BGP route reflector servers ( use additional BGP attributes Originator-id and cluster-list can reflect advertisements of clients)


and / OR

BGP confederations (introduces mini ASes that use a separate AS path BGP attribute to track history of BGP advertisement they act as a single AS to outer world where only standard AS path attribute is sent)


in a small lab you could add an iBGP session between RA and RC but making RB a route-reflector server is a better solution


RB


router bgp xx

neigh RA route-reflector-client

neigh RB route-reflector-client



Hope to help

Giuseppe

sameer.mulgund Mon, 01/04/2010 - 22:14
User Badges:

Hi All,


Can we enable next-hop-self on router_A and router_B so that reachability will happen to get the routes?


Regards

Sameer

Marwan ALshawi Mon, 01/04/2010 - 23:01
User Badges:
  • Purple, 4500 points or more
  • Community Spotlight Award,

    Best Publication, December 2015

hi

just follow this config example:


10.1.1.0/24--RA---10.2.2.0/24--RB--20.2.2.0/24--RC--20.1.1.0/24


router A:


router bgp 100

network 10.1.1.0 mask 255.255.255.0

neighbor 10.1.1.x remote-as 100    ----- router B address


Router B:

network 10.2.2.0 mask 255.255.255.0

network 20.2.2.0 mask 255.255.255.0

neighbor 10.1.1.x remote-as 100      -- router A address

neighbor 10.1.1.x route-reflector-client


neighbor 20.2.2.x remote-as 100      -- router C address

neighbor 20.2.2.x route-reflector-client



router C:

router bgp 100

network 20.1.1.0 mask 255.255.255.0

neighbor 20.2.2.x remote-as 100    ----- router B address


this wil work


you also can ue next hop self from RB to RA and RC

in this case you don't need to advertise the networks between B--C and B--A in trouter B


good luck

if helpful Rate

Giuseppe Larosa Tue, 01/05/2010 - 02:05
User Badges:
  • Super Silver, 17500 points or more
  • Hall of Fame,

    Founding Member

Hello Sameer,

you cannot solve this problem using next-hop-self it is NOT a question of BGP next-hop reachability it is a question of how iBGP works as explained in first two posts of this thread.


simply RB cannot propagate to RC what it learns from RA this is the iBGP split horizon rule.


Hope to help

Giuseppe

mledet Tue, 01/05/2010 - 07:22
User Badges:

You'll need to form neighbor relationships between all of your routers. 


i.e.

A -> B

A -> C

B -> C


iBGP doesn't pass on routes learned via iBGP.

Actions

This Discussion