23.1.5 BGP4およびBGP4+【OP-BGP】
- 〈この項の構成〉
(1) 学習経路フィルタリング
BGP4およびBGP4+では,学習した経路をすべてフィルタできます。フィルタした結果学習しないことになった経路はデフォルトではルーティングテーブルに導入されません。
(a) フィルタの適用方法と適用順
学習した経路を,distribute-list inとneighbor inに従ってフィルタします。neighbor inで指定したフィルタは,指定したピア,またはピアグループに所属するピアから学習した経路にだけ適用します。学習経路フィルタリングに使用するコンフィグレーションコマンドを次の表に示します。
コマンド名 |
パラメータ |
フィルタ対象経路 |
---|---|---|
neighbor in(BGP4)
|
<ipv4 address>(ピアアドレス) |
指定したピアから学習した経路だけ,フィルタリング対象になります。 |
neighbor in(BGP4+)
|
<ipv6 address>(ピアアドレス) |
|
neighbor in(BGP4)
|
<peer group>(ピアグループ) |
指定したピアグループに所属するピアから学習した経路だけ,フィルタリング対象になります。 |
neighbor in(BGP4+)
|
<peer group>(ピアグループ) |
|
distribute-list in(BGP4) |
なし |
BGP4またはBGP4+で学習した経路すべてがフィルタリング対象になります。 |
distribute-list in(BGP4+) |
なし |
経路の学習後,指定したフィルタをBGP4およびBGP4+それぞれの順番に適用します。適用するフィルタが一つもない場合,またはフィルタを適用した結果がすべてpermitである場合,学習経路を有効経路としてルーティングテーブルに導入します。適用した結果がdenyであるフィルタが一つでもある場合,その学習経路は無効経路になります。
(b) 学習経路フィルタリングで変更できる経路属性
BGP4およびBGP4+の学習経路フィルタリングで変更できる属性を次の表に示します。
属性 |
デフォルト値 |
---|---|
ディスタンス値 |
distance bgpで指定した値。 指定していない場合は,次の値を使用します。 内部ピア:200 外部ピア:20 メンバーAS間ピア:200 |
MED属性 |
経路受信時の属性値。 |
LOCAL_PREF属性 |
内部ピア:経路受信時の属性値。 外部ピア:bgp default local-preferenceで指定した値。未指定時は100。 メンバーAS間ピア:経路受信時の属性値 |
AS_PATH属性 |
経路受信時の属性値。 |
COMMUNITIES属性 |
経路受信時の属性値。 |
ORIGIN属性値 |
経路受信時の属性値。 |
ディスタンス値以外の値は,BGP4およびBGP4+の優先経路選択に使用します。ディスタンス値は,ルーティング種別間の優先経路選択に使用します。
- 注意
-
AS_PATH属性にASを付け加えられるのは,外部ピアから学習した経路だけです。内部ピアやメンバーAS間ピアから学習した経路のAS_PATH属性にはASを加えられません。
(2) 広告経路フィルタリング
BGP4では,ルーティングテーブルの優先経路のほかに,他ルーティングの経路を優先したために優先でなくなったBGP4経路,およびBGP4のnetwork設定による経路を広告できます。また,BGP4+でも同様です。この三種類について宛先ネットワークが同じ経路を広告することになった場合,説明した順で経路を一つ選択し,広告します。
広告経路フィルタリングの設定をしていない場合,BGP4経路およびBGP4+経路だけを広告します。ただし,経路の学習元ピアと同じピアへ広告し戻すことはできません。
(a) 広告経路フィルタリングで変更できる経路属性
BGP4広告経路フィルタリングで変更できる属性を次の表に示します。
属性 |
デフォルト値 |
---|---|
MED属性 |
広告先ピア種別と経路学習元プロトコルによって異なります。 内部ピアへ広告する場合:BGP4経路の場合,メトリック値を引き継ぎます。BGP4以外の経路の場合,default-metricで設定した値を使用します。default-metricで値を指定していない場合,値なしで広告します。 外部ピアへ広告する場合:default-metricで設定した値を使用します。default-metricで値を指定していない場合,値なしで広告します。 メンバーAS間ピアへ広告する場合:BGP4経路の場合,メトリック値を引き継ぎます。BGP4以外の経路の場合,default-metricで設定した値を使用します。default-metricで値を指定していない場合,値なしで広告します。 |
LOCAL_PREF属性 |
BGP4経路の場合,LOCAL_PREF属性を引き継ぎます。 BGP4以外の経路の場合,bgp default local-preferenceで設定した値を使用します。bgp default local-preferenceを設定していない場合,値100を使用します。ただし,広告先ピアが外部ピアの場合,広告にLOCAL_PREF属性は含まれません。 |
AS_PATH属性 |
ルーティングテーブルの経路の値を引き継ぎます。 |
ORIGIN属性 |
|
COMMUNITIES属性 |
BGP4+広告経路フィルタリングで変更できる属性を次の表に示します。
属性 |
デフォルト値 |
---|---|
MED属性 |
広告先ピア種別と経路学習元プロトコルによって異なります。 内部ピアへ広告する場合:BGP4+経路の場合,メトリック値を引き継ぎます。BGP4+以外の経路の場合,default-metricで設定した値を使用します。default-metricで値を指定していない場合,値なしで広告します。 外部ピアへ広告する場合:default-metricで設定した値を使用します。default-metricで値を指定していない場合,値なしで広告します。 メンバーAS間ピアへ広告する場合:BGP4+経路の場合,メトリック値を引き継ぎます。BGP4+以外の経路の場合,default-metricで設定した値を使用します。default-metricで値を指定していない場合,値なしで広告します。 |
LOCAL_PREF属性 |
BGP4+経路の場合,LOCAL_PREF属性を引き継ぎます。 BGP4+以外の経路の場合,bgp default local-preferenceで設定した値を使用します。bgp default local-preferenceを設定していない場合,値100を使用します。ただし,広告先ピアが外部ピアの場合,広告にLOCAL_PREF属性は含まれません。 |
AS_PATH属性 |
ルーティングテーブルの経路の値を引き継ぎます。 |
ORIGIN属性 |
|
COMMUNITIES属性 |
- 注意
-
コンフィグレーションコマンドneighbor send-communityを設定している場合だけ,COMMUNITIES属性を広告します。
(b) フィルタの適用方法と適用順
広告経路フィルタリングでのフィルタの適用方法と適用順を次に示します。
-
BGP4またはBGP4+で広告したい経路を選択します。
広告したい経路の学習元プロトコルおよび経路種別をコンフィグレーションコマンドredistributeで設定します。このコマンドで指定されたプロトコルの経路だけが広告対象になります。また,route-mapを指定すると,route-mapでフィルタした結果がpermitである経路だけを広告対象にできます。redistributeでは,ルーティングテーブル上の経路属性値と条件を比較します。
BGP4経路およびBGP4+経路は,redistributeで指定しなくても広告されます。
redistributeに経路属性を変更するroute-mapや経路属性を直接指定すれば,広告する経路の属性も変更できます。
-
MED属性,LOCAL_PREF属性をプロトコルのデフォルト値に設定します。
ただし,redistributeで属性値を変更した場合は,その値を使用します。
-
redistributeで選択した経路に,neighbor outとdistribute-list outの設定に従ってフィルタを適用します。
ピアまたはピアグループを指定して(neighbor out),その所属するピアへ広告する場合にだけフィルタを適用します。また,プロトコルを指定して,そのプロトコルで学習した経路にだけフィルタを適用します。
広告経路フィルタリングのコンフィグレーションコマンドを次の表に示します。
表23‒22 広告経路フィルタリングのコンフィグレーションコマンド コマンド名
パラメータ
フィルタ対象経路
neighbor out(BGP4)
-
route-map指定
-
ip access-list指定
-
ip prefix-list指定
<ipv4 address>(ピアアドレス)
<protocol>
指定したピアへ広告する経路,かつ指定したプロトコルの経路にフィルタを適用します。
neighbor out(BGP4+)
-
route-map指定
-
ipv6 prefix-list指定
<ipv6 address>(ピアアドレス)
<protocol>
neighbor out(BGP4)
-
route-map指定
-
ip access-list指定
-
ip prefix-list指定
<ipv4 address>(ピアアドレス)
指定したピアへ広告する経路にフィルタを適用します。
neighbor out(BGP4+)
-
route-map指定
-
ipv6 prefix-list指定
<ipv6 address>(ピアアドレス)
neighbor out(BGP4)
-
route-map指定
-
ip access-list指定
-
ip prefix-list指定
<peer group>(ピアグループ)
<protocol>
指定したピアグループに所属するピアへ広告する経路,かつ指定したプロトコルの経路にフィルタを適用します。
neighbor out(BGP4+)
-
route-map指定
-
ipv6 prefix-list指定
<peer group>(ピアグループ)
<protocol>
neighbor out(BGP4)
-
route-map指定
-
ip access-list指定
-
ip prefix-list指定
<peer group>(ピアグループ)
指定したピアグループに所属するピアへ広告する経路にフィルタを適用します。
neighbor out(BGP4+)
-
route-map指定
-
ipv6 prefix-list指定
<peer group>(ピアグループ)
distribute-list out(BGP4)
<protocol>
広告先に関係なく,指定したプロトコルの経路にフィルタを適用します。
distribute-list out(BGP4+)
<protocol>
distribute-list out(BGP4)
なし
広告先に関係なく,すべての経路にフィルタを適用します。
distribute-list out(BGP4+)
なし
経路をピアへ広告するに当たり,広告先や経路学習元プロトコルに応じてフィルタを選択し,それを表のBGP4およびBGP4+それぞれの順番に適用します。適用するフィルタが一つもない場合,またはフィルタした結果がすべてpermitである場合,指定ピアへ経路を広告します。適用した結果がdenyである経路フィルタが一つでもある場合,そのピアへはその経路を広告しません。
neighbor outやdistribute-list outにroute-mapを指定した場合,広告属性のデフォルト値やredistributeで変更したあとの属性値に従って経路をフィルタします。
neighbor outやdistribute-list outに属性を変更するroute-mapを指定すれば,広告する経路の属性も変更できます。
-