BGP 条件アドバタイズメント

条件アドバタイズメントとは

BGPの条件アドバタイズメント(Conditional Advertisement)とは、特定の条件が満たされたときにのみ、BGPルートをアドバタイズ(広告)する機能です。

条件アドバタイズメントの仕組み

BGPの条件アドバタイズメントでは、トリガールート(存在を条件とするルート)とアドバタイズルート(条件が満たされたときに広告されるルート)の2つを使用します。

  • トリガールート: このルートが存在するかどうかで、他のルートをアドバタイズするかどうかを決定するためのルートです。通常、トリガールートが存在しない場合に、指定されたルートをアドバタイズするように設定されます。
  • アドバタイズルート: トリガールートの状態によって、アドバタイズされるルートです。通常、トリガールートが存在しない場合に、このルートが他のピアにアドバタイズされます。

条件アドバタイズメントの設定

基本構文

1.ルートマップの設定

アドバタイズするルートとトリガールートをルートマップで指定します。

プレフィックス リストを設定します。
Router(config)#ip prefix-list list-name [seq seq-value ] {deny network / length | permit network / length } [ge ge-value ] [le le-value ]
ルート マップを設定し、ルート マップ設定モードに入ります。
Router(config)#route-map map-tag [permit | deny ] [sequence-number ]

条件となるルートを指定します。
Router(config-route-map)#match ip address {access-list-number | access-list-name | prefix-list prefix-list-name }

アドバタイズするルートを指定します。
Router(config-route-map)#match ip address {access-list-number | access-list-name | prefix-list prefix-list-name }

2.BGPの設定

Router(config)#router bgp as-number
Router(config-router)#neighbor address advertise-map route-map-name non-exist-map route-map-name

設定例

現状、Router1はRouter3(Lo3:3.3.3.3),Router4(Lo4:4.4.4.4)どちらのルート情報もアドバタイズされていて、ルート情報を受信することが出来ています。

3.3.3.3/32のルート情報が存在しなければ、4.4.4.4/32のルート情報をアドバタイズするように設定します。(通常時は4.4.4.4/32のルート情報はアドバタイズされない)

通常時、4.4.4.4/32のルート情報をアドバタイズされなくなりました。

3.3.3.3/32のルート情報を消すために、インターフェイスをシャットダウンします。

3.3.3.3/32のルート情報が消えたことにより、、4.4.4.4/32のルート情報をアドバタイズされるようになりました。