ルーティングの再配布

ルーティング情報の再配布とは

再配布とはあるルーティングプロトコルで学習したルートを、別のルーティングプロトコルに再配布(アドバタイズ)する技術です。これにより、複数の異なるルーティングプロトコルが共存しているネットワークにおいて、相互にルート情報を交換し、全体のネットワーク接続性を維持することができます。

再配布の必要性

通常、異なるルーティングプロトコルはそれぞれ独立して動作します。たとえば、ある部分でEIGRPを使用し、別の部分でOSPFを使用しているネットワークでは、それぞれのルーティングプロトコルは他のプロトコルで学習したルート情報を自動的に認識しません。そのため、ネットワーク全体の接続を維持するために、一方のプロトコルで学習したルートをもう一方のプロトコルに再配布する必要があります。

ルート再配布の設定

基本構文

以下のコマンドを使用して、ルート情報を再配布します。
Device(config-router)#redistribute protocol [process-id] [metric metric-value] [metric-type type-value] [match {internal | external 1 | external 2}] [tag tag-value] [route-map map-tag] [subnets] [nssa-only]

コマンド用途内容
protocolすべてルートの再配布元のプロトコルを指定します。
process-idすべて再配布元のプロトコルのプロセスIDやAS番号を指定します。
metric metric-value※OSPF、EIRGPへの再配布再配布するルートに割り当てるメトリック値を指定します。
metric-type type-valueOSPFへの再配布メトリックの種類を指定します。OSPFでは、type 1 または type 2 として、異なるタイプのメトリックを指定できます。type 1はルートのメトリックに外部メトリックを加算し、type 2は外部メトリックのみを使用します。
match {internal | external 1 | external 2}OSPFからの再配布internal: OSPFの内部ルート(OSPF領域内で生成されたルート)を再配布します。
external 1: OSPFの外部タイプ1ルート(外部プロトコルから再配布されたルートで、内部メトリックも考慮する)を再配布します。
external 2: OSPFの外部タイプ2ルート(外部プロトコルから再配布されたルートで、外部メトリックのみを考慮する)を再配布します。
tag tag-valueすべて再配布されたルートに対してタグを付与します。
route-map map-tagすべて再配布するルートにフィルタリングやメトリックの変更を行うルートマップを適用します。
subnetsOSPFへの再配布OSPFは再配布時に、デフォルトではクラスフルルートのみ(ネットワーククラスに基づくルート)を再配布します。クラスレスサブネットも含めて再配布する場合は、subnetsオプションを指定する必要があります。
nssa-onlyOSPFへの再配布再配布されるルートがNSSAエリアに限定され、他のエリアには再配布されません。

metric metric-valueの詳細

ルーティングプロトコルによって使用するメトリックが異なり、それぞれで記述方法が異なります。

EIGRPへ再配布する場合

EIGRPは複合メトリックを使用するのでそれぞれの値を指定する必要があります。
Device(config-router)#redistribute protocol [process-id] metric bw delay reliability load mtu

メトリック意味
bw帯域幅(Bandwidth)を指定します。単位はKbps(キロビット/秒)です。
delay遅延(Delay)を指定します。単位は10マイクロ秒です。
reliability信頼性(Reliability)を指定します。範囲は0〜255で、255が最も信頼性が高いことを意味します。
load負荷(Load)を指定します。範囲は0〜255で、0が最も軽い負荷、255が最も重い負荷を表します。
mtuMTUを指定します。

OSPFへ再配布する場合

OSPFではメトリックとしてコストを指定します。
Device(config-router)#redistribute protocol [process-id] metric metric-value

メトリック意味
metric-value再配布するルートのコストを設定します。デフォルト(指定しない場合)は20です。

デフォルト値の設定

再配布されたルートのデフォルトのメトリック値を設定します。
Router(config-router)#default-metric number

設定例

OSPFからEIGRPへの再配布

この設定例では、OSPFからEIGRPへ再配布されるルートには以下のメトリックが適用されます。

  • 帯域幅:1 Gbps
  • 遅延:10 マイクロ秒
  • 信頼性:最大(255)
  • 負荷:非常に低い(1)
  • MTU:1500バイト

EIGRPからOSPFへの再配布

この設定例では再配布されたルートに対してコスト20に設定して、メトリックタイプをE1に指定します。E1メトリックは、再配布されたルートのメトリックとして、OSPFの内部コストを加算してルートコストを計算します。

ルートマップの設定

ルートマップは、ルートの再配布やポリシーベースルーティングを実装するために使用されます。ルーティングプロトコル間でルートを再配布する条件を定義するには、route-map コマンドを設定し、必要に応じて match コマンドを使用します。

設定手順

  1. ルートマップの作成: route-map コマンドを使用。
  2. 条件の設定: ルートマップ設定モードで少なくとも1つの match コマンドを使用して条件を定義。

この設定により、ルートの再配布が効率的に管理されます。

使用できるmatchコマンドは以下の通りです。

コマンド内容
match as-path path-list-numberBGP 自律システム パス アクセス リストと一致します。
match community {standard-list-number | expanded-list-number | community-list-name match community [exact ]}BGP コミュニティと一致します。
match ip address {access-list-number [access-list-number ] | prefix-list prefix-list-name 標準アクセス リスト、拡張アクセス リストによって許可されている宛先ネットワーク アドレスを持つルートと一致します。
match ip address prefix-list prefix-list-name プレフィックス リストによって許可されている宛先ネットワーク アドレスを持つルートと一致します。
match metric metric-value指定されたメトリックとルートを一致させます。
match ip next-hop {access-list-number | access-list-name } 指定されたアクセス リストの 1 つによって渡されたネクスト ホップ デバイス アドレスと一致します。
match tag tag-value指定されたタグ値と一致します。
match interface type number [type number ]指定されたインターフェースをネクストホップとして使用するルートを一致させます。
match ip route-source {access-list-number | access-list-name } アドバタイズされたアクセス リストで指定されたアドレスと一致します。
match route-type {local | internal | external [type-1 | type-2 ] }指定されたルート タイプと一致します。

一致基準が満たされた場合にシステムが実行するルーティング アクションをオプションで指定するには (ルート マップによって再配布されるルートの場合)、必要に応じてルート マップ設定モードで 1 つ以上の set コマンドを使用します。

コマンド内容
set community {community-number [additive ] [well-known ]| none }コミュニティ属性を設定します(BGP 用)。
set dampening halflife reuse suppress max-suppress-timeルート ダンプニング パラメータを設定します (BGP 用)。
set local-preference number-valueパスにローカル優先値を割り当てます (BGP の場合)。
set origin {igp | egp as-number | incomplete }BGPルートの**起源属性(Origin)**を設定します。BGPルートの起源は IGP(内部ゲートウェイプロトコル)、EGP(外部ゲートウェイプロトコル)、Incomplete(不明) のいずれかです。
set as-path {tag | prepend as-path-string }自律システム パスを変更します (BGP の場合)。
set next-hop next-hop次のホップのアドレスを指定します。
set automatic-tag タグ テーブルの自動計算を有効にします。
set level {level-1 | level-2 | level-1-2 | stub-area | backbone }ルートをインポートする領域を指定します。
set metric metric-value再配布されたルートのメトリック値を設定します (EIGRP を除くすべてのプロトコル)。
set metric bandwidth delay reliability load mtu再配布ルートのメトリック値を設定します (EIGRP のみ)。
set metric-type {internal | external | type-1 | type-2 }再配布ルートのメトリック タイプを設定します。
set metric-type internal外部 BGP ネイバーにアドバタイズされるプレフィックスの Multi Exit Discriminator (MED) 値を、ネクスト ホップの内部ゲートウェイ プロトコル (IGP) メトリックと一致するように設定します。
set tag tag-value再配布されたルートに適用するタグ値を設定します。
IGPからBGPに再配布するときはタグ付きルートマップは使用できません。

設定例

EIGRPからBGP、BGPからOSPFへの再配布

Router1

hostname Router1

int g0/2
ip address 192.168.12.1 255.255.255.0
no shut

int lo1
ip address 1.1.1.1 255.255.255.255

router eigrp 1
netw 192.168.12.1 0.0.0.255
netw 1.1.1.1 0.0.0.0

Router2

hostname Router2

int g0/1
ip address 192.168.12.2 255.255.255.0
no shut

int g0/3
ip address 192.168.23.2 255.255.255.0
no shut

router eigrp 1
netw 192.168.12.0 0.0.0.255

ip bgp-community new-format

router bgp 65001
neighbor 192.168.23.3 remote-as 65001
neighbor 192.168.23.3 activate

Router3

hostname Router3

int g0/2
ip address 192.168.23.3 255.255.255.0
no shut

int g0/4
ip address 192.168.34.3 255.255.255.0
no shut

router bgp 65001
neighbor 192.168.23.2 remote-as 65001
neighbor 192.168.23.2 activate

ip bgp-community new-format

router ospf 1
netw 192.168.34.0 0.0.0.255 area 0

Router4

hostname Router4

int g0/3
ip address 192.168.34.4 255.255.255.0
no shut

router ospf 1
netw 0.0.0.0 0.0.0.0 area 0

EIGRPからBGPへ再配布して、その再配布されたルートをBGPからOSPFへ再配布します。

EIGRPからBGPへの再配布

1.1.1.1と2.2.2.2のルート情報を再配布します。1.1.1.1にはコミュニティ値「65001:100」、2.2.2.2にはコミュニティ値「65001:200」を設定して再配布します。

1.1.1.1と2.2.2.2のネクストホップはRouter1の192.168.12.1だがそのルート情報をRouter3では持っていないのでネクストホップをRouter2に書き換える「next-hop-self」コマンドを使用しています。このコマンドがないとRouter3のルーティングテーブルに情報が表示されません。

コミュニティ情報を送付するために「send-community」コマンドを使用しています。

Router3でEIGRPルートの1.1.1.1と2.2.2.2が再配布されていることがわかります。

それぞれ、コミュニティ値も設定されています。

コミュニティ値をNN:NNの形式で表示するには「ip bgp-community new-format」コマンドが必要です。(本構成では既に設定されています)

BGPからOSPFへの再配布

コミュニティ値「65001:100」が設定されている1.1.1.1のルート情報のみ再配布します。メトリックを100に設定してBGPからOSPFへ再配布します。

Router4で1.1.1.1のルート情報が再配布されていることが確認できます。メトリック値は100になっています。

参考文献

再配布コマンドで適用されるルートマップの設定