概要

ベストパスとなったBGPルートがルーティングテーブルに登録されていないと、RIB Failureの状態になります。BGPルートのRIB Failureについて解説します。

BGPルート RIB Failureとは

BGPルートのRIB Failure状態とは、ベストパスになったBGPルートがルーティングテーブルに登録されていないことを表しています。RIB(Routing Information Base)とは、ルーティングテーブルのことです。

RIB Failureになる、すなわち、ベストパスとなったBGPルートがルーティングテーブルに登録されない主な原因は、BGPルートよりも他のルーティングプロセスのルートが優先されていることです。

Notice

RIB Failureになる他の原因として、以下の場合もあります。

  • ルータのメモリが不足していて、BGPルートをルーティングテーブルに登録できない場合
  • VRFの最大プレフィクス数の制限を超えてしまっている場合

RIB Failureになる例

以下の図は、BGPルートがRIB Failure状態になってしまう簡単な例です。

図 RIB Failureになる原因
図 RIB Failureになる原因

R2からOSPFルートとして192.168.1.0/24のルート情報をR1へアドバタイズしています。同時に、R2からIBGPルートとして192.168.1.0/24のルート情報をR1へアドバタイズしています。

R1は、192.168.1.0/24のルートをOSPFルートとIBGPルートの両方で学習しています。アドミニストレイティブディスタンスによって、OSPFルートとして192.168.1.0/24のルートは登録されます。OSPFルートのアドミニストレイティブディスタンスは110です。一方、IBGPルートのアドミニストレイティブディスタンスは200だからです。その結果、BGPルートの192.168.1.0/24はRIB Failureの状態になります。

なお、RIB Failureであったとしてもベストパスであることには違いありません。RIB Failure状態のBGPルートも他のBGPネイバーへアドバタイズされます。

RIB Failureの具体例

以下のネットワーク構成で、BGPルートがRIB Failureとなる具体的な例を考えます。

図 RIB Failureの具体例 その1
図 RIB Failureの具体例 その1

R2は、OSPFで192.168.1.0/24をR1へアドバタイズしています。また、IBGPルートとして192.168.1.0/24をR1へアドバタイズしています。

設定の抜粋

各ルータの設定の抜粋は以下の通りです。

R1 設定抜粋(Click)

hostname R1
!
interface Loopback0
 ip address 192.168.0.1 255.255.255.255
!
interface FastEthernet0/0
 ip address 192.168.12.1 255.255.255.0
!
interface FastEthernet0/1
 ip address 172.16.13.1 255.255.255.0
!
router ospf 1
 router-id 1.1.1.1
 log-adjacency-changes
 network 192.168.0.0 0.0.255.255 area 0
!
router bgp 65012
 no synchronization
 bgp router-id 1.1.1.1
 bgp log-neighbor-changes
 neighbor 172.16.13.3 remote-as 65003
 neighbor 192.168.0.2 remote-as 65012
 neighbor 192.168.0.2 update-source Loopback0
 neighbor 192.168.0.2 next-hop-self
 no auto-summary

R2 設定抜粋(Click)

hostname R2
!
interface Loopback0
 ip address 192.168.0.2 255.255.255.255
!
interface Loopback1
 ip address 192.168.1.2 255.255.255.0
 ip ospf network point-to-point
!
interface FastEthernet0/0
 ip address 192.168.12.2 255.255.255.0
!
router ospf 1
 router-id 2.2.2.2
 log-adjacency-changes
 network 192.168.0.0 0.0.255.255 area 0
!
router bgp 65012
 no synchronization
 bgp router-id 2.2.2.2
 bgp log-neighbor-changes
 network 192.168.1.0
 neighbor 192.168.0.1 remote-as 65012
 neighbor 192.168.0.1 update-source Loopback0
 no auto-summary

R3 設定抜粋(Click)

hostname R3
!
interface FastEthernet0/0
 ip address 172.16.13.3 255.255.255.0
!
router bgp 65003
 no synchronization
 bgp router-id 3.3.3.3
 bgp log-neighbor-changes
 neighbor 172.16.13.1 remote-as 65012
 no auto-summary

RIB Failureの確認

192.168.1.0/24のIBGPルートは、RIB Failure状態です。R1でshow ip bgpコマンドを見ると、以下のようになります。また、RIB Failureのルートを確認するためには、show ip bgp rib failureコマンドを利用できます。

R1 RIB Failureの確認

R1#show ip bgp
BGP table version is 3, 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
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
r>i192.168.1.0      192.168.0.2              0    100      0 i
R1#show ip bgp 192.168.1.0
BGP routing table entry for 192.168.1.0/24, version 3
Paths: (1 available, best #1, table Default-IP-Routing-Table, RIB-failure(17))
  Advertised to update-groups:
        2
  Local
    192.168.0.2 (metric 11) from 192.168.0.2 (2.2.2.2)
      Origin IGP, metric 0, localpref 100, valid, internal, best
R1#show ip bgp rib-failure
Network            Next Hop                      RIB-failure   RIB-NH Matches
192.168.1.0        192.168.0.2         Higher admin distance              n/a

192.168.1.0/24のIBGPルートがRIB Failureとなっているのは、OSPFルートが優先されているからです。ルーティングテーブルには、OSPFルートとして192.168.1.0/24が登録されています。

OSPFルートが優先

R1#show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

C    192.168.12.0/24 is directly connected, FastEthernet0/0
     172.16.0.0/24 is subnetted, 1 subnets
C       172.16.13.0 is directly connected, FastEthernet0/1
     192.168.0.0/32 is subnetted, 2 subnets
C       192.168.0.1 is directly connected, Loopback0
O       192.168.0.2 [110/11] via 192.168.12.2, 00:11:03, FastEthernet0/0
O    192.168.1.0/24 [110/11] via 192.168.12.2, 00:11:03, FastEthernet0/0

RIB Failureとなっていても、R1からR3へ192.168.1.0/24をBGPルートとしてアドバタイズしています。

RIB Failureルートのアドバタイズ

R1#show ip bgp neighbors 172.16.13.3 advertised-routes
BGP table version is 3, 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
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
r>i192.168.1.0      192.168.0.2              0    100      0 i

Total number of prefixes 1
R3#show ip bgp
BGP table version is 2, local router ID is 3.3.3.3
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 192.168.1.0      172.16.13.1                            0 65012 i
R3#show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

     172.16.0.0/24 is subnetted, 1 subnets
C       172.16.13.0 is directly connected, FastEthernet0/0
B    192.168.1.0/24 [20/0] via 172.16.13.1, 00:11:07
 図 RIB Failureの具体例 その2
図 RIB Failureの具体例 その2

まとめ

ポイント

  • BGPルートのRIB Failure状態とは、ベストパスになったBGPルートがルーティングテーブルに登録されていないことを表しています。
  • RIB Failureになる主な原因は、アドミニストレイティブディスタンスによって他のルーティングプロセスのルートが優先されてルーティングテーブルに登録されていることです。
  • RIB FailureでもBGPルートは他のネイバーへアドバタイズされています。
  • show ip bgp rib-failureコマンドでRIB Failureの状態になっているBGPルートを確認できます。

BGPの仕組み