2016-12-07 5 views
0

eBGPスピーカーの簡略版をプログラムしようとしています。インポートポリシーでは、インポートする新しいルートにループがないことを確認したい。私が構築するルーティングテーブルは、このようになります。BGPルーティングでループを見つける方法

10.0.0.0/8 3 8 11 
10.8.0.0/8 4 
192.168.0.0/16 3 5 6 
192.168.43.0/24 (local) 

質問:ルーティングループを確認するにはどうすればよいですか。

は今、私は複数のものを試してみたと私は任意のループが存在することになるかどうかを確認する正しい方法は、ルーティングテーブル内のすべてののルートを使用してDAGを構築することだと思います。次に、新しいルートがグラフにサイクルを作成するかどうかを確認します。しかし、DAGを作成するときに特定のプレフィックスだけを見るべきかどうかは分かりません。

+0

明確にするため、AS-のPATH CIDRネットワークの後に '3 8 11 '、及び' 3 5 6'ですか? –

答えて

0

eBGPループ検出では、ASPATHに基づいています。あなた自身のASNを含むASPATHを持つルートを受け入れることはできません。

これは、RFC4271で定義されています

BGPルートのAS_PATH属性がASループが含まれている場合は、BGP ルートがフェーズ2の決定機能から除外すべきです。 ASループ 検出は、完全なASパス( AS_PATH属性で指定)をスキャンし、自律システム番号 がASパスに表示されていないことを確認することによって行われます。 ASパス内に独自の システム番号を持つルートを受け入れるように設定されたBGP スピーカーの操作については、このドキュメントの対象外です。

ヒント:BGPスピーカーを実装する場合は、RFC4271以降のすべての関連RFCを細心の注意を払って読むことをお勧めします。

iBGPに関しては、iBGPスピーカーはiBGP学習経路を別のiBGPスピーカーに転送しないため、ループ検出の必要はありません。すべてのiBGPスピーカーをフルメッシュで接続し、ルートリフレクターまたは連合を使用する必要があります。 (iBGPのための)これらの原則に関する

記事:http://www.rogerperkin.co.uk/routing-protocols/bgp/bgp-confederation-vs-route-reflector/

関連する問題