MiracleJobLogo
エンジニアのエンジニアによるエンジニアのためのサイト
News 07/19 おすすめ情報に 『 【資格取得者速報】 Aさん 「 Microsoft Security, Compliance, and Identity Fundamentals」 』 を追加しました。
会員登録するとキャリア診断やサイトに参加することができます。
あなたにおすすめな技術情報、資格、仕事などをお知らせします。

無料会員登録


パスワードを忘れた場合
LINEで送る
MiracleJobBanaLeft1
MiracleJobBanaLeft2


BGPのトラブルシューティング【まとめ : BGPルート編】
profile-img
投稿者: s.yamashit...さん
投稿日:2023/05/31 15:33
更新日:2023/06/06 11:40
like-img
分類
技術
テクノロジー
ネットワーク
キャリア
構築 / 設計
投稿内容

BGPのトラブルシューティングのまとめ編の第2弾です。


おさらいですが、BGPでのトラブルですが、大きくカテゴリ別に分けられます。

TCPコネクションによる、BGPネイバーが張れない (=Idle状態)

②BGPネイバーは張れているが、BGPルートをきちんとアドバタイズできない

③BGPのパスアトリビュートの問題で、宛先に到達しない

④IPv6用のBGP (BGP4+)に関するトラブル


今回は②についての投稿です。

前提として、①の条件をクリアしている(=BGPネイバーが張れている)事です。


下記は前回紹介したネイバー間に関するトラブルです。

***********************************************************

BGPのトラブルシューティング【まとめ:ネイバーの確立について】 (miraclejob.com) (5/30)

************************************************************


さて本題に戻ります。

ここで言うBGPルートをきちんとアドバタイズできない状態とは、

コマンド : show bgp ipv4 unicast を使用した所、

アドバタイズして欲しいネットワーク(BGPルート)が記載されていない(以下の1, 3, 5)状態


もしくはBGPルートには記載があるが、ルーティングテーブルにBGPルートが記載されていない状態(以下の4)


またBGPルートにもルーティングテーブルにも記載はあるが、ネクストホップの関連できちんとアドバタイズできない状態(以下の2)。


以上の3点を指しています。

その場合、考えられる理由としては5つあります。

【BGPルートがきちんとアドバタイズできない理由】

1. アドバタイズしたいルートがルーティングテーブルにあるか。

※もしルートがあれば、network maskコマンドなどでアドバタイズしたいルートの設定に間違ってないか (例えば、サブネットがあってるか)

間違っていると、BGPピアにBGPルートがアドバタイズされません


2. next-hopへのIP到達性はあるか

BGPルートとしては有効でも、next-hopに到達できなければ、ルーティングテーブルにそのBGPルートは記載されません。

※この場合、コマンド : show bgp ipv4 unicast で確認すると、

BGPルート自体の記載があります

よくある例として、あるiBGPから別のAS(e-bgp)へ通信した時、next-hopがその別のASになっていることがあります。その際、同ASのe-bgpとの境界点で、next-hop-selfを設定する必要があります。

以下も参考にしてみてください。

==========================================

BGP NEXT_HOPアトリビュート - コンフィグ設定 (infraexpert.com)

===========================================



3.スプリットホライズン機能によってiBGPへアドバタイズされていない

BGPはデフォルトでは、スプリットホライズン機能によりルーティングループを回避しています。

(※ざっくり言うと自分が学習したルートを他のiBGPへ転送しないよって機能です)


この機能により、他のiBGPはアドバタイズして欲しいルートを学習できなくなります。

解決策としては、ルートリフレクタを使用します。


ルートリフレクタ機能により、iBGP間でBGPルートをアドバタイズできるようになります。※フルメッシュ構成にすれば、アドバタイズできなくはないんですが、コンフィグの量も増え、構成が煩雑になるので基本はおすすめできません。

ただし、ルートリフレクタ機能を使うとスプリットホライズン機能は無効になるので、

ルーティングループには注意すること。



4.他のルートプロトコルが優先されていて(=BGPよりAD値が高い)、BGPルートが載らない。

この場合、ルートもアドバタイズできて、疎通も可能なのですが、他のルーティングプロトコルが優先されている(例:スタティックルートなど)ため、結果的にBGPルートには記載されるが、ルーティングテーブルには記載されません。


この場合、コマンド : show bgp ipv4 unicast で確認するとNetworkの左側に"r"と記載されいます。


これが表示される理由として、BGPルータのメモリ障害・VRF関連が考えられます。

またコマンド : show ip bgp rib-failureで、該当ルートが Higher admin distanceと出力されれば、BGPよりAD値の高いルーティングプロトコルが優先されていることが原因です。設計上問題なければ特に気にしなくて良いです。



5.ルートフィルタリングによってBGPルートがアドバタイズされていないか判断する

BGPルータによるルートフィルタリング機能によってBGPルートがアドバタイズされていない可能性はあります。

(ルートフィルタリング : distribute-list, prefix-list, filter-list, route-map)

上記1,3の理由でそもそもBGPルートがアドバタイズできない状態か、

今回のようにBGPルートフィルタリングによってアドバタイズできないかは以下の方法で見分けられます。


(流れ)

・コマンド : show bgp ipv4 unicast neighbor x.x.x.x rooutesで該当ルートを確認

もし該当ルートがなければ、以下を実施する

・コマンド : show bgp ipv4 unicast neighbor x.x.x.x advertised-rooutes

該当ルートが表示された

→表示された場合、ルートフィルタリングが原因の可能性が高いので、

 ルートフィルタリングの設定を見直しましょう


今回の内容は以上になります。




以下は、BGPに関する私の投稿です。

/////BGPのトラブルシューティングまとめ////////////////////

① : BGPのトラブルシューティング【まとめ:ネイバーの確立について】 (miraclejob.com) (5/30)

② : BGPのトラブルシューティング【まとめ : BGPルート編】 (miraclejob.com)(5/31 : 今回)

////////////////////////////////////////////////////////////////////


今回、以下の書籍を参考にしています。Ciscoの公式本です。


===============================

CCNP 300-410 : Amazon | CCNP Enterprise Advanced Routing ENARSI 300-410 Official Cert Guide | Lacoste, Raymond, Edgeworth, Brad | Bridges & Routers

================================


コメント


MiracleJobBanaRight1
MiracleJobBanaRight2
MiracleJobBanaRight3