BGP ピアグループおよびアップデートグループ、テンプレート

BGPピアグループとは

BGPピアグループ(BGP Peer Group)は、BGP (Border Gateway Protocol) の設定において、複数のBGPピア(隣接するルーター)に共通の設定を適用するための機能です。BGPネイバーが同じ更新ポリシー(アウトバウンドルートマップ、配布リスト、フィルタリスト、更新ソースなど)を使用する場合、ピアグループにグループ化すると設定が簡素化され、更新が効率的になります。この方法は多数のピアを設定する際に特に推奨されます。

BGPピアグループの設定

基本構文

BGPピアグループは以下の手順で設定します。

  1. ピアグループを作成する。
  2. ピアグループにオプションを割り当てる。
  3. ネイバーをピアグループメンバーとして追加する。

ピアグループメンバーはデフォルトでピアグループのすべての設定オプション(remote-as、version、update-source、out-route-map、out-filter-list、out-dist-list、minimum-advertisement-interval、next-hop-selfなど)を継承し、変更も自動的に適用されます。必要に応じて、アウトバウンド更新に影響しないオプションを上書き設定することも可能です。

1.ピアグループの作成

BGP ピア グループを作成します。
Router(config)#router bgp autonomous-system
Router(config-router)#neighbor peer-group-name peer-group

2.ピアグループの共通オプション割り当て

基本的に様々なポリシーを設定することが出来ます。以下は一例を紹介します。

指定した隣接ピア(IPアドレスまたはピアグループ名)に対して、リモートAS番号を設定します。
Router(config-router)#neighbor {ip-address | peer-group-nameremote-as number

指定した隣接ピアに対して、自分自身を次ホップとして設定します。
Router(config-router)#neighbor {ip-address | peer-group-namenext-hop-self

指定した隣接ピアに対して、ルートマップを適用します。
Router(config-router)#neighbor {ip-address | peer-group-nameroute-map map-name {in | out}

指定した隣接ピアに対して、BGPアップデートパケットを送信する際に使用するインターフェースを指定します。
Router(config-router)#neighbor {ip-address | peer-group-nameupdate-source interface

3.ネイバーへのピアグループの追加

BGP ネイバーをピア グループのメンバーにします。
Router(config-router)#neighbor ip-address peer-group peer-group-name

設定例

PEER_GROUPという名前のピアグループを作成し、複数のBGPピアに共通の設定を適用しています。

BGP ピア テンプレート

BGPピアテンプレートは、ピアグループの制限に対処するために導入され、構成管理をサポートします。これは、ポリシーを共有するネイバーに適用できる設定パターンで、再利用可能で継承もサポートしています。ネットワークオペレータは、これを使用して個別のネイバー設定をグループ化し、複雑な設定パターンを定義できます。

ピアテンプレートには2種類あります:

  1. ピアセッションテンプレート:すべてのアドレスファミリおよびNLRI構成モードに共通するセッションコマンドを適用。
  2. ピアポリシーテンプレート:特定のアドレスファミリおよびNLRI構成モード内で適用されるコマンドを適用。

ピアテンプレートは、ネイバー構成の柔軟性を向上させ、ピアグループ構成の代替手段を提供します。これにより、ネットワークの構成の柔軟性が向上し、コンバージェンスが高速化します。ただし、BGPネイバーはピアグループとピアテンプレートの両方で動作するようには設定できず、どちらか一方の方法のみで設定する必要があります。

ピアセッションテンプレート

ピアセッションテンプレートは、共通のセッション設定を持つネイバーのグループに適用される設定パターンです。これにより、設定が簡素化され、複数のネイバーに一貫した設定を適用できます。

  • セッション設定のグループ化: 一般的なセッションコマンドを一度設定すると、多くのネイバーに適用できます。
  • 継承サポート: ピアセッションテンプレートは直接継承と間接継承をサポートし、最大8つのセッション設定をネイバーに適用可能です。
  • セッションコマンドの優先順位: 継承された設定よりも直接適用された設定が優先され、重複する設定ステートメントは後続の値が優先されます。

ピアポリシーテンプレート

ピアポリシーテンプレートは、特定のアドレスファミリやNLRI設定モードに適用されるBGPポリシーコマンドをグループ化して適用するための設定パターンです。これにより、同じポリシーを共有する複数のネイバーに一貫した設定を簡単に適用できます。

  • 設定の簡素化: 一度設定すると、直接適用または継承を通じて多くのネイバーに適用可能。
  • 継承のサポート: 直接継承と間接継承をサポートし、最大8つのピアポリシーテンプレートを適用可能。
  • 柔軟性: 継承機能により、共通設定と特定のポリシー設定を適用することで、BGP設定の柔軟性が向上。

継承

  • 直接継承: ピアポリシーテンプレートを直接適用。
  • 間接継承: 最大7つのピアポリシーテンプレートから設定を継承。
  • 評価順: 最も低いシーケンス番号のinherit peer-policyステートメントから評価され、最も高いシーケンス番号で終わる。

ピアセッションテンプレートの設定

基本構文

ルータ設定モードに入り、BGP ルーティング プロセスを作成します。
Router(config)#router bgp autonomous-system-number

ピア セッション テンプレートを作成します。
Router(config-router)#template peer-session session-template-name

(オプション) 指定された自律システム内のリモート ネイバーとのピアリングを設定します。
Router(config-router-stmp)#remote-as autonomous-system-number

(オプション) BGP キープアライブおよびホールド タイマーを設定します。
Router(config-router-stmp)#timers keepalive-interval hold-time

継承設定

inherit peer-session コマンドを使用してピア セッション テンプレートの継承を設定します。ピア セッション テンプレートを作成して設定し、別のピア セッション テンプレートから設定を継承できるようにします。

ピア セッション テンプレートを作成します。
Router(config-router)#template peer-session session-template-name

(オプション) 説明を設定します。テキスト文字列は最大 80 文字です。
Router(config-router-stmp)#description text-string

(オプション) ルーティング テーブルの更新を受信するために特定のソースまたはインターフェイスを選択するようにルータを設定します。
Router(config-router-stmp)#update-source interface-type interface-number

このピア セッション テンプレートを構成して、別のピア セッション テンプレートの構成を継承します。
Router(config-router-stmp)#inherit peer-session session-template-name

ネイバーへの継承設定

ネイバーが設定を継承できるように、ピア セッション テンプレートをネイバーに送信します。
Router(config-router)#neighbor ip-address inherit peer-session session-template-name

neighbor inherit ステートメントが機能するには、明示的なremote-as ステートメントが必要です。ピアリングが設定されていない場合、次の設定で指定されたネイバーはセッション テンプレートを受け入れません。
Router(config-router)#neighbor ip-address remote-as autonomous-system-number

設定例

セッションテンプレートの作成と継承設定、ネイバーへのテンプレートの継承をする設定例です。

ネイバールータでtimers 30 90の設定が継承されていることを確認できます。

ピアポリシーテンプレートの設定

基本構文

ルータ設定モードに入り、BGP ルーティング プロセスを作成します。
Router(config)#router bgp autonomous-system-number

ピア ポリシー テンプレートを作成します。
Router(config-router)#template peer-policy policy-template-name

オプション

ネイバーがこのピアから受け入れるプレフィックスの最大数を設定します。
Router(config-router-ptmp)#maximum-prefix prefix-limit [threshold ] [restart restart-interval | warning-only ]

このネイバーから送信されるルートのデフォルトの重みを設定します。
Router(config-router-ptmp)#weight weight-value

ルータによって受信されるプレフィックス、またはルータから送信されるプレフィックスをフィルタリングします。
Router(config-router-ptmp)#prefix-list prefix-list-name {in | out }

指定されたルート マップを着信ルートまたは発信ルートに適用します。
Router(config-router-ptmp)#route-map map-name {in | out }

継承設定

ピア ポリシー テンプレートを作成します。
Router(config-router)#template peer-policy policy-template-name

別のピア ポリシー テンプレートの設定を継承するようにピア ポリシー テンプレートを設定します。
Router(config-router-ptmp)#inherit peer-policy policy-template-name sequence-number

ネイバーへの継承設定

アドレス ファミリ設定モードに入ります。
Router(config-router)#address-family ipv4 [multicast | unicast | vrf vrf-name ]

ネイバーが設定を継承できるように、ピア ポリシー テンプレートをネイバーに送信します。
Router(config-router-af)#neighbor ip-address inherit peer-policy policy-template-name

設定例

ポリシーテンプレートの作成と継承設定、ネイバーへのテンプレートの継承をする設定例です。

ネイバー192.168.12.2ではプレフィックスリストで3.3.3.3のルート情報を受信しないように設定しているポリシーを継承しているのでルーティングテーブルに表示されません。

参考文献

Configuring BGP
BGP Configuration Guide