BGPピアグループとは
BGPピアグループ(BGP Peer Group)は、BGP (Border Gateway Protocol) の設定において、複数のBGPピア(隣接するルーター)に共通の設定を適用するための機能です。BGPネイバーが同じ更新ポリシー(アウトバウンドルートマップ、配布リスト、フィルタリスト、更新ソースなど)を使用する場合、ピアグループにグループ化すると設定が簡素化され、更新が効率的になります。この方法は多数のピアを設定する際に特に推奨されます。
BGPピアグループの設定
基本構文
BGPピアグループは以下の手順で設定します。
- ピアグループを作成する。
- ピアグループにオプションを割り当てる。
- ネイバーをピアグループメンバーとして追加する。
ピアグループメンバーはデフォルトでピアグループのすべての設定オプション(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-name} remote-as number
指定した隣接ピアに対して、自分自身を次ホップとして設定します。
Router(config-router)#neighbor {ip-address | peer-group-name} next-hop-self
指定した隣接ピアに対して、ルートマップを適用します。
Router(config-router)#neighbor {ip-address | peer-group-name} route-map map-name {in | out}
指定した隣接ピアに対して、BGPアップデートパケットを送信する際に使用するインターフェースを指定します。
Router(config-router)#neighbor {ip-address | peer-group-name} update-source interface
3.ネイバーへのピアグループの追加
BGP ネイバーをピア グループのメンバーにします。
Router(config-router)#neighbor ip-address peer-group peer-group-name
設定例
PEER_GROUPという名前のピアグループを作成し、複数のBGPピアに共通の設定を適用しています。
R1(config)#router bgp 65001
R1(config-router)#neighbor PEER_GROUP peer-group
R1(config-router)#neighbor PEER_GROUP remote-as 65001
R1(config-router)#neighbor PEER_GROUP next-hop-self
R1(config-router)#neighbor 192.168.12.2 peer-group PEER_GROUP
R1(config-router)#neighbor 192.168.13.3 peer-group PEER_GROUP
R1(config-router)#network 1.1.1.1 mask 255.255.255.255
BGP ピア テンプレート
BGPピアテンプレートは、ピアグループの制限に対処するために導入され、構成管理をサポートします。これは、ポリシーを共有するネイバーに適用できる設定パターンで、再利用可能で継承もサポートしています。ネットワークオペレータは、これを使用して個別のネイバー設定をグループ化し、複雑な設定パターンを定義できます。
ピアテンプレートには2種類あります:
- ピアセッションテンプレート:すべてのアドレスファミリおよびNLRI構成モードに共通するセッションコマンドを適用。
- ピアポリシーテンプレート:特定のアドレスファミリおよび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
設定例
セッションテンプレートの作成と継承設定、ネイバーへのテンプレートの継承をする設定例です。

R1(config)#router bgp 65001
R1(config-router)#template peer-session INHERIT-SETTINGS
R1(config-router-stmp)#description INHERIT-SETTINGS
R1(config-router-stmp)#exit
R1(config-router)#template peer-session COMMON-SETTINGS
R1(config-router-stmp)#remote-as 65001
R1(config-router-stmp)#timers 30 90
R1(config-router-stmp)#inherit peer-session INHERIT-SETTINGS
R1(config-router-stmp)#exit
R1(config-router)#neighbor 192.168.12.2 inherit peer-session COMMON-SETTINGS
R1(config-router)#
*Aug 25 14:22:30.350: %BGP-5-ADJCHANGE: neighbor 192.168.12.2 Up
ネイバールータで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
設定例
ポリシーテンプレートの作成と継承設定、ネイバーへのテンプレートの継承をする設定例です。

R1(config)#ip prefix-list POLICY-PRE seq 5 deny 3.3.3.3/32
R1(config)#ip prefix-list POLICY-PRE seq 10 permit any
R1(config)#router bgp 65001
R1(config-router)#template peer-policy COMMON-POLICY
R1(config-router-ptmp)#weight 300
R1(config-router-ptmp)#exit
R1(config-router)#template peer-policy INHERIT-POLICY
R1(config-router-ptmp)#prefix-list POLICY-PREB in
R1(config-router-ptmp)#inherit peer-policy COMMON-POLICY 10
R1(config-router-ptmp)#exit
R1(config-router)#address-family ipv4 unicast
R1(config-router-af)#neighbor 192.168.12.2 inherit peer-policy INHERIT-POLICY
R1(config-router-af)#neighbor 192.168.13.3 inherit peer-policy INHERIT-POLICY
ネイバー192.168.12.2ではプレフィックスリストで3.3.3.3のルート情報を受信しないように設定しているポリシーを継承しているのでルーティングテーブルに表示されません。
