Why BGP require route in IGP table before installing in BGP table

Unanswered Question
Jul 11th, 2010
User Badges:

Hi All

Can any one help me understand why BGP require route to be learned via IGP first then only that route will be installed in BGP

table.I am not able to find any specific reason for that. Moreover does it make any diffrence for BGP if that route is also learned via

Static route

Thanks a Ton

Hemant Kumar

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 0 (0 ratings)
saurabh joshi Sun, 07/11/2010 - 03:21
User Badges:

Hi Hemant,

Please understand this rule applies when bgp advertise subnets/prefixes using network commands.

for e.g if i use network mask

the rule says i must have must learned from IGP in order to advertise it further using BGP.

Now obvious question comes.WHY?

To answer this is BGP/IGP synchronization usually disabled.

If say BGP advertises the routes to some other AS which are not in the their own IGP means those routes doesnt even exists and tht spreads false information.

In order to avoid such situation this is required.

Again Static is an IGP so it doesnt make any difference. even you can use you directly connected subents.


Saurabh Joshi

hemant.kmr22 Sun, 07/11/2010 - 04:59
User Badges:

Hi Saurabh

Got your point , but does that means any ISP router being used for Internet must be having all the routes of Internet in

BGP as well as IGP for BGP to reach any destination (We all know the internet routing table have now reached 13000 routes)

Another question I have got is that I am facing RIB Failure in my routing table , now BGP FAQ says that route showing rib failure

must have been learnt by some other IGP (most probably static) that is causing this problem. My question is that all BGP require

is an IGP route either static or dynamic for advertising that route further so why showing RIB failure

Please correct me if I am wrong

Thanks a Ton

Hemant Kumar

saurabh joshi Sun, 07/11/2010 - 07:16
User Badges:

Hi Hemant,

Please note that Total Internet routes are more than 300000 now and definately they all are running with synchronization disabled and this rules applies to only routes learnt from IBGP .

A BGP router with synchronization enabled will not advertise iBGP-learned routes to other eBGP peers if it is not able to validate those routes in its IGP. Assuming that IGP has a route to iBGP-learned routes, the router will announce the iBGP routes to eBGP peers. Otherwise the router treats the route as not being synchronized with IGP and does not advertise it. Disabling synchronization using the no synchronization command under router BGP prevents BGP from validating iBGP routes in IGP.

To answer your another question

Yes if you have route in the RIB for the same destination with lower AD the route will give you RIB failure.

In your case Static give AD 1 so definately you will see RIB failure.

Let me know if this answers your query.


Saurabh Joshi

hemant.kmr22 Sun, 07/11/2010 - 09:53
User Badges:

Hi Saurabh

Got your point for IGP requirement

Going further for Rib failure : Why BGP is flashing RIB Failure , all BGP require is IGP route either Static or dynamic so why

giving error ?

An example or any link or any doc would be much appreciated

Thanks a Ton

Hemant Kumar

Chetan Kumar Ress Sun, 07/11/2010 - 11:47
User Badges:
  • Silver, 250 points or more

Hi Hemant

What does r RIB-Failure mean in the show ip bgp command output?

R1> show ip bgp
BGP table version is 5, local router ID is
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
r>               0    130      0 30 i
*>               0    125      0 30 i

A. When BGP tries to install the bestpath prefix into Routing Information Base (RIB) (for example, the IP Routing table), RIB might reject the BGP route due to any of these reasons:

  • Route with better administrative distance already present in IGP. For example, if a static route already exists in IP Routing table.

  • Memory failure.

  • The number of routes in VPN routing/forwarding (VRF) exceeds the route-limit configured under the VRF instance.

In such cases, the prefixes that are rejected for these reasons are identified by r RIB Failure in the show ip bgp command output and are not advertised to the peers. This feature was first made available in Cisco IOS Software Release 12.2(08.05)T.


Chetan Kumar

kumar.sameer85 Sun, 07/11/2010 - 21:34
User Badges:

Hi Saurabh

I am unable to understand that BGP considers update sent by it's own neighbor to be false , why so ?

Why is need of IGP for making a route to be correct ?

Can you provide some example or link

Thanks a lot



This Discussion