内容

はじめに

前提条件

要件

使用するコンポーネント

表記法

背景説明

基本的なネットワークステートメントを使用してアナウンスされるルート

次の手順でトラブルシュートを行います

マスクを含むネットワークステートメントを使用してアナウンスされるルート

次の手順でトラブルシュートを行います

aggregate-address コマンドを使用してアナウンスされるルート

この問題のトラブルシュートを行うには、次の手順を使用します

iBGP が記憶したルートをアナウンスできない場合

次の手順でトラブルシュートを行います

redistribute static でアナウンスされるルート

関連情報

はじめに

このドキュメントでは、ボーダー ゲートウェイ プロトコル（BGP）ルータが BGP ルートをピアにアナウンスしない場合のトラブルシューティング方法について説明します。

前提条件

要件

このドキュメントに関する固有の要件はありません。

使用するコンポーネント

このドキュメントの内容は、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。ただし、このドキュメントに示されている出力は、Cisco IOS® ソフトウェアバージョン 12.2(24)a を実行する Cisco 2500 シリーズ ルータに基づいています。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな（デフォルト）設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。

表記法

ドキュメントの表記法の詳細は、「シスコ テクニカル ティップスの表記法」を参照してください。

背景説明

このドキュメントでは、ボーダー ゲートウェイ プロトコル（BGP）ルータが BGP ルートをピアにアナウンスしない場合のトラブルシュート状況に役立つ体系的なアプローチを提示します。

BGP テーブルにプレフィクスを追加してピアにアナウンスする方法は、次のようにいくつかあります。

- ルータ BGP で基本的な network コマンドを発行します。この方法は、Autonomous System（AS; 自律システム）から BGP ルートを発信するために使用されます。詳細については、「BGP ケーススタディ 1」の network コマンドのセクションを参照してください。

- Interior Gateway Protocol（IGP; 内部ゲートウェイ プロトコル）またはスタティック設定を再配布します。

- 他の内部 BGP（iBGP）または外部 BGP（eBGP）ピアで学習した BGP ルートを伝搬します。

注：BGP ピアから受信した最適パスのみが伝播されます。最適パスの選択に関する情報については、「BGP で最適パスを選択するアルゴリズム」を参照してください。

- aggregate-address コマンドを発行します。詳細については、「BGP でのルート集約について」を参照してください。

基本的なネットワークステートメントを使用してアナウンスされるルート

ルートが基本的なネットワークステートメントでアナウンスされる場合、network コマンドの動作は、auto-summary が有効か無効かによって異なります。auto-summary が有効な場合、ローカルで作られた BGP ネットワーク（networkx.x.x.x）がクラスフル境界にまとめられます（BGP ではデフォルトで auto-summary が有効になっています）。サブネットがルーティング テーブル内に存在し、次の 3 つの条件が満たされる場合、ローカル ルーティング テーブル内にあるそのクラスフル ネットワークのあらゆるサブネット（コンポーネント ルート）が BGP に対して、クラスフル ネットワークを BGP テーブルにインストールするよう促します。

- オート サマリーが有効

- ルーティング テーブル内のネットワークのクラスフル ネットワーク文

- そのネットワーク文のクラスフル マスク

オート サマリーがディセーブルになっている場合、BGP テーブルにローカルで挿入されたルートはクラスフルな境界にまとめられません。

たとえば、次の条件が満たされる場合、BGP は、クラスフル ネットワーク 10.0.0.0 マスク 255.0.0.0 を BGP テーブルに挿入します。

- ルーティング テーブルのサブネットは、10.75.75.0 マスク 255.255.255.0 です。

- router bgp コマンドでネットワーク 10.0.0.0 を設定します。

- オート サマリーがイネーブルになっている。

これらの条件がすべて満たされない場合、BGP がエントリを BGP テーブルにインストールするのは、IP ルーティング テーブル内に完全な一致がある場合だけです。

次の手順でトラブルシュートを行います

R101 で auto-summary が有効になっている場合、ルータはクラスフルネットワーク 172.16.0.0/16 を R102 にアナウンスできません。

ルータがアナウンスできません

1. R101 が 172.16.0.0/16 を R102 にアナウンスするかどうかを確認します。ここに示す出力では、R101 が 172.16.0.0/16 を R102 にアナウンスしないことが確認できます。

R101#show ip bgp neighbors 10.10.10.2 advertised-routes

Total number of prefixes 0

R101#

2. 設定が実行されているかどうかを確認します。この例では、R101 はクラスフル ネットワーク文で設定されることを示しています。オート サマリーは、このシナリオのために使われた Cisco IOS ソフトウェア バージョンではデフォルトでイネーブルになっています。

R101#

show running-config | begin bgp

router bgp 1

network 172.16.0.0

neighbor 10.10.10.2 remote-as 2

[...]

3. ルーティングテーブルに network172.16.0.0/16 のコンポーネントルート（クラスフルルートまたはサブネットルート）があるかどうかを確認します。

R101#show ip route 172.16.0.0 255.255.0.0 longer-prefixes

Codes: L - local, 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, H - NHRP, l - LISP

a - application route

+ - replicated route, % - next hop override, p - overrides from PfR

Gateway of last resort is not set

R101#sh ip route 172.16.0.0 255.255.0.0 longer-prefixes

Codes: L - local, 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, H - NHRP, l - LISP

a - application route

+ - replicated route, % - next hop override, p - overrides from PfR

Gateway of last resort is not set

R101#

4. R101 IP ルーティングテーブルにはコンポーネントルート（クラスフルルートまたはサブネットルート）がないため、ネットワーク 172.16.0.0 は BGP テーブルにインストールされません。network コマンドで設定したプレフィックスを BGP テーブルにインストールするための最低要件は、IP ルーティングテーブルにコンポーネントルートがあることです。そのため、R101 にネットワーク 172.16.0.0/16 のコンポーネントルートがあることを確認します。これは、ルートが IGP または静的設定を介してそれを学習した場合に実行されます。例では、スタティック ルートは null 0 に設定されています。

R101(config)#ip route 172.16.10.0 255.255.255.0 null0 200

5. IP ルーティング テーブルが 172.16.0.0/16 用のコンポーネント ルートを持つとすぐに、BGP はクラスフル ネットワークを BGP テーブルにインストールします。

R101#show ip route 172.16.0.0 255.255.0.0 longer-prefixes

Codes: L - local, 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, H - NHRP, l - LISP

a - application route

+ - replicated route, % - next hop override, p - overrides from PfR

Gateway of last resort is not set

172.16.0.0/24 is subnetted, 1 subnets

S     172.16.10.0 is directly connected, Null0

BGP で変更を有効にし、ネットワーク 172.16.0.0/16 から R102 へのアナウンスを開始するには、BGP ネイバーを消去するか、ピアへのソフトリセットを行う必要があります。この例では、変更を有効にするためのピア 10.10.10.2 へのソフト リセット発信を示します。

R101#clear ip bgp 10.10.10.2 soft out

R101#

6. show ip bgp コマンドは、クラスフル ネットワーク 172.16.0.0/16 が BGP に挿入されたことを示します。

R101#show ip bgp | include 172.16.0.0

*> 172.16.0.0                0.0.0.0            0         32768 i

R101#

7. R101 がルートを R102 にアナウンスすることを確認します。

R101#show ip bgp neighbors 10.10.10.2 advertised-routes | include 172.16.0.0

*> 172.16.0.0          0.0.0.0                  0         32768 i

注：auto-summary を無効にすると、ルーティングテーブル内のルートと完全に一致する場合、BGP はネットワーク 172.16.0.0/16 をインストールします。サブネットルートは存在するものの、ルーティングテーブル内のルート（172.16.0.0/16）と完全に一致しない場合、BGP は BGP テーブルにネットワーク 172.16.0.0/16 をインストールしません。

マスクを含むネットワークステートメントを使用してアナウンスされるルート

メジャー ネット境界（255.0.0.0、255.255.0.0、または 255.255.255.0）に位置するネットワークにはマスクを含める必要はありません。たとえば、network 172.16.0.0 コマンドは、プレフィックス 172.16.0.0/16 を BGP テーブルに送信するのに十分です。ただし、メジャーネット境界に属さないネットワークには、network 172.16.10.0 mask 255.255.255.0 などのマスクを含むネットワークステートメントが必要です。

マスク付きのネットワーク文には、BGP テーブルにインストールされるように、ルーティング テーブル内の正確なルートが必要です。

次の手順でトラブルシュートを行います

R101 は、ネットワーク 172.16.10.0/24 を R102 にアナウンスすることができません。

ネットワーク 172.16.10.0/24 を R102 にアナウンスできません

1. R101 が 172.16.10.0/24 プレフィクスを R102 にアナウンスしたかどうかを確認します。

R101#show ip bgp neighbors 10.10.10.2 advertised-routes

R101#

または

このコマンドを使用して、ルートがアドバタイズされているかどうかを確認できます。

R101#show ip bgp 172.16.10.0/24

R101# BGP routing table entry for 172.16.10.0/24, version 24480684

Bestpath Modifiers: deterministic-med

Paths: (4 available, best #3)

Not advertised to any peer

この出力では、R101 が 192.168.32.0/22 を R102 にアナウンスしていないことが確認できます。

2. 設定が実行されているかどうかを確認します。

R101#show run | begin bgp

router bgp 1

network 172.16.10.0

注：ネットワーク 172.16.10.0/24 を発信する必要があります。このネットワークは クラス B ネットワーク（255.255.0.0）の境界に位置しません。マスク 255.255.255.0 付きのネットワーク文をそれが動作するように設定する必要があります。

3. マスクを含むネットワークステートメントを設定した後、show run コマンドを実行すると、次のような出力が表示されます。

R101#show run | begin bgp

router bgp 1

network 172.16.10.0 mask 255.255.255.0

1. このルートが BGP ルーティング テーブル内にあるかどうかを確認します。

R101#show ip bgp | include 172.16.10.0

R101#

ネットワーク 172.16.10.0/24 は、BGP テーブルには存在しません。

2. IP ルーティング テーブルに正確なルートが存在するかどうかを確認します。表示された出力は、ルーティング テーブルに正確なルートが存在しないことを示します。

R101#show ip route 172.16.10.0 255.255.255.0

% Network not in table

R101#

3. 発信させるルートをどれにするのかを決定します。次に、IGP を修正するか、静的ルートを設定します。

R101(config)#ip route 172.16.10.0 255.255.255.0 null0 200

4. IP ルーティング テーブルをチェックします。

R101#show ip route 172.16.10.0 255.255.255.0 longer-prefixes

[..]

172.16.0.0/24 is subnetted, 1 subnets

S       172.16.10.0 is directly connected, Null0

5. BGP テーブルにルートが存在することを確認します。

R101#show ip bgp | include 172.16.10.0

*> 172.16.10.0/24   0.0.0.0                  0         32768 i

6. BGP で変更を有効にし、ネットワーク 172.16.10.0/24 から R102 へのアナウンスを開始するには、BGP ネイバーを消去するか、ピアへのソフトリセットを行う必要があります。この例は、ピア 10.10.10.2 へのソフト リセット発信を使用します。

R101#clear ip bgp 10.10.10.2 soft out

7. ルートが R102 にアドバタイズされていることを確認します。

R101#show ip bgp  neighbors 10.10.10.2 advertised-routes | include 172.16.10.0

*> 172.16.10.0/24   0.0.0.0                  0         32768 i

aggregate-address コマンドを使用してアナウンスされるルート

BGP では、aggregate-address address mask コマンドを使用して、特定のルートを 1 つのルートに集約できます。集約は、BGP ルーティング テーブル内に存在するルートに適用されます。これは、IP ルーティングテーブルに存在するルートに適用される network コマンドとは対照的です。集約は、BGP ルーティング テーブル内に集約アドレスの特定のルートが少なくとも 1 つ以上存在する場合に実行できます。BGP 集約と関連する属性の詳細については、「BGP でのルート集約について」を参照してください。

この問題のトラブルシュートを行うには、次の手順を使用します

aggregate-address コマンドを使用してアナウンスされるルート

このネットワーク ダイアグラムで、R101 は集約アドレス 192.168.32.0/22 を R102 にアナウンスできません。ネットワーク 192.168.32.0/22 は、次の 3 つのクラス C アドレス レンジを集約します。

- 192.168.33.0/24

- 192.168.35.0/24

- 192.168.35.0/24

1. R101 が 192.168.32.0/22 を R102 にアナウンスしていないことを確認します。

R101#show ip bgp neighbors 10.10.10.2 advertised-routes | include 192.168.32.0

R101#

2. 設定が実行されているかどうかを確認します。

router bgp 1

[..]

aggregate-address 192.168.32.0 255.255.252.0 summary-only

neighbor 10.10.10.2 remote-as 2

R101 は、summary-only 属性を使用して集約アドレスのみを R102 にアナウンスするように設定されています。

3. IP ルーティングテーブルを確認します。

R101#show ip route 192.168.32.0 255.255.252.0 longer-prefixes

[..]

S    192.168.33.0/24 is directly connected, Null0

IP ルーティングテーブルには、集約 192.168.32.0/22 のコンポーネントルートがあります。ただし、集約アドレスをピアにアナウンスするには、コンポーネントルートが IP ルーティングテーブルではなく BGP ルーティングテーブルに存在している必要があります。IP ルーティングテーブルには、集約 192.168.32.0/22 のコンポーネントルートがあります。ただし、集約アドレスをピアにアナウンスするには、コンポーネントルートが IP ルーティングテーブルではなく BGP ルーティングテーブルに存在している必要があります。

4. コンポーネントルートが BGP ルーティングテーブルに存在するかどうかを確認します。

R101#show ip bgp 192.168.32.0 255.255.252.0 longer

R101#

BGP テーブルにコンポーネント ルートが存在しないことが出力に示されるので、論理的な次のステップとして、BGP テーブルにコンポーネント ルートを確実に含める必要があります。

1. この例では、network コマンドを使用して、コンポーネントルート 192.168.33.0 を BGP テーブルにインストールしています。

R101(config)#router bgp 1

R101(config-router)# network 192.168.33.0

2. コンポーネント ルートが BGP テーブル内に存在するかどうかを確認します。

R101#show ip bgp 192.168.32.0 255.255.252.0 longer-prefixes

BGP table version is 8, local router ID is 10.10.20.1

Status codes: s suppressed, d damped, h history, * valid, > best, i - internal

Origin codes: i - IGP, e - EGP, ? - incomplete

Network          Next Hop            Metric LocPrf Weight Path

*> 192.168.32.0/22  0.0.0.0                            32768 i

s> 192.168.33.0     0.0.0.0                  0         32768 i

R101#

s は、summary-only 引数が原因でコンポーネントルートが抑制されることを意味します。

3. 集約が R102 にアナウンスされることを確認します。

R101#show ip bgp n 10.10.10.2 advertised-routes | include 192.168.32.0/22

*> 192.168.32.0/22  0.0.0.0

iBGP が記憶したルートをアナウンスできない場合

同期が有効になっている BGP ルータは、iBGP で学習したルートをその IGP で検証できない場合、それらのルートを他の eBGP ピアにアドバタイズしません。IGP には iBGP で学習したルートへのルートがあり、ルータは iBGP ルートを eBGP ピアにアナウンスします。それ以外の場合、ルータはそのルートを IGP と同期していないものとして扱い、アドバタイズしません。 BGP が IGP で iBGP ルート検証を行わないようにするには、ルータ BGP で no synchronization コマンドを使用して同期を無効にします。詳細は、『BGP ケース スタディ』の「同期」セクションを参照してください。

次の手順でトラブルシュートを行います

次の図では、R101 は iBGP を介して R103 からプレフィックス 10.130.130.0/24 を学習しており、それを eBGP ピア R102 にアナウンスできません。

R101 は eBGP ピア R102 にアナウンスできません。

1. まず、R101 をチェックします。

R101#show ip bgp neighbors 10.10.20.2 advertised-routes | include 10.130.130.0

R101#

この出力は、R101 がプレフィックス 10.254.255.255/24 を R102 にアナウンスしていないことを確認しています。

R101 にある BGP テーブルを確認します。

R101#show ip bgp 10.130.130.0 255.255.255.0 longer

BGP table version is 4, local router ID is 10.10.20.1

Status codes: s suppressed, d damped, h history, * valid, > best, i - internal

Origin codes: i - IGP, e - EGP, ? - incomplete

Network          Next Hop            Metric LocPrf Weight Path

* i10.130.130.0/24 10.10.20.3               0    100      0 i

R101#

ネットワーク 10.130.130.0/24 は、BGP テーブル内に存在します。しかしネットワーク 10.130.130.0/24 には、最適ルートのステータスコード（>）がありません。これは、BGP で最適パスを選択するアルゴリズムがこのプレフィクスを最適なパスとして選択しなかったことを意味します。ベストパスのみが BGP ピアにアナウンスされるため、ネットワーク 10.130.130.0/24 は R102 にアナウンスされません。次に、BGP パス選択基準がこのネットワークを最適なルートとして選択しなかった理由をトラブルシューティングする必要があります。

1. show ip bgp prefix コマンドの出力を検討して、プレフィクスが最適なルートとして選択されず、また IP ルーティング テーブルにもインストールされなかったことの詳細を探ります。

R101#show ip bgp 10.130.130.0

BGP routing table entry for 10.130.130.0/24, version 4

Paths: (1 available, no best path)

Not advertised to any peer

Local

10.10.20.3 from 10.10.20.3 (10.130.130.3)

Origin IGP, metric 0, localpref 100, valid, internal, not synchronized

出力は、プレフィックス 10.130.130.0/24 が同期されていないことを示しています。

注:Cisco Bug ID CSCdr90728（BGPパスが非同期としてマークされていない）が特定される前は、show ip bgp prefixコマンドではパスが非同期としてマークされて表示されていませんでした。この問題は、Cisco IOS ソフトウェア リリース 12.1(4) 以降では修正されています。

2. BGP 設定が実行されているかどうかを確認します。

この出力は、BGP 同期が有効になっていることを示しています。Cisco IOS ソフトウェアでは、デフォルトで BGP 同期がイネーブルになっています。

R101#show ip protocols

Routing Protocol is "bgp 1"

Outgoing update filter list for all interfaces is not set

Incoming update filter list for all interfaces is not set

IGP synchronization is enabled

Automatic route summarization is disabled

Neighbor(s):

Address          FiltIn FiltOut DistIn DistOut Weight RouteMap

10.10.10.2

10.10.20.3

Maximum path: 1

Routing for Networks:

Routing Information Sources:

Gateway         Distance      Last Update

10.10.20.3           200      01:48:24

Distance: external 20 internal 200 local 200

3. BGP の同期を無効にします。ルータ BGP で no synchronization コマンドを発行します。

R101(config)#router bgp 1

R101(config-router)# no synchronization

R101# show ip protocols

Routing Protocol is "bgp 1"

Outgoing update filter list for all interfaces is not set

Incoming update filter list for all interfaces is not set

IGP synchronization is disabled

Automatic route summarization is disabled

Neighbor(s):

Address          FiltIn FiltOut DistIn DistOut Weight RouteMap

10.10.10.2

10.10.20.3

Maximum path: 1

Routing for Networks:

Routing Information Sources:

Gateway         Distance      Last Update

10.10.20.3           200      01:49:24

Distance: external 20 internal 200 local 200

60 秒ごとに BGP テーブルをスキャンし、BGP パスの選択基準に基づいて決定を行う BGP スキャナの次回の実行時に、ネットワーク 10.130.130.0 がインストールされます（同期が無効になっているため）。つまり、ルートのインストールにかかる最長時間は 60 秒ですが、no synchronization コマンドがいつ設定されたか、および BGP スキャナの次のインスタンスがいつ発生するかによって、これよりも短くなる可能性があります。そのため、次の検証ステップまで 60 秒待つことをお勧めします。

1. ルートがインストールされていることを確認します。

次の出力では、プレフィックス 10.130.130.0/24 は最適なルートであることが確認されたため、IP ルーティングテーブルにインストールされ、ピア 10.10.10.2 に伝播されます。

R101#show ip bgp 10.130.130.0

BGP routing table entry for 10.254.255.255/24, version 5

Paths: (1 available, best #1, table Default-IP-Routing-Table)

Advertised to non peer-group peers:

10.10.10.2

Local

10.10.20.3 from 10.10.20.3 (10.130.130.3)

Origin IGP, metric 0, localpref 100, valid, internal, best

R101#show ip bgp neighbors 10.10.10.2 advertised-routes | include 10.130.130.0/24

*>i10.130.130.0/24          10.10.20.3             0    100      0 i

redistribute static でアナウンスされるルート

ルータが 2 つのリンクで接続されており、ルートが BGP とフローティング スタティック ルート経由で学習されている場合、フローティング スタティック ルートがルーティング テーブルにインストールされます。これは、BGP ルートに障害が発生して、スタティック ルートが再配布された場合に発生します。BGP ルートがオンラインに戻る場合、ルーティング テーブル内のフローティング スタティック ルートは BGP ルートを反映して変更されることがありません。

この問題は、BGP プロセスで redistribute static コマンドを削除して、BGP ルート経由のフローティング スタティック ルートのプライオリティ設定を回避した場合に解決できます。

関連情報

- BGP ネイバーがアイドル状態、接続状態、アクティブ状態間でトグルする理由

- "#%BGP-3-INSUFCHUNKS: Insufficient chunk pools for aspath" エラーメッセージの意味

- BGP：FAQ

- BGP のトラブルシューティング

- ルーティング BGP サポートページ

- サポートとダウンロード