cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
3589
Views
10
Helpful
13
Replies

RIB failure in bgp

interfacedy
Spotlight
Spotlight

Hi Three routers are connected like this diagram: R1----R2----R3

R2 and R3 are ibgp neighbor. R2 received route 10.1.2.0 from R3 as below. Can we say "r" means the route can be send to ebgp R1 and cannot be sent to R4( R4 is ibgp with R2 and it is not in the diagram)? but someone says "r" is RIB -failure. or its same thing. do you agree? 

R2:

sh ip bgp
r>i 10.1.2.0/24 10.1.2.2 0 100 0 i

 

 

5 Accepted Solutions

Accepted Solutions

marce1000
Hall of Fame
Hall of Fame

 

 - The "r" in the output of the

show ip bgp

command on R2 indicates that the route 10.1.2.0/24 was learned via an iBGP session with R3. The "i" at the end of the line indicates that the route is an internal route, which means it is not intended to be advertised to external BGP (eBGP) peers.

Regarding the statement "r" means the route can be send to ebgp R1 and cannot be sent to R4, it is not accurate. The route learned via iBGP session with R3 can only be advertised to other iBGP peers of R2, but not to eBGP peers such as R1.

Regarding the statement "r" is RIB-failure, it is not the same thing. RIB-failure means the route is not installed in the RIB (Routing Information Base) due to some error or issue. In this case, since the route is showing up in the output of

show ip bgp

it means the route is installed in the RIB and can be used for routing.

 M.



-- Each morning when I wake up and look into the mirror I always say ' Why am I so brilliant ? '
    When the mirror will then always repond to me with ' The only thing that exceeds your brilliance is your beauty! '

View solution in original post

if you run routing protocol between two Peer, the iBGP will learn the prefix from it iBGP neighbor and it routing protocol peers, 
here the iBGP will not add prefix to RIB as (B) because it already learn it from routing protocol with lower AD !! Yes lower AD, the iBGP have AD = 200 and it highest than any routing protocol so always the iBGP router prefer the routing protocol over prefix learn from iBGP neighbor. 

View solution in original post

Hello,

 

In  addition to what @marce1000 said the r is RIB failure- this could indicate a problem but is not always the case. RIB failure means it did not install in the RIB. Keep in mind basic routing rules. The best paths are installed in the RIB and if a route is learned by several protocols then the lowest AD wins. So if you have another routing protocol like OSPF/EIGRP or even static routes it will choose to install those in the RIB and leave out iBGPs contribution. So it could mean it did not install the route learned from BGP in the RIB because it had a better metric.

To prove this you can do a

show ip route

and if that network is in the routing table it learned it from somewhere else besides BGP and it will tell you how it was learned.

Also the "i" stand for iBGP learned route. No letter next to it will usually mean it was an external eBGP route. See below:

The "r" RIB failure was because I had OSPF running and it learned the 4.4.4.4 route. Its AD is 110 while iBGP AD is 200. Below that I used eBGP and since its AD is 20 it installed the 4.4.4.4 route as a BGP route and the RIB failure went away.

R1(config-router)#do sh ip bgp 
BGP table version is 5, local router ID is 1.1.1.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
t secondary path,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

Network Next Hop Metric LocPrf Weight Path
r>i 4.4.4.4/32 4.4.4.4 0 100 0 i


After using eBGP:

Network Next Hop Metric LocPrf Weight Path
*> 4.4.4.4/32 4.4.4.4 0 0 200 i

 

Hope that helps

 

-David

View solution in original post

Hi @marce1000 ,

> The "i" at the end of the line indicates that the route is an internal route, which means it is

> not intended to be advertised to external BGP (eBGP) peers.

The "i"  does indeed mean that the route was learnt via iBGP, but this does not mean that the route is not intended to be advertised to eBGP peers. In fact, by default the route will be advertised to eBGP peers, but not to iBGP peers. The configuration of a route reflector would be required for an iBGP learnt route to be advertised to another iBGP peer.

Regards,

Regards,
Harold Ritter, CCIE #4168 (EI, SP)

View solution in original post

Hello
A BGP rib failure basically means there is a specific prefix in the rtrs  bgp loc-rib table ( sh ip bgp )  However the same prefix with more preferred lower administrative distance is already in the global routing table of the rtr, as such bgp marks its prefix as rib-failure


Please rate and mark as an accepted solution if you have found any of the information provided useful.
This then could assist others on these forums to find a valuable answer and broadens the community’s global network.

Kind Regards
Paul

View solution in original post

13 Replies 13

marce1000
Hall of Fame
Hall of Fame

 

 - The "r" in the output of the

show ip bgp

command on R2 indicates that the route 10.1.2.0/24 was learned via an iBGP session with R3. The "i" at the end of the line indicates that the route is an internal route, which means it is not intended to be advertised to external BGP (eBGP) peers.

Regarding the statement "r" means the route can be send to ebgp R1 and cannot be sent to R4, it is not accurate. The route learned via iBGP session with R3 can only be advertised to other iBGP peers of R2, but not to eBGP peers such as R1.

Regarding the statement "r" is RIB-failure, it is not the same thing. RIB-failure means the route is not installed in the RIB (Routing Information Base) due to some error or issue. In this case, since the route is showing up in the output of

show ip bgp

it means the route is installed in the RIB and can be used for routing.

 M.



-- Each morning when I wake up and look into the mirror I always say ' Why am I so brilliant ? '
    When the mirror will then always repond to me with ' The only thing that exceeds your brilliance is your beauty! '

Hi @marce1000 ,

> The "i" at the end of the line indicates that the route is an internal route, which means it is

> not intended to be advertised to external BGP (eBGP) peers.

The "i"  does indeed mean that the route was learnt via iBGP, but this does not mean that the route is not intended to be advertised to eBGP peers. In fact, by default the route will be advertised to eBGP peers, but not to iBGP peers. The configuration of a route reflector would be required for an iBGP learnt route to be advertised to another iBGP peer.

Regards,

Regards,
Harold Ritter, CCIE #4168 (EI, SP)

if you run routing protocol between two Peer, the iBGP will learn the prefix from it iBGP neighbor and it routing protocol peers, 
here the iBGP will not add prefix to RIB as (B) because it already learn it from routing protocol with lower AD !! Yes lower AD, the iBGP have AD = 200 and it highest than any routing protocol so always the iBGP router prefer the routing protocol over prefix learn from iBGP neighbor. 

You solve this by change the iBGP AD to be lower than Routing protocol, BUT in real network I dont recommend it.

Hello,

 

In  addition to what @marce1000 said the r is RIB failure- this could indicate a problem but is not always the case. RIB failure means it did not install in the RIB. Keep in mind basic routing rules. The best paths are installed in the RIB and if a route is learned by several protocols then the lowest AD wins. So if you have another routing protocol like OSPF/EIGRP or even static routes it will choose to install those in the RIB and leave out iBGPs contribution. So it could mean it did not install the route learned from BGP in the RIB because it had a better metric.

To prove this you can do a

show ip route

and if that network is in the routing table it learned it from somewhere else besides BGP and it will tell you how it was learned.

Also the "i" stand for iBGP learned route. No letter next to it will usually mean it was an external eBGP route. See below:

The "r" RIB failure was because I had OSPF running and it learned the 4.4.4.4 route. Its AD is 110 while iBGP AD is 200. Below that I used eBGP and since its AD is 20 it installed the 4.4.4.4 route as a BGP route and the RIB failure went away.

R1(config-router)#do sh ip bgp 
BGP table version is 5, local router ID is 1.1.1.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
t secondary path,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

Network Next Hop Metric LocPrf Weight Path
r>i 4.4.4.4/32 4.4.4.4 0 100 0 i


After using eBGP:

Network Next Hop Metric LocPrf Weight Path
*> 4.4.4.4/32 4.4.4.4 0 0 200 i

 

Hope that helps

 

-David

interfacedy
Spotlight
Spotlight

Hi Thank you all for your reply!  the " i " at the end mean the route originates from IGP

This post question is about " r ". now i am clear about it. it means the router has at least two route 10.1.2.0, one is from ibgp and other is from igp ( it could be static, ospf, eigrp). these igp has lower AD value than ibgp. so route 10.1.2.0 from ibgp cannot get into routing table. that is why we can see "r " in

show ip bgp

You are totally correct, iBGP have AD=200 other have lower, so RIB refuse add route learn from iBGP into RIB.

You are totally correct, iBGP have AD=200 other has lower, so RIB refuse add route learn from iBGP into RIB.

Hello,

Your statement is incorrect saying that the "i" is a route learned from an IGP. In the BGP table there are 2 places you will see an "i".  If its at the beginning of the route it means that it was learned from an INTERNAL BGP neighbor (as shown in my example above highlighted in orange) meaning it has the same AS number - it was not learned from another IGP. The other place an "i" would be is at the end to indicate how the route was originated (by the network command).

The example I provided above in my first response shows both an iBGP and an eBGP neighborship. The eBGP neighborship does not have a RIB failure because it can actually install the route in the RIB without issues as its the lowest AD. The iBGP learned route does have the r and the i because it was learned from another iBGP neighbor and it cannot install it into the RIB because of the higher AD.

Also keep in mind that the routing table learning the same route is not the ONLY way to have a RIB failure, you could also have a real problem and the BGP process is trying to indicate that to you.

 

Please reference the below article from CISCOPress to help you understand the BGP table and its components:

 

https://www.ciscopress.com/articles/article.asp?p=1565538&seqNum=7

 

 

-David

you edit your comment I sure I see disagree, or I am wrong ?  

anyway

Hi Thank you all for your reply!  the " i " at the end mean the route originates from IGP <<- no i in end meaning internal not IGP

This post question is about " r ". now i am clear about it. it means the router has at least two route 10.1.2.0, one is from ibgp and other is from igp ( it could be static, ospf, eigrp). these igp has lower AD value than ibgp. so route 10.1.2.0 from ibgp cannot get into routing table. that is why we can see "r " in

show ip bgp

 

You are totally correct, iBGP have AD=200 other have lower, so RIB refuse add route learn from iBGP into RIB.

Screenshot (230).pngScreenshot (231).png

this small lab, 
see "r" in first

show bgp

 
after I change the AD to be 100 (lower than 110 of ospf) the "r" is remove and route inject to RIB. 

I dont recommend it, but I show you example of what you face 

Hello
A BGP rib failure basically means there is a specific prefix in the rtrs  bgp loc-rib table ( sh ip bgp )  However the same prefix with more preferred lower administrative distance is already in the global routing table of the rtr, as such bgp marks its prefix as rib-failure


Please rate and mark as an accepted solution if you have found any of the information provided useful.
This then could assist others on these forums to find a valuable answer and broadens the community’s global network.

Kind Regards
Paul

interfacedy
Spotlight
Spotlight

Thank you all for discussion!