next up previous contents
Next: 9.7 BGPの動作の確認 Up: 9. BGP Previous: 9.5 bgpdの設定 1

9.6 bgpdの設定 2.

先の 設定では、自分のASから出て行くパケットについては、 202.11.98.17 を優先させていますが、 外部ピアに関してはそのポリシーは反映されていません。 つまり、外部から202.11.98.17/28 に来る際にどの入り口を使うかは、 ネットワークのコストに応じて自動的に決まります。 しかしながら、メインの入り口を一つに決めたい場合には、 ピアASにMED(Multi-Exit-Descriminator) 属性値を設定することでそれを知らせますが、MEDはピアASにしか伝わり ません。 そこで、もしネットワーク全体に対してそれを伝えたい場合には、 少し工夫が必要です。

ここではネットワーク全体に通知する設定について述べます。 BGP はDV型ですので、基本的は コストはパスが短いものを優先させます。そこで、外部にある特定の 入り口を選択させるように、外に流すアップデートメッセージで、自分の ネットワークの通常使いたくないBGPルータが出すメッセージのパスを 長くするようにします。

勿論、主に使いたいBGPルータの方ではこうしたテクニックは使いません(つまり は、ここから発せられるメッセージのパスが最短になるようにします)。

以下では、先の設定との違いのみを掲げます(先の設定に追加するだけです)。
! BGPd config
!
hostname pc2f003-bgpd
!        中略
!
  neighbor      202.11.98.34 route-map LOCAL-PREF2 in
  ! 以下の行で、出て行くメッセージを指定する
  neighbor      202.11.98.34 route-map LONG-PATH   out
  !
!        中略
! パスを長くする
route-map LONG-PATH permit 40
 match ip address MYNET
 set as-path prepend 65001 65001
! 自分のネットワークの情報のみ
access-list MYNET permit 202.11.97.16/28
(上の設定はメインではないルータに設定する点に注意して下さい。)

設定内容は以下の通りです。

  1. access-list ac-list-name [permit|deny] ip-range

    条件に一致するIPアドレスを選びます(permit)。 ac-list-nameに番号を使う場合には注意してください(別の使い方をします)。 名前で設定すると良いでしょう。ip-rangeは、プレフィックス長を指定 した書き方が使えます。

  2. match ip address ac-list-name

    先に指定したIPの範囲にマッチした場合条件が満たされます。

  3. set as-path prepend AS-list

    パスに AS-listを追加します。ここでは念のために、65001 を2つ追加します。 そのために、このアップデートメッセージを受け取ったASは、パスに 65001,65001,65001 が入っているのを発見するでしょう(3つめはデフォルトで挿入され る自ASNです)。一方、主なゲートウェイに したいルータから出たメッセージのパスには、65001 が1つだけしか入っていません。 それによって、これらのメッセージを受けたBGPルータは、202.11.98.16/28 への 経路として、もっとも短いパスを選択することになります。勿論、このゲートウェイに 何かがあった場合には、次の選択として、長いパスを流しているBGPルータを 経路として選ぶことになります。



Noriyo Kanayama