BGPについて
BGP は相互および内部の自律システムのルーティング プロトコルです。自律システムとは、共通の管理下にあり、共通のルーティング ポリシーを使用するネットワークまたはネットワーク グループです。BGP は、インターネットのルーティング情報を交換するために、インターネット サービス プロバイダー(ISP)間で使用されるプロトコルです。
ルーティング テーブルの変更
BGP ネイバーは、ネイバー間で最初に TCP 接続を確立する際に、完全なルーティング情報を交換します。ルーティング テーブルで変更が検出された場合、BGP ルータはネイバーに対し、変更されたルートのみを送信します。BGP ルータは、定期的にルーティング アップデートを送信しません。また BGP ルーティング アップデートは、宛先ネットワークに対する最適パスのアドバタイズのみを行います。
BGP により学習されたルートには、特定の宛先に対して複数のパスが存在する場合、宛先に対する最適なルートを決定するために使用されるプロパティが設定されています。これらのプロパティは BGP 属性と呼ばれ、ルート選択プロセスで使用されます。
-
Weight:これは、シスコ定義の属性で、ルータに対してローカルです。Weight 属性は、隣接ルータにアドバタイズされません。ルータが同じ宛先への複数のルートがあることを学習すると、Weight が最も大きいルートが優先されます。
-
Local preference:Local preference 属性は、ローカル AS からの出力点を選択するために使用されます。Weight 属性とは異なり、Local preference 属性は、ローカル AS 全体に伝搬されます。AS からの出力点が複数ある場合は、Local preference 属性が最も高い出力点が特定のルートの出力点として使用されます。
-
Multi-exit discriminator:メトリック属性である Multi-exit discriminator(MED)は、メトリックをアドバタイズしている AS への優先ルートに関して、外部 AS への提案として使用されます。これが提案と呼ばれるのは、MED を受信している外部 AS がルート選択の際に他の BGP 属性も使用している可能性があるためです。MED メトリックが小さい方のルートが優先されます。
-
Origin:Origin 属性は、BGP が特定のルートについてどのように学習したかを示します。Origin 属性は、次の 3 つの値のいずれかに設定することができ、ルート選択に使用されます。
-
IGP:ルートは発信側 AS の内部にあります。この値は、ネットワーク ルータ コンフィギュレーション コマンドを使用して BGP にルートを挿入する場合に設定されます。
-
EGP:ルートは Exterior Border Gateway Protocol(EBGP)を使用して学習されます。
-
Incomplete:ルートの送信元が不明であるか、他の方法で学習されています。Incomplete の Origin は、ルートが BGP に再配布されるときに発生します。
-
-
AS_path:ルート アドバタイズメントが自律システムを通過すると、ルート アドバタイズメントが通過した AS 番号が AS 番号の順序付きリストに追加されます。AS_path リストが最も短いルートのみ、IP ルーティング テーブルにインストールされます。
-
Next hop:EBGP の Next-hop 属性は、アドバタイズしているルータに到達するために使用される IP アドレスです。EBGP ピアの場合、ネクスト ホップ アドレスは、ピア間の接続の IP アドレスです。IBGP の場合、EBGP のネクスト ホップ アドレスがローカル AS に伝送されます。
-
Community:Community 属性は、ルーティングの決定(承認、優先度、再配布など)を適用できる宛先をグループ化する方法、つまりコミュニティを提供します。ルート マップは、Community 属性を設定するために使用されます。事前定義済みの Community 属性は次のとおりです。
-
no-export:EBGP ピアにこのルートをアドバタイズしません。
-
no-advertise:このルートをどのピアにもアドバタイズしない。
-
internet:インターネット コミュニティにこのルートをアドバタイズします。ネットワーク内のすべてのルートがこのコミュニティに属します。
-
BGP を使用する状況
大学や企業などの顧客ネットワークでは、そのネットワーク内でルーティング情報を交換するために OSPF などの内部ゲートウェイ プロトコル(IGP)を通常使用しています。カスタマーは ISP に接続し、ISP は BGP を使用してカスタマーおよび ISP ルートを交換します。自律システム(AS)間で BGP を使用する場合、このプロトコルは外部 BGP(EBGP)と呼ばれます。サービス プロバイダーが BGP を使用して AS 内でルートを交換する場合、このプロトコルは内部 BGP(IBGP)と呼ばれます。
BGP は、IPv6 ネットワーク上で IPv6 プレフィックスのルーティング情報を伝送するために使用することができます。
BGP パスの選択
BGP は、異なる送信元から同じルートの複数のアドバタイズメントを受信する場合があります。BGP は最適なパスとして 1 つのパスだけを選択します。このパスを選択すると、BGP は IP ルーティング テーブルに選択したパスを格納し、そのネイバーにパスを伝搬します。BGP は次の基準を使用して(示されている順序で)、宛先へのパスを選択します。
-
パスで指定されているネクスト ホップが到達不能な場合、このアップデートは削除されます。
-
Weight が最大のパスが優先されます。
-
Weight が同じである場合、Local preference が最大のパスが優先されます。
-
Local preference が同じである場合、このルータで動作している BGP により発信されたパスが優先されます。
-
ルートが発信されていない場合、AS_path が最短のルートが優先されます。
-
すべてのパスの AS_path の長さが同じである場合、Origin タイプが最下位のパス(IGP は EGP よりも低く、EGP は Incomplete よりも低い)が優先されます。
-
Origin コードが同じである場合、最も小さい MED 属性を持つパスが優先されます。
-
パスの MED が同じである場合、内部パスより外部パスが優先されます。
-
それでもパスが同じである場合、最も近い IGP ネイバーを経由するパスが優先されます。
-
BGP マルチパス のルーティング テーブルで、複数のパスのインストールが必要かどうかを判断します。
-
両方のパスが外部の場合、最初に受信したパス(最も古いパス)が優先されます。
-
BGP ルータ ID で指定された、IP アドレスが最も小さいパスが優先されます。
-
送信元またはルータ ID が複数のパスで同じである場合、クラスタ リストの長さが最小のパスが優先されます。
-
最も小さいネイバー アドレスから発信されたパスが優先されます。
BGP マルチパス
BGP マルチパスでは、同一の宛先プレフィックスへの複数の等コスト BGP パスを IP ルーティング テーブルに組み込むことができます。その場合、宛先プレフィックスへのトラフィックは、組み込まれたすべてのパス間で共有されます。
これらのパスは、負荷共有のためのベスト パスと共にテーブルに組み込まれます。BGP マルチパスは、ベストパスの選択には影響しません。たとえば、ルータは引き続き、アルゴリズムに従っていずれかのパスをベスト パスとして指定し、このベスト パスをルータの BGP ピアにアドバタイズします。
同一宛先へのパスをマルチパスの候補にするには、これらのパスの次の特性がベスト パスと同等である必要があります。
-
重量
-
ローカル プリファレンス
-
AS-PATH の長さ
-
オリジン コード
-
Multi Exit Discriminator(MED)
-
次のいずれかです。
-
ネイバー AS またはサブ AS(BGP マルチパスの追加前)
-
AS-PATH(BGP マルチパスの追加後)
-
一部の BGP マルチパス機能では、マルチパス候補に要件が追加されます。
-
パスは外部ネイバーまたは連合外部ネイバー(eBGP)から学習される必要があります。
-
BGP ネクスト ホップへの IGP メトリックは、ベストパス IGP メトリックと同等である必要があります。
内部 BGP(iBGP)マルチパス候補の追加要件を次に示します。
-
内部ネイバー(iBGP)からパスが学習される必要があります。
-
ルータが不等コスト iBGP マルチ パス用に設定されていない限り、BGP ネクストホップへの IGP メトリックは、ベスト パス IGP メトリックと同等です。
BGP はマルチパス候補から最近受信したパスのうち、最大 n 本のパスを IP ルーティング テーブルに挿入します。この n は、BGP マルチパスの設定時に指定した、ルーティング テーブルに組み込まれるルートの数です。マルチパスが無効な場合のデフォルト値は 1 です。
不等コスト ロード バランシングの場合、BGP リンク帯域幅も使用できます。
(注) |
内部ピアへの転送前に、eBGP マルチパスで選択されたベストパスに対し、同等の next-hop-self が実行されます。 |