Tuesday 20 October 2015

BGP RIB-failure

Rib-failure BGP

EXAMPLE

Sometimes when configuring BGP you’ll come across routes that show rib-failure. What exactly does this mean?
Have a look at this output:
R3#sh ip bgp
   Network          Next Hop            Metric LocPrf Weight Path
r> 172.16.220.0/24  172.16.220.1        0             0 3 i
*> 192.68.0.0/16    172.16.220.1        0             0 3 {2,1} i
*> 192.68.10.0      172.16.220.1                      0 3 2 i
172.16.220.0/24 is showing up as r> – but what exactly is going on? There is a command you can use to see what’s happened: show ip bgp rib-failure
R3#sh ip bgp rib-failure
Network            Next Hop                      RIB-failure   RIB-NH Matches
172.16.220.0/24    172.16.220.1        Higher admin distance              n/a
Here it’s telling me that the BGP could not be injected into the routing table as there is already a route with a higher administrative distance there. This is proved with the ip routing table:

R3#sh ip route 172.16.220.0
Routing entry for 172.16.220.0/24
  Known via "connected", distance 0, metric 0 (connected, via interface)
  Routing Descriptor Blocks:
  * directly connected, via FastEthernet0/1
      Route metric is 0, traffic share count is 1

Essentially a RIB-failure is a note letting you know that the route is in BGP, but it has not been injected into the IP routing table even though it is a valid and best route

Note that rib failure prefixes are still advertised to BGP neighbors, in such cases the prefixes tat are rejected for these reason are identified by RIB failure This is not like EIGRP and RIP who will not. You can however prevent BGP from advertising rib-failure routes by configuring bgp suppress-inactive under the BGP process.

conclusion;
reason of RIB_failure could be


  • Route with better AD is present in the IGP
  • Memory failure
  • The number of routs in the VPN routing forwarding (VRF) exceeds the route limit configured under the VRF instance.