BGP routes not getting advertised

Unanswered Question
Jan 4th, 2010

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

I have this problem too.
0 votes
  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 0 (0 ratings)
Loading.
Jerry Ye Mon, 01/04/2010 - 08:42

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

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

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

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

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

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