Cisco BGP に関する情報
• 「BGP バージョン 4 機能の概要」
• 「BGP 自律システム」
• 「BGP 自律システム番号の形式」
• 「クラスレス ドメイン間ルーティング」
• 「マルチプロトコル BGP」
• 「BGP に対しマルチプロトコル BGP を使用する利点」
• 「IP マルチキャストのマルチプロトコル BGP 拡張」
• 「NLRI コンフィギュレーション CLI」
• 「Cisco BGP アドレス ファミリ モデル」
• 「IPv4 アドレス ファミリ」
• 「IPv6 アドレス ファミリ」
• 「CLNS アドレス ファミリ」
• 「VPNv4 アドレス ファミリ」
• 「L2VPN アドレス ファミリ」
• 「BGP CLI 削除の考慮事項」
BGP バージョン 4 機能の概要
BGP は、組織間にループが発生しないルーティング リンクを実現することを目的としたドメイン間ルーティング プロトコルです。BGP は、信頼性の高いトランスポート プロトコル上で実行できるように設計されています。Transmission Control Protocol(TCP; 伝送制御プロトコル)はコネクション型プロトコルのため、BGP は TCP(ポート 179)をトランスポート プロトコルとして使用します。宛先 TCP ポートは 179 に割り当てられており、ローカル ポートはランダムなポート番号に割り当てられています。Cisco IOS ソフトウェアは、BGP バージョン 4 をサポートしています。このバージョンは、インターネット サービス プロバイダーがインターネットを構築するために使用されています。RFC 1771 では、プロトコルをインターネット規模での使用に合わせるため、新機能の BGP への追加や検討が多数行われました。RFC 2858 により、IPv4、IPV6、CLNS を含む IP マルチキャスト ルートおよび複数のレイヤ 3 プロトコルアドレス ファミリのルーティング情報を BGP で伝送できるようにする、マルチプロトコル拡張が導入されました。
BGP は主に、ローカル ネットワークを外部ネットワークに接続して、インターネットにアクセスしたり、他の組織に接続したりするために使用されます。外部組織への接続時に、external BGP(eBGP; 外部 BGP)ピアリング セッションが作成されます。BGP は Exterior Gateway Protocol(EGP; 外部ゲートウェイ プロトコル)と呼ばれてはいますが、組織における多くのネットワークは非常に複雑になりつつあるため、BGP を組織内で使用されている内部ネットワークを簡素化する際にも使用できます。同一組織内の BGP ピアは、internal BGP(iBGP; 内部 BGP)ピアリング セッションによってルーティング情報を交換します。BGP ピア セッションの設定および基本的な BGP ネットワークを構築するその他の作業の詳細については、「 Configuring a Basic BGP Network 」モジュールを参照してください。
BGP は、パスベクタ ルーティング アルゴリズムを使用して他の BGP 対応ネットワーキング デバイスとネットワーク到着可能性情報を交換します。ネットワーク到着可能性情報は、ルーティング アップデートにより BGP ピア間で交換されます。ネットワーク到着可能性情報には、ネットワーク番号、パス固有のアトリビュート、および宛先ネットワークに到達するためにルートが通過する必要がある自律システムの番号リストが含まれます。このリストは、Autonomous System(AS; 自律システム)アトリビュートに含まれます。ルーティング アップデートにローカル自律システム番号が含まれている場合、ルートはその自律システムをすでに通過していることを意味しており、ループが作成される可能性があります。そのため、BGP はローカル自律システム番号を含むすべてのルーティング アップデートを拒否することで、ルーティング ループを回避します。BGP パスベクタ ルーティング アルゴリズムは、ディスタンス ベクタ ルーティング アルゴリズムと AS パス ループ検出を組み合わせたものです。BGP ネイバーのピア セッションに関連するさまざまなオプションを設定する設定作業の詳細については、「 Configuring BGP Neighbor Session Options 」モジュールを参照してください。
デフォルトでは、BGP は宛先ホストまたはネットワークへの最良パスとして 1 つのパスを選択します。最良パス選択アルゴリズムによりパス アトリビュートが分析され、BGP ルーティング テーブル内でどのルートが最良パスとしてインストールされているかが判断されます。各パスでは、BGP 最良パス分析で使用されるウェルノウンの必須の遷移アトリビュート、ウェルノウンの任意の遷移アトリビュート、およびオプションの遷移アトリビュートが伝送されます。Cisco IOS ソフトウェアには、Command-Line Interface(CLI; コマンドライン インターフェイス)を使用してこれらのアトリビュートの一部を変更し BGP パス選択に反映させる機能があります。BGP パス選択は、BGP 標準ポリシーの設定にも影響されます。BGP を使用してパス選択に影響を与えること、およびポリシーを設定してトラフィックをフィルタリングすることの詳細については、「 Connecting to a Service Provider Using External BGP 」モジュールを参照してください。
BGP では、最良パス選択アルゴリズムを使用して、全体的に良好なルートのセットを検索します。このようなルートは、潜在的なマルチパスです。Cisco IOS Release 12.2(33)SRD 以降のリリースでは、許可される最大数よりも多くの全体的に良好なマルチパスが存在する場合、最も古いパスがマルチパスとして選択されます。
内部ゲートウェイ プロトコル(IGP)とインターフェイスすることで、BGP を複雑な内部ネットワークの管理に役立てることができます。内部 BGP は、ネットワークの効率を維持しながら既存の IGP をトラフィックの要件にあわせてスケーリングするといった問題に役立ちます。iBGP ピアリング セッションの設定作業を含む BGP の拡張機能の設定に関する詳細は、「 Configuring Advanced BGP Features 」モジュールを参照してください。
BGP 自律システム
自律システムは、単一のテクニカル アドミニストレーション エンティティによって制御されるネットワークです。BGP 自律システムは、グローバルな外部ネットワークをローカル ルーティング ポリシーが適用できる個別のルーティング ドメインに分割する場合に使用されます。この設定により、ルーティング ドメインの管理および一貫したポリシー設定が簡素化されます。一貫したポリシー設定は、BGP により宛先ネットワークへのルートが効率的に処理されるようにするために重要です。
各ルーティング ドメインで、複数のルーティング プロトコルをサポートできます。ただし、各ルーティングプロトコルは別々に管理されます。その他のルーティング プロトコルでは、再配布により動的にルーティング情報を BGP と交換できます。別々の BGP 自律システムでは、eBGP ピアリング セッションを通じてルーティング情報が動的に交換されます。同一の自律システム内の BGP ピアでは、iBGP ピアリング セッションを通じてルーティング情報が交換されます。
図 1 に、BGP で接続できる別々の自律システム内にある 2 つのルータを示します。ルータ A およびルータ B は、公共自律システム番号を使用する別々のルーティング ドメインにある、Internet Service Provider(ISP; インターネット サービス プロバイダー)のルータです。トラフィックは、これらのルータによりインターネット全体に伝送されます。ルータ A およびルータ B は、eBGP ピアリング セッション経由で接続されます。
図 1 2 つの自律システムを持つ BGP トポロジ
インターネットに直接接続する各公共自律システムには、BGP ルーティング プロセスおよび自律システムの両方を識別する一意の番号が割り当てられています。
BGP 自律システム番号の形式
2009 年 1 月まで、企業に割り当てられていた BGP 自律システム番号は、RFC 4271『 A Border Gateway Protocol 4 (BGP-4) 』に記述された、1 ~ 65535 の範囲の 2 オクテットの数値でした。自律システム番号の要求の増加に伴い、Internet Assigned Number Authority(IANA; インターネット割り当て番号局)により割り当てられる自律システム番号は 2009 年 1 月から 65536 ~ 4294967295 の範囲の 4 オクテットの番号になります。RFC 5396 『Textual Representation of Autonomous System (AS) Numbers 』には、自律システム番号を表す 3 つの方式が記述されています。シスコでは、次の 2 つの方式を実装しています。
• asplain:10 進表記方式。2 バイトおよび 4 バイト自律システム番号をその 10 進数値で表します。たとえば、65526 は 2 バイト自律システム番号、234567 は 4 バイト自律システム番号になります。
• asdot:自律システム ドット付き表記。2 バイト自律システム番号は 10 進数で、4 バイト自律システム番号はドット付き表記で表されます。たとえば、65526 は 2 バイト自律システム番号、1.169031(10 進表記の 234567 をドット付き表記にしたもの)は 4 バイト自律システム番号になります。
自律システム番号を表す 3 つ目の方法については、RFC 5396 を参照してください。
asdot だけを使用する自律システム番号形式
Cisco IOS Release 12.0(32)S12、12.4(24)T、およびそれ以降のリリースでは、4 オクテット(4 バイト)の自律システム番号は asdot 表記法だけで入力および表示されます。たとえば、1.10 または 45000.64000 です。4 バイト自律システム番号のマッチングに正規表現を使用する場合、asdot 形式には正規表現で特殊文字となるピリオドが含まれていることに注意します。正規表現でのマッチングに失敗しないよう、1\.14 のようにピリオドの前にバックスラッシュを入力する必要があります。 表 1 は、asdot 形式だけが使用できる Cisco IOS イメージで、2 バイトおよび 4 バイト自律システム番号の設定、正規表現とのマッチング、および show コマンド出力での表示に使用される形式をまとめたものです。
表 1 asdot だけを使用する 4 バイト自律システム番号形式
|
|
show コマンド出力および正規表現のマッチング形式
|
asdot |
2 バイト:1 ~ 65535 4 バイト:1.0 ~ 65535.65535 |
2 バイト:1 ~ 65535 4 バイト:1.0 ~ 65535.65535 |
asplain をデフォルトとする自律システム番号形式
Cisco IOS Release 12.0(32)SY8、12.0(33)S3、12.2(33)SRE、12.2(33)XNE、12.2(33)SXI1、およびそれ以降のリリースでは、シスコ実装の 4 バイト自律システム番号で asplain がデフォルトの自律システム番号表示形式として使用されていますが、4 バイト自律システム番号は asplain および asdot 形式のどちらにも設定できます。また、正規表現で 4 バイト自律システム番号とマッチングするためのデフォルト形式は asplain であるため、4 バイト自律システム番号とマッチングする正規表現はすべて、asplain 形式で記述する必要があります。デフォルトの show コマンド出力で、4 バイト自律システム番号が asdot 形式で表示されるように変更する場合は、ルータ コンフィギュレーション モードで bgp asnotation dot コマンドを使用します。デフォルトで asdot 形式がイネーブルにされている場合、正規表現の 4 バイト自律システム番号のマッチングには、すべて asdot 形式を使用する必要があり、使用しない場合正規表現によるマッチングは失敗します。 表 2 および 表 3 に示すように、4 バイト自律システム番号は asplain と asdot のどちらにも設定できるとはいえ、 show コマンド出力と正規表現を用いた 4 バイト自律システム番号のマッチング制御には 1 つの形式だけが使用されます。デフォルトは asplain 形式です。 show コマンド出力の表示と正規表現のマッチング制御で asdot 形式の 4 バイト自律システム番号を使用する場合、 bgp asnotation dot コマンドを設定する必要があります。 bgp asnotation dot コマンドをイネーブルにした後で、 clear ip bgp * コマンドを入力し、すべての BGP セッションについて、ハード リセットを開始する必要があります。
(注) 4 バイト自律システム番号をサポートしているイメージにアップグレードしている場合でも、2 バイト自律システム番号を使用できます。4 バイト自律システム番号に設定された形式にかかわらず、2 バイト自律システムの show コマンド出力と正規表現のマッチングは変更されず、asplain(10 進数)形式のままになります。
表 2 asplain をデフォルトとする 4 バイト自律システム番号形式
|
|
show コマンド出力および正規表現のマッチング形式
|
asplain |
2 バイト:1 ~ 65535 4 バイト:65536 ~ 4294967295 |
2 バイト:1 ~ 65535 4 バイト:65536 ~ 4294967295 |
asdot |
2 バイト:1 ~ 65535 4 バイト:1.0 ~ 65535.65535 |
2 バイト:1 ~ 65535 4 バイト:65536 ~ 4294967295 |
表 3 asdot を使用する 4 バイト自律システム番号形式
|
|
show コマンド出力および正規表現のマッチング形式
|
asplain |
2 バイト:1 ~ 65535 4 バイト:65536 ~ 4294967295 |
2 バイト:1 ~ 65535 4 バイト:1.0 ~ 65535.65535 |
asdot |
2 バイト:1 ~ 65535 4 バイト:1.0 ~ 65535.65535 |
2 バイト:1 ~ 65535 4 バイト:1.0 ~ 65535.65535 |
予約済みおよびプライベートの自律システム番号
Cisco IOS Release 12.0(32)S12、12.0(32)SY8、12.0(33)S3、12.2(33)SRE、12.2(33)XNE、12.2(33)SXI1、12.4(24)T、およびそれ以降のリリースでは、RFC 4893 がシスコの BGP 実装でサポートされています。RFC 4893 は、2 バイト自律システム番号から 4 バイト自律システム番号への段階的移行を BGP がサポートできるように開発されました。新しい予約済み(プライベート)自律システム番号(23456)は RFC 4893 により作成された番号で、Cisco IOS CLI ではこの番号を自律システム番号として設定できません。
RFC 5398『 Autonomous System (AS) Number Reservation for Documentation Use 』では、文書化を目的として新たに予約された自律システム番号について説明されています。予約済み番号を使用することで、設定例を正確に文書化しつつ、その設定がそのままコピーされた場合でも製品ネットワークに競合が発生することを防止できます。予約済み番号は IANA 自律システム番号レジストリに記載されています。予約済み 2 バイト自律システム番号は 64496 ~ 64511 の連続したブロック、予約済み 4 バイト自律システム番号は 65536 ~ 65551 をその範囲としています。
64512 ~ 65534 を範囲とするプライベートの 2 バイト自律システム番号は依然有効で、65535 は特殊な目的のために予約されています。プライベート自律システム番号は内部ルーティング ドメインで使用できますが、インターネットにルーティングされるトラフィックについては変換が必要です。プライベート自律システム番号を外部ネットワークへアドバタイズするように BGP を設定しないでください。Cisco IOS ソフトウェアは、デフォルトではルーティング アップデートからプライベート自律システム番号を削除しません。ISP がプライベート自律システム番号をフィルタリングすることを推奨します。
(注) パブリック ネットワークおよびプライベート ネットワークに対する自律システム番号の割り当ては、IANA が管理しています。予約済み番号の割り当てや自律システム番号の登録申込など、自律システム番号についての情報については、http://www.iana.org/ を参照してください。
クラスレス ドメイン間ルーティング
BGP バージョン 4 では、Classless Interdomain Routing(CIDR; クラスレス ドメイン間ルーティング)がサポートされています。
クラスレス ドメイン間ルーティング
BGP バージョン 4 では、クラスレス ドメイン間ルーティング(CIDR)がサポートされています。CIDR により、クラスフル ネットワーク境界が排除され IPv4 アドレス スペースをより効率的に使用できるようになります。CIDR では、集約ルート(スーパーネット)を設定することでルーティング テーブルのサイズを縮小できます。CIDR では、プレフィクスが IP アドレスおよびビット マスク(ビットは左から右へ処理される)として処理され、各ネットワークが定義されます。プレフィクスはネットワーク、サブネットワーク、スーパーネット、または単一のホスト ルートを表すことができます。たとえば、クラスフル IP アドレッシングを使用して、IP アドレス 192.168.2.1 はクラス C ネットワーク 192.168.2.0 内の単一のホストと定義されます。CIDR を使用すると、IP アドレスは 192.168.2.1/16 のように表示されます。これにより、192.168.0.0 のネットワーク(またはスーパーネット)が定義されます。Cisco IOS ソフトウェアのすべてのルーティング プロトコルでは、CIDR はデフォルトでイネーブルになっています。CIDR をイネーブルにするとパケットの転送方法に影響がありますが、BGP の動作は変更されません。
マルチプロトコル BGP
Cisco IOS ソフトウェアは、RFC 2858『 Multiprotocol Extensions for BGP-4 』で定義されているマルチプロトコル BGP 拡張をサポートしています。この RFC で導入された拡張により、BGP は CLNS、IPv4、IPv6、および VPNv4 を含む複数のネットワーク レイヤ プロトコルのルーティング情報を伝送できるようになりました。これらの拡張は下位互換性となっており、マルチプロトコル拡張をサポートしていないルータが、マルチプロトコル拡張をサポートしているルータと通信できるようになっています。マルチプロトコル BGP は、複数のネットワーク レイヤ プロトコルおよび IP マルチキャスト ルートに関するルーティング情報を伝送します。プロトコルに応じて、さまざまなルートのセットが BGP により伝送されます。たとえば、IPv4 ユニキャスト ルーティング用に 1 セットのルート、IPv4 マルチキャスト ルーティング用に 1 セットのルート、MPLS VPNv4 ルート用に 1 セットのルートを BGP で伝送することが可能です。
(注) マルチプロトコル BGP ネットワークは BGP ネットワークと下位互換ですが、マルチプロトコル拡張をサポートしていない BGP ピアはマルチプロトコル拡張が伝送するアドレス ファミリ識別情報などのルーティング情報を転送できません。
BGP に対しマルチプロトコル BGP を使用する利点
複数のネットワーク レイヤ プロトコルを持つ複雑なネットワークでは、マルチプロトコル BGP を使用する必要があります。あまり複雑ではないネットワークでは、次の利点があるためマルチプロトコル BGP を使用することを推奨します。
• すべての BGP コマンドおよび BGP のルーティング ポリシー機能はマルチプロトコル BGP に適用できる。
• RFC 1700『 Assigned Numbers 』で指定されているように、複数のネットワーク レイヤ プロトコル アドレス ファミリ(たとえば IP バージョン 4 または VPN バージョン 4)のルーティング情報をネットワークで伝送できる。
• 不一致のユニキャストおよびマルチキャスト トポロジをネットワークでサポートできる。
• マルチプロトコル BGP ネットワークは下位互換性となっており、マルチプロトコル拡張をサポートするルータと拡張をサポートしていないルータとの相互運用が可能。
つまり、複数のネットワーク レイヤ プロトコル アドレス ファミリに対する BGP のマルチプロトコル サポートにより、独立したポリシーおよびピアリング コンフィギュレーションをアドレス ファミリ単位で定義できる、柔軟でスケーラブルなインフラストラクチャが実現できます。
IP マルチキャストのマルチプロトコル BGP 拡張
マルチキャスト ルーティングと関連付けられたルートは、Protocol Independent Multicast(PIM; プロトコル独立型マルチキャスト)機能で使用され、データ分散ツリーが構築されます。マルチプロトコル BGP は、トラフィックの種類別に使用するリソースを制限するなどの目的で、マルチキャスト トラフィックへの専用リンクが必要な場合に役立ちます。たとえば、すべてのマルチキャスト トラフィックを 1 つの Network Access Point(NAP; ネットワーク アクセス ポイント)で交換する場合です。マルチプロトコル BGP を使用すると、マルチキャスト ルーティング トポロジとは異なるユニキャスト ルーティング トポロジによって、ネットワークおよびリソースをより良く制御できるようになります。
BGP でドメイン間マルチキャスト ルーティングを実行する唯一の方法は、ユニキャスト ルーティングに対応できる BGP インフラストラクチャを使用することです。ルータがマルチキャスト対応でない場合、またはマルチキャスト トラフィック フローが必要な箇所に対して異なるポリシーがある場合は、マルチキャスト ルーティングはマルチプロトコル BGP なしではサポートされません。
PIM などのマルチキャスト ルーティング プロトコルは、マルチキャストおよびユニキャスト BGP データベースの両方を使用して、ルートの調達、Reverse Path Forwarding(RPF; リバース パス フォワーディング)によるマルチキャスト対応ソースの検索、および Multicast Distribution Tree(MDT; マルチキャスト分散ツリー)の構築を実行します。マルチキャスト テーブルは、ルータのプライマリ ソースですが、マルチキャスト テーブルでルートが見つからない場合はユニキャスト テーブルが検索されます。マルチキャストはユニキャスト BGP で実行できますが、マルチキャスト BGP ルートには RPF に使用する代替トポロジが許可されています。
マルチプロトコル BGP ルートが BGP に再配布される、ユニキャストおよびマルチキャスト両方の Network Layer Reachability Information(NLRI; ネットワーク レイヤ到着可能性情報)を交換する BGP ピアを設定できます。ただし、マルチプロトコル拡張はマルチプロトコル BGP をサポートしていないピアのすべてにおいて無視されます。PIM によりユニキャスト BGP ネットワークを通過するマルチキャスト分散ツリーを構築する場合(ユニキャスト ネットワークを通過するルートが最も魅力的なため)、RPF チェックが失敗し、MDT が構築されない場合があります。マルチプロトコル BGP がユニキャスト ネットワークによって実行される場合、適切なマルチキャスト アドレス ファミリを使用してピアリングを設定できます。マルチキャスト アドレス ファミリ構成では、マルチプロトコル BGP によりマルチキャスト情報が伝送でき、RPF 検索が成功します。
図 2 に、不一致のユニキャストおよびマルチキャスト トポロジの簡単な例を示します。これらのトポロジ間では、マルチプロトコル BGP を実装しない場合は情報を交換できません。自律システム 100、200、および 300 は、FDDI リングである 2 つの NAP にそれぞれ接続しています。1 つはユニキャスト ピアリング(ユニキャスト トラフィックの交換)に使用されます。Multicast Friendly Interconnect(MFI)リングは、マルチキャスト ピアリング(マルチキャスト トラフィックの交換)に使用されます。各ルータは、ユニキャストおよびマルチキャスト対応です。
図 2 不一致のユニキャスト ルートおよびマルチキャスト ルート
図 3 は、ユニキャストだけに対応したルータおよびマルチキャストだけに対応したルータのトポロジです。左側にある 2 つのルータはユニキャストだけに対応しています(マルチキャスト ルーティングをサポートしていないか、マルチキャスト ルーティングを実行するよう設定されていない)。右側にある 2 つのルータはマルチキャストだけに対応したルータです。ルータ A および B は、ユニキャストおよびマルチキャスト ルーティングの両方をサポートしています。ユニキャストだけに対応したルータおよびマルチキャストだけに対応したルータは、1 つの NAP に接続されています。
図 3 では、ユニキャスト トラフィックだけがルータ A からユニキャスト ルータを経由してルータ B に移動し、その逆の経路で戻ります。このパスでは、マルチキャスト トラフィックはフローされません。マルチキャスト ルーティングがユニキャスト ルータで設定されておらず、そのため BGP ルーティング テーブルにマルチキャスト ルートがまったく含まれていないためです。マルチキャスト ルータでは、マルチキャスト ルートがイネーブル化され、マルチキャスト ルートを保持する個別のルーティング テーブルが BGP により構築されます。マルチキャスト トラフィックには、ルータ A からマルチキャスト ルータを経由しルータ B に移動し、その逆の経路で戻るパスが使用されます。
図 3 に、ルータ A からルータ B へユニキャスト ルートおよびマルチキャスト ルートを別々に持つマルチプロトコル BGP 環境を示します。マルチプロトコル BGP では、これらのルートが不一致であることが許可されています。この図では、両方の自律システムに内部マルチプロトコル BGP が設定されている必要があります。
図 3 マルチキャスト BGP 環境
IP マルチキャストの詳細については、「 Configuring Basic IP Multicast 」モジュールを参照してください。
NLRI コンフィギュレーション CLI
BGP は、ユニキャストの IPv4 ルーティング情報だけを伝送するように設計されました。Cisco IOS ソフトウェアの BGP 設定では、ネットワーク レイヤ到着可能性情報(NLRI)形式 CLI が使用されました。NLRI 形式では、マルチキャスト ルーティング情報のサポートは限られており、複数のネットワーク レイヤ プロトコルはサポートされません。BGP 設定に NLRI 形式 CLI を使用することは推奨できません。BGP ハイブリッド CLI 機能を使用すれば、アドレス ファミリ VPNv4 形式でコマンドを設定し、既存の NLRI でフォーマットされた構成を変更することなく、これらのコマンド コンフィギュレーションを保存できます。IPv4 ユニキャストまたはマルチキャストなどのその他のアドレス ファミリ コンフィギュレーションを使用する場合は、 bgp upgrade-cli コマンドを使用して、設定をアップグレードする必要があります。BGP ハイブリッド CLI コマンド使用の詳細については、「 Configuring a Basic BGP Network 」モジュールを参照してください。アドレス ファミリ設定形式について、および NLRI CLI 形式の制限についての詳細は、「マルチプロトコル BGP」および「Cisco BGP アドレス ファミリ モデル」の概念を参照してください。
Cisco BGP アドレス ファミリ モデル
Cisco BGP の Address Family Identifier(AFI)モデルは、マルチプロトコル BGP と一緒に導入され、モジュラ式かつスケーラブルで、複数の AFI および Subsequent Address Family Identifier(SAFI)コンフィギュレーションをサポートするように設計されています。ネットワークの複雑性は更に増しており、現在多くの企業では、多くの 自律システムに接続する際に図 4のネットワーク トポロジに示されているように BGP を使用しています。図 4 に示されている個別の各自律システムでは、Multiprotocol Label Switching(MPLS; マルチプロトコル ラベル スイッチング)および IPv6 などのいくつかのルーティング プロトコルを実行されている場合があり、ユニキャストおよびマルチキャスト両方のルートが BGP 経由で転送されることを必要とする場合があります。
図 4 複数のアドレス ファミリ用の BGP ネットワーク トポロジ
Cisco BGP AFI モデルでは、新しい内部構造でサポートされた、新しいコマンドライン インターフェイス(CLI)コマンドが導入されています。マルチプロトコル BGP は、複数のネットワーク レイヤ プロトコルおよび IP マルチキャスト ルートに関するルーティング情報を伝送します。このルーティング情報は、AFI モデルではアペンドされた BGP アトリビュート(マルチプロトコル拡張)として伝送されます。各アドレス ファミリでは別々の BGP データベースが保持されています。このため、BGP ポリシーをアドレス ファミリごとに設定できます。SAFI コンフィギュレーションは、親 AFI のサブセットです。SAFI は、BGP ポリシー コンフィギュレーションの再取得に使用できます。
AFI モデルは、NLRI 形式ではスケーラビリティに制限があるために作成されました。NLRI 形式で設定されたルータは、IPv4 ユニキャスト機能を備えていますが、マルチキャスト機能は限られています。NLRI 形式で設定されたネットワークには、次の制限事項があります。
• AFI および SAFI 設定情報がサポートされていない。多くの新しい BGP(および MPLS などのその他のプロトコル)機能は AFI および SAFI コンフィギュレーション モードだけでサポートされており、NLRI コンフィギュレーション モードでは設定できません。
• IPv6 がサポートされていない。NLRI 形式で設定されたルータは、IPv6 ネイバーとピアリングを構築できません。
• マルチキャスト ドメイン間ルーティングおよび不一致のマルチキャストおよびユニキャスト トポロジに対するサポートが限られている。NLRI 形式では、すべての設定オプションが使用可能というわけではなく、VPNv4 はサポートされていません。NLRI 形式コンフィギュレーションは、AFI モデルをサポートするコンフィギュレーションよりも複雑になる場合があります。インフラストラクチャ内のルータにマルチキャスト機能が備わっていない場合、またはマルチキャスト トラフィックがどのようにフローするかについての設定に関してポリシーが異なっている場合は、マルチキャスト ルーティングはサポートされません。
マルチプロトコル BGP における AFI モデルは、複数の AFI および SAFI、すべての NLRI に基づくコマンドおよびポリシー コンフィギュレーションをサポートしており、NLRI 形式だけをサポートするルータに対し下位互換性があります。AFI モデルを使用して設定されたルータには、次の機能が備わっています。
• AFI および SAFI 情報およびコンフィギュレーションがサポートされている。AFI モデルを使用して設定されたルータは、複数のネットワーク レイヤ プロトコル アドレス ファミリ(たとえば IPv4 および IPv6)のルーティング情報を伝送できます。
• AFI コンフィギュレーションはすべてのアドレス ファミリで同様であり、NLRI 形式構文よりも CLI 構文を使いやすくしている。
• すべての BGP ルーティング ポリシー機能およびコマンドがサポートされている。
• 不一致のマルチキャストおよびユニキャスト トポロジがサポートされているのと同様に、異なるポリシーを持つ一致するユニキャストおよびマルチキャスト トポロジ(BGP フィルタリング コンフィギュレーション)がサポートされている。
• CLNS がサポートされている。
• NLRI 形式だけをサポートするルータ間の相互運用がサポートされている(AFI に基づくネットワークは下位互換性)。これには、IPv4 ユニキャストおよびマルチキャスト NLRI ピアの両方が含まれています。
• バーチャル プライベート ネットワーク(VPN)および VPN Routing and Forwarding(VRF; VPN ルーティング/転送)インスタンスがサポートされている。VRF のユニキャスト IPv4 は特定のアドレス ファミリ IPv4 VRF から設定できます。このコンフィギュレーション アップデートは BGP VPNv4 データベースに統合されています。
特定のアドレス ファミリ コンフィギュレーション モードでは、疑問符(?)によるオンライン ヘルプ機能を使用して、サポートされているコマンドを表示できます。アドレス ファミリ コンフィギュレーション モードでサポートされている BGP コマンドとルータ コンフィギュレーション モードでサポートされている BGP コマンドでは同じ機能が設定されますが、ルータ コンフィギュレーション モードの BGP コマンドで設定されるのは IPv4 ユニキャスト アドレス プレフィクスの機能だけです。その他のアドレス ファミリ プレフィクス(たとえば、IPv4 マルチキャストまたは IPv6 ユニキャスト アドレス プレフィクス)の BGP コマンドおよび機能を設定するには、それらのアドレス プレフィクスのアドレス ファミリ コンフィギュレーション モードを開始する必要があります。
Cisco IOS ソフトウェアの BGP アドレス ファミリ モデルは、IPv4、IPv6、CLNS、および VPNv4 の 4 つのアドレス ファミリで構成されています。Cisco IOS Release 12.2(33)SRB 以降のリリースでは、L2VPN アドレス ファミリに対するサポートが追加されました。また、L2VPN アドレス ファミリ内で Virtual Private LAN Service(VPLS; バーチャル プライベート LAN サービス)SAFI がサポートされています。IPv4 および IPv6 アドレス ファミリには、マルチキャスト分散ツリー(MDT)、トンネル、および VRF などの SAFI が存在します。 表 4 に、Cisco IOS ソフトウェアでサポートされている SAFI のリストを示します。すべてのタイプの AFI および SAFI コンフィギュレーションを実行するネットワーク間における互換性を確保するには、マルチプロトコル BGP アドレス ファミリ モデルを使用して Cisco IOS デバイスに BGP を設定することを推奨します。
表 4 Cisco IOS ソフトウェアでサポートされる SAFI
|
|
|
1 |
ユニキャスト フォワーディングに使用される NLRI |
RFC 2858 |
2 |
マルチキャスト フォワーディングに使用される NLRI |
RFC 2858 |
3 |
ユニキャストおよびマルチキャスト フォワーディングの両方に使用される NLRI |
RFC 2858 |
4 |
MPLS ラベル付き NLRI |
RFC 3107 |
64 |
トンネル SAFI |
draft-nalawade-kapoor-tunnel- safi -01.txt |
65 |
バーチャル プライベート LAN サービス(VPLS) |
― |
66 |
BGP MDT SAFI |
draft-nalawade-idr-mdt-safi-00.txt |
128 |
MPLS ラベル付き VPN アドレス |
RFC-ietf-l3vpn-rfc2547bis-03.txt |
IPv4 アドレス ファミリ
IPv4 アドレス ファミリは、標準 IP バージョン 4 アドレス プレフィクスを使用する BGP などのプロトコルのルーティング セッションを識別する場合に使用されます。ユニキャストまたはマルチキャスト アドレス プレフィクスは、IPv4 アドレス ファミリ内で指定できます。デフォルトでは、アドレス ファミリ IPv4 ユニキャストのルーティング情報は、ユニキャスト IPv4 情報のアドバタイズメントが明示的にオフにされていない限り、BGP ピアが設定されたこときにアドバタイズされます。
VRF インスタンスも、IPv4 AFI コンフィギュレーション モード コマンドと関連付けできます。
Cisco IOS Release 12.0(28)S では、マルチポイント トンネリング IPv4 ルーティング セッションをサポートするためにトンネル SAFI が追加されました。トンネル SAFI は、トンネル タイプとトンネル機能を含む SAFI 固有アトリビュートおよびトンネル エンドポイントをアドバタイズするために使用されます。トンネル アドレス ファミリが設定されたときに、トンネル エンドポイントが BGP IPv4 トンネル SAFI テーブルへ自動的に再配布されます。ただし、トンネル情報がセッションで交換されるようにするには、トンネル アドレス ファミリでピアをアクティブ化する必要があります。
Cisco IOS Release 12.0(29)S では、マルチキャスト VPN アーキテクチャをサポートするためにマルチキャスト分散ツリー(MDT)SAFI が追加されました。MDT SAFI はマルチキャスト対応遷移コネクタ アトリビュートで、BGP では IPv4 アドレス ファミリとして定義されています。MDT アドレス ファミリ セッションは、IPv4 マルチキャスト アドレス ファミリで SAFI として動作し、Provider Edge(PE; プロバイダー エッジ)ルータで設定されて AS 間マルチキャスト VPN ピアリング セッションをサポートする Customer Edge(CE; カスタマーエッジ)ルータと VPN ピアリング セッションを確立します。
IPv6 アドレス ファミリ
IPv6 アドレス ファミリは、標準 IPv6 アドレス プレフィクスを使用する BGP などのプロトコルのルーティング セッションを識別する場合に使用されます。ユニキャストまたはマルチキャスト アドレス プレフィクスは、IPv6 アドレス ファミリ内で指定できます。
(注) デフォルトでは、アドレス ファミリ IPv4 ユニキャストのルーティング情報は、ユニキャスト IPv4 情報のアドバタイズメントを明示的にオフにしない限り、BGP ピアを設定したときにアドバタイズされます。
CLNS アドレス ファミリ
CLNS アドレス ファミリは、標準 Network Service Access Point(NSAP; ネットワーク サービス アクセス ポイント)アドレス プレフィクスを使用する BGP などのプロトコルのルーティング セッションを識別する場合に使用されます。NSAP アドレス プレフィクスが設定されたとき、ユニキャスト アドレス プレフィクスがデフォルトとなります。
CLNS ルートは、CLNS アドレスが設定されたネットワークで使用されます。これはテレコミュニケーション Data Communications Network(DCN; データ通信ネットワーク)の典型です。ピアリングは IP アドレスを使用して確立されますが、アップデート メッセージには CLNS ルートが含まれます。
CLNS ネットワークのスケーリング機能を提供する、CLNS に対する BGP サポートの詳細については、「 Configuring Multiprotocol BGP (MP-BGP) support for CLNS 」モジュールを参照してください。
VPNv4 アドレス ファミリ
VPNv4 マルチキャスト アドレス ファミリは、標準 VPN バージョン 4 アドレス プレフィクスを使用する BGP などのプロトコルのルーティング セッションを識別する場合に使用されます。VPNv4 アドレス プレフィクスが設定されたとき、ユニキャスト アドレス プレフィクスがデフォルトとなります。VPNv4 ルートは IPv4 ルートと同様ですが、VPNv4 ルートにはプレフィクスのレプリケーションを許可する Route Descriptor(RD; ルート ディスクリプタ)がプリペンドされています。異なる各 RD を異なる VPN に関連付けることが可能です。各 VPN には、独自のプレフィクス セットが必要です。
企業は、アプリケーションおよびデータ ホスティング、ネットワーク商取引、電話サービスといったビジネス カスタマーへの付加価値サービスを展開および管理する基盤として IP VPN を使用します。
プライベート LAN では、IP をベースとしたイントラネットにより、企業のビジネス実践のあり方が根本的に変化しました。企業は、イントラネットのビジネス アプリケーションを WAN で拡大することに移行しつつあります。また、企業はエクストラネット(複数のビジネスを包含するイントラネット)を使用してカスタマー、サプライヤ、およびパートナーのニーズに取り組んでいます。エクストラネットにより、企業はサプライチェーンの自動化、Electronic Data Interchange(EDI; 電子データ交換)、およびその他のネットワーク商取引の形態を簡易化することで、ビジネス プロセスのコストを削減します。このビジネス チャンスを活かすには、サービス プロバイダーはパブリック インフラストラクチャを通じてビジネスにプライベート ネットワーク サービスを提供する IP VPN インフラストラクチャを持つ必要があります。
MPLS とあわせて VPN を使用した場合、サービス プロバイダーのネットワークを通じて複数の拠点同士を透過的に相互接続することが可能になります。1 つのサービス プロバイダー ネットワークで、複数の異なる IP VPN のサポートが可能です。これらはそれぞれ、そのユーザにとってはその他すべてのネットワークとは隔離されたプライベート ネットワークとして現れます。1 つの VPN 内では、各拠点は同一 VPN 内のいずれの拠点にも IP パケットを送信できます。各 VPN は 1 つ以上の VPN VRF に関連付けられます。VPNv4 ルートは、すべての VRF のルートのスーパーセットであり、特定の VRF アドレス ファミリにおいて VRF ごとにルート挿入が行われます。ルータは、各 VRF に対し別々のルーティングおよび Cisco Express Forwarding(CEF)テーブルを保持します。これにより、情報が VPN 外に送信されることが回避でき、重複 IP アドレスの問題を起こすことなく同一のサブネットが複数の VPN で使用可能になります。BGP を使用しているルータは、BGP 拡張コミュニティを使用して VPN のルーティング情報を配布します。
VPN アドレス スペースは、設計によりグローバル アドレス スペースから隔離されます。ある VPN へのルートはその VPN のその他のメンバだけが学習できるように、VPN-IPv4 プレフィクスの到着可能性情報は BGP により VPNv4 マルチプロトコル拡張を使用して各 VPN に配布されます。これにより VPN のメンバが相互に通信できるようになります。
RFC 3107 に、SAFI を使用してマルチプロトコル BGP アドレス ファミリにラベル情報を追加する方法が指定されています。Cisco IOS 実装の MPLS では、IPv4 ルートをラベルと一緒に送信するサポートの提供に RFC 3107 が使用されています。VPNv4 には、暗黙的に各ルートに関連付けられたラベルが備わっています。
L2VPN アドレス ファミリ
Cisco IOS Release 12.2(33)SRB およびそれ以降のリリースでは、L2VPN アドレス ファミリに対するサポートが追加されました。L2VPN は、IP Security(IPsec; IP セキュリティ)または Generic Routing Encapsulation(GRE; 総称ルーティング カプセル化)などの暗号化テクノロジーを使用して、セキュアでないネットワーク内で運用されるセキュアなネットワークと定義されています。L2VPN アドレス ファミリは BGP ルーティング コンフィギュレーション モードで設定され、L2VPN アドレス ファミリ内では VPLS Subsequent Address Family Identifier(SAFI)がサポートされています。
L2VPN アドレス ファミリに対する BGP サポートでは、L2VPN エンドポイント プロビジョニング情報を配布する BGP をベースとしたオートディスカバリ メカニズムが導入されています。BGP では、エンドポイント プロビジョニング情報を保存する際に個別の L2VPN Routing Information Base(RIB; ルーティング情報ベース)が使用されます。これは、レイヤ 2 Virtual Forwarding Instance(VFI)が設定されたときに毎回アップデートされます。プレフィクスおよびパス情報は L2VPN データベースに保存され、最良パスが BGP により決定されるようになります。BGP により、アップデート メッセージですべての BGP ネイバーにエンドポイント プロビジョニング情報が配布されるとき、L2VPN ベースのサービスをサポートするために、エンドポイント情報を使用して Pseudowire メッシュがセットアップされます。
BGP オートディスカバリ メカニズムにより、Cisco IOS バーチャル プライベート LAN サービス(VPLS)機能に必要不可欠な L2VPN サービスのセットアップが簡易化されます。VPLS は、高速イーサネット使用した堅牢でスケーラブルな IP MPLS ネットワークによる大規模な LAN として、地理的に分散した拠点間を接続することで柔軟なサービスの展開を実現します。VPLS の詳細については、「 VPLS Autodiscovery: BGP Based 」機能を参照してください。
L2VPN アドレス ファミリでは、次の BGP コマンドライン インターフェイス(CLI)コマンドがサポートされています。
• bgp scan-time
• bgp nexthop
• neighbor activate
• neighbor advertisement-interval
• neighbor allowas-in
• neighbor capability
• neighbor inherit
• neighbor peer-group
• neighbor maximum-prefix
• neighbor next-hop-self
• neighbor next-hop-unchanged
• neighbor remove-private-as
• neighbor route-map
• neighbor route-reflector-client
• neighbor send-community
• neighbor soft-reconfiguration
• neighbor soo
• neighbor weight
(注) L2VPN を使用したルート リフレクタでは、neighbor next-hop-self コマンドおよび neighbor next-hop-unchanged コマンドはサポートされていません。
L2VPN アドレス ファミリ コンフィギュレーションで使用された場合、BGP 内で使用されるルート マップでは、プレフィクス処理、タグ処理、および自動タグ処理に関連するすべてのコマンドは無視されます。その他すべてのルート マップ コマンドはサポートされています。
L2VPN アドレス ファミリでは、BGP マルチパスおよびコンフェデレーションはサポートされていません。
L2VPN アドレス ファミリでの BGP 設定の詳細については、Cisco IOS Release 12.2(33)SRB の「 BGP Support for the L2VPN Address Family 」機能を参照してください。
BGP CLI 削除の考慮事項
小規模な BGP ネットワークであっても、BGP CLI コンフィギュレーションは非常に複雑になることがあります。すべての CLI コンフィギュレーションを削除する必要がある場合は、CLI を削除することで生じるあらゆる影響を考慮する必要があります。現在の実行コンフィギュレーションを分析し、現在の BGP ネイバー関係、アドレス ファミリの考慮事項、その他の設定済みルーティング プロトコルを判断します。多くの BGP CLI コマンドは、CLI コンフィギュレーションのその他の部分に影響します。たとえば次のコンフィギュレーションでは、ルート マップは BGP 自律システム番号の一致に使用され、その後一致したルートを Enhanced Interior Gateway Routing Protocol(EIGRP; 拡張内部ゲートウェイ ルーティング プロトコル)のその他の自律システム番号にセットする際に使用されます。
route-map bgp-to-eigrp permit 10
3 つの異なる自律システムにある BGP ネイバーが設定およびアクティブ化されます。
neighbor 172.16.1.2 remote-as 45000
neighbor 192.168.1.2 remote-as 40000
neighbor 192.168.3.2 remote-as 50000
neighbor 172.16.1.2 activate
neighbor 192.168.1.2 activate
neighbor 192.168.3.2 activate
network 172.17.1.0 mask 255.255.255.0
その後、EIGRP ルーティング プロセスが設定され、ルート マップによりルートがフィルタリングされて BGP ルートが EIGRP に再配布されます。
redistribute bgp 45000 metric 10000 100 255 1 1500 route-map bgp-to-eigrp
後でルート マップを削除する場合は、 route-map コマンドの no 形式を使用します。ほぼすべてのコンフィギュレーション コマンドには no 形式があります。通常、 no 形式は機能をディセーブルにします。しかし、この CLI コンフィギュレーションの例では、単にルート マップをディセーブルにしただけではルート再配布は停止しません。フィルタリングまたはルート マップからの一致が行われなくなるだけです。ルート マップを使用しないで再配布を行うと、ご使用のネットワークに予期しない結果が生じるおそれがあります。アクセス リストまたはルート マップなどの他のコマンド タイプが含まれたコンフィギュレーション コマンドは、組み込まれているコマンドの削除により生じる影響を軽減するために、コンフィギュレーション コマンド自体も削除または変更する必要があるか検討する必要があります。
次の CLI コンフィギュレーションでは、ルート マップおよび再配布の両方が削除されます。
no route-map bgp-to-eigrp
no redistribute bgp 45000
BGP CLI コンフィギュレーションの削除設定についての詳細は、「 Configuring a Basic BGP Network 」モジュールを参照してください。