IP : IP ルーティング

IS-IS ルートリークの概要

2003 年 1 月 6 日 - ライター翻訳版
その他のバージョン: PDFpdf | 機械翻訳版 (2013 年 8 月 21 日) | 英語版 (2008 年 5 月 13 日) | フィードバック

目次


ルートリークとは

Intermediate System-to-Intermediate System(IS-IS)ルーティング プロトコルでは、ルーティング情報に 2 レベルの階層を設けることが可能です。1 つのレベル 2 バックボーンによって、隣接する複数のレベル 1 エリアを相互接続できます。ルータはレベル 1、レベル 2、またはその両方に所属できます。レベル 1 のリンクステート データベースには、そのエリアの情報のみが格納されます。レベル 2 のリンクステート データベースには、そのレベルの情報だけでなく、レベル 1 の各エリアの情報も格納されます。L1/L2 ルータは、レベル 1 とレベル 2 のデータベースを両方とも保持します。また、それ自体が属する L1 エリアの情報を L2 にアドバタイズします。各 L1 エリアは本質的にはスタブ エリアです。L1 エリアの外部アドレス宛てのパケットは最も近い L1/L2 ルータにルーティングされ、そこから宛先エリアに転送されます。最も近い L1/L2 ルータにルーティングすると、宛先への最短パスが別の L1/L2 ルータを経由する場合に、最適なルーティングにならない可能性があります。ルートリークは、L2 情報を L1 エリアに漏出(再配送)するためのメカニズムを提供するため、非最適ルーティングの低減に役立ちます。エリア間ルートに関する詳細な情報を持つことにより、L1 ルータはどの L1/L2 ルータにパケットを転送すればよいかについて適切な判断を下すことができます。

RFC 2966 cisco.com 以外のサイトへ移動 で規定されているルートリークは、ナロー メトリック Type, Length and Value(TLV; タイプ、長さ、および値)タイプ 128 および 130 を使用します。「IS-IS extensions for Traffic Engineeringcisco.com 以外のサイトへ移動」で規定されているルートリークは、ワイド メトリック TLV タイプ 135 を使用します。どちらのドラフトも、TLV で定義されたルートが漏出されたかどうかを示すアップ/ダウン ビットを規定しています。アップ/ダウン ビットが 0 に設定されたルートは、その L1 エリア内で発信されています。アップ/ダウン ビットが 1 に設定されたルートは、L2 からそのエリアに再配送されています。アップ/ダウン ビットは、ルーティング情報とフォワーディングのループを避けるために使用します。L1/L2 ルータは、アップ/ダウン ビットが設定されている L1 ルートを L2 に再アドバタイズしません。

TLV タイプ 128 とタイプ 130

TLV タイプ 135

1

1

6

1

1

6

アップ/ダウン

内部/外部

デフォルト メトリック

サポート

Rsvd

遅延メトリック

サポート

Rsvd

コスト メトリック

サポート

Rsvd

エラー メトリック

IP アドレス

サブネット マスク

メトリック

アップ/ダウン

サブ TLV

プレフィクス長

プレフィクス(0〜4 バイト)

オプションのサブ TLV(0〜250 バイト)


 

ルートリークの使用方法

L1 ルータは通常、ローカル エリアの外部アドレス宛てのパケットを最も近い L1/L2 ルータに転送しますが、これは最適でないルーティング決定につながる可能性があります。次のネットワーク ダイアグラムでは、Router C は Router X と Router Y 宛てのすべてのトラフィックをどちらも Router A に転送します。すべてのリンクのコストが等しいと仮定すると、Router X に到達するためのコストは 2 で、Router Y に到達するためのコストは 4 になります。同様に、Router D は Router X と Router Y 宛てのトラフィックをどちらも Router B 経由でルーティングします。

ネットワーク ダイアグラム

ルートリークを使用すると、Router X と Y に関する情報が Router A および B によって Area 1 に再配送されます。Router C と D は、これらのルータに固有の情報を使用して最適パスを選択できます。Router C は、今度は Router Y へのトラフィックをルータ D 経由で送信します。これによって、コストが 3 に下がります。Router X へのトラフィックは引き続き Router A 経由で転送します。同様に、Router D は Router X へのトラフィックをルータ C 経由で転送し、Router Y へのトラフィックは引き続き Router B 経由でルーティングします。

ルートリークを有効にすることで、Router C と D は Router X と Y に到達するための正確なコストを算出し、それに応じてパケットを転送できます。この機能は、2 通りの一般的な Border Gateway Protocol(BGP; ボーダーゲートウェイ プロトコル)の使用方法において非常に役立ちます。BGP パス選択プロセスで使用される基準の 1 つに、BGP ネクストホップ アドレスへの Interior Gateway Protocol(IGP; 内部ゲートウェイ プロトコル)コストがあります。ISP の多くは、自社の Autonomous System(AS; 自律システム)経由の最適パスを IGP メトリックに基づいて選択しています。この方法を「最短出口ルーティング」と呼びます。もう 1 つの一般的な方法は、ルートを他の AS にアドバタイズするときに、MED の値に IGP メトリックを使用することです。これにより、他の AS がルーティングを決定する際に、こちら側の AS を経由した最短パスを使用するように要請できます。ルートリークが登場する以前は、AS 内で複数のエリアを使用していた場合、IS-IS メトリックは正しい内部コストを表さず、これらの方法のいずれともうまく連携して動作しませんでした。BGP ネクストホップ アドレスごとにルートを漏出すれば、複数エリア階層を使用しながら、エンドツーエンドの IGP メトリックを正確に維持できます。

MPLS-VPN 環境では、Provider Edge(PE; プロバイダー エッジ)ルータのループバック アドレスごとに到着可能性情報が必要です。PE ループバックのルートを漏出すると、このタイプの実装で複数エリア階層を使用できます。

ルートリークは、簡素な形態のトラフィック エンジニアリングを実装する場合にも使用できます。個々のマシンまたはサーバのルートを特定の L1/L2 ルータから漏出することで、これらのアドレスに到達する際に使用される L1 エリアからの出力点を制御できます。

ルートリークの設定方法

ルートリークは、Cisco IOS(R) ソフトウェア リリース 12.0S、12.0T、および 12.1 で実装およびサポートされています。12.0T および 12.1 リリースでは、同じ設定コマンドを使用します。12.0S リリースではコマンドの構文が異なりますが、どちらのコマンドもルータ IS-IS 設定内に入力します。レベル 2 からレベル 1 に漏出するルートを定義するために、IP 拡張アクセス リストを作成する必要があります。IOS 12.0S はタイプ 135 TLV を使用したルートリークのみをサポートします。ワイド形式のメトリックを設定せずにルートリークを設定した場合は、ルートリークが実行されません。IOS 12.0T および 12.1 はナロー形式とワイド形式のどちらかのメトリックを使用したルートリークをサポートしますが、ワイド形式のメトリックを使用することを推奨します。

それぞれの IOS リリース用の設定コマンドを次の表に示します。

リリース コマンド
12.0S advertise ip l2-into-l1 <100-199>
metric-style wide
!-- 2 番目の文は必須です。
12.0T および 12.1 redistribute isis ip level-2 into level-1 distribute-list <100-199>
metric-style wide
!-- 2 番目の文はオプションですが、使用することを推奨します。

漏出ルートは、ルーティング テーブルおよび IS-IS データベースではエリア間ルート(interarea route)と呼ばれます。ルーティング テーブルを表示したときに、漏出ルートには ia の識別子が付きます。


 RtrB#show ip route

 Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP

        D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

        N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

        E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP

        i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area

        * - candidate default, U - per-user static route, o - ODR

        P - periodic downloaded static route

 

 Gateway of last resort is 55.55.55.1 to network 0.0.0.0

 

 i ia 1.0.0.0/8 [115/30] via 55.55.55.1, Serial1/0

 i ia 2.0.0.0/8 [115/30] via 55.55.55.1, Serial1/0

 i ia 3.0.0.0/8 [115/30] via 55.55.55.1, Serial1/0

 i ia 4.0.0.0/8 [115/30] via 55.55.55.1, Serial1/0

      55.0.0.0/24 is subnetted, 1 subnets

 C       55.55.55.0 is directly connected, Serial1/0

 i ia 5.0.0.0/8 [115/30] via 55.55.55.1, Serial1/0

      7.0.0.0/24 is subnetted, 1 subnets

 C       7.7.7.0 is directly connected, FastEthernet0/0

      44.0.0.0/24 is subnetted, 1 subnets

 i L1    44.44.44.0 [115/20] via 55.55.55.1, Serial1/0

 i*L1 0.0.0.0/0 [115/10] via 55.55.55.1, Serial1/0

 

IS-IS データベースでは、漏出ルートに IP-Interarea の識別子が付きます。


 RtrB#show isis database detail

 

 IS-IS Level-1 Link State Database:

 LSPID                 LSP Seq Num  LSP Checksum  LSP Holdtime      ATT/P/OL

 rpd-7206g.00-00       0x00000008   0x0855        898               1/0/0

   Area Address: 49.0002

   NLPID:        0xCC

   Hostname: rpd-7206g

   IP Address:   44.44.44.2

   Metric: 10         IP 55.55.55.0/24

   Metric: 10         IP 44.44.44.0/24

   Metric: 10         IS-Extended rpd-7206a.00

   Metric: 20         IP-Interarea 1.0.0.0/8

   Metric: 20         IP-Interarea 2.0.0.0/8

   Metric: 20         IP-Interarea 3.0.0.0/8

   Metric: 20         IP-Interarea 4.0.0.0/8

   Metric: 20         IP-Interarea 5.0.0.0/8

 

ルートリークが導入される以前は、タイプ 128 および 130 TLV のアップ/ダウン ビット(デフォルト メトリックの第 8 ビット)は、「送信時に 0 に設定され、受信時には無視される」という使用目的のために予約されていました。第 7 ビット(I/E ビット)は、TLV 130 において、再配送ルートの内部メトリック タイプと外部メトリック タイプを区別するために使用されていました。IOS リリース 12.0S 以前では、第 7 ビットではなく第 8 ビットが I/E ビットとして使用されていました。そのため、ナロー形式のメトリックを使用すると、12.0S と 12.0T/12.1 リリース間の相互運用性に矛盾が生じます。

IOS 12.0T または 12.1 を実行しているルータはアップ/ダウン ビットを認識し、そのルータでルートリークが設定されているかどうかにかかわらず、アップ/ダウン ビットに従ってルートを取り扱います。IOS 12.0T または 12.1 コードを実行していない L1 または L1/L2 ルータが「外部」のメトリックタイプでルートを再配送する場合、デフォルト メトリックの第 8 ビットは 1 に設定されます。12.0T または 12.1 を実行している L1/L2 ルータは第 8 ビット(アップ/ダウン ビット)を見て、これをすでに漏出されているルートと解釈します。その結果、このルートはそのルータの L2 LSP で再アドバタイズされません。これは、ルーティング情報がネットワーク全体に伝搬されないという望ましくない結果を招くおそれがあります。

逆に、IOS 12.0T または 12.1 を実行しているルータによってルートがすでに漏出されている場合は、第 8 ビットが 1 に設定されます。L1 エリア内の、12.0S 以前の IOS リリースを実行しているルータは第 8 ビットが設定されているのを見て、このルートを「外部」のメトリックタイプを持つルートとして取り扱います。12.0S 以前の IOS リリースを実行している L1/L2 ルータは、第 8 ビットをアップ/ダウン ビットとして認識しないため、このルートを L2 LSP で再アドバタイズします。これはルーティング ループの形成につながるおそれがあります。

これらの不整合について、次の例で説明します。RtrA は IOS リリース 12.1 を実行していて、ナロー形式のメトリックを使用していくつかのルートを漏出しています。RtrB は IOS 12.0S を実行していて、「外部」のメトリックタイプでいくつかのルートを再配送しています。

ネットワーク ダイアグラム

RtrA では、RtrB から再配送されたルートはエリア間ルートとして誤って認識されます。


 RtrA#show ip route

 Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP

        D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

        N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

        E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP

        i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter

        area

        * - candidate default, U - per-user static route, o - ODR

        P - periodic downloaded static route

 

 Gateway of last resort is not set

 

 i L2 1.0.0.0/8 [115/20] via 44.44.44.1, ATM3/0

 i L2 2.0.0.0/8 [115/20] via 44.44.44.1, ATM3/0

 i L2 3.0.0.0/8 [115/20] via 44.44.44.1, ATM3/0

 i L2 4.0.0.0/8 [115/20] via 44.44.44.1, ATM3/0

      55.0.0.0/24 is subnetted, 1 subnets

 C       55.55.55.0 is directly connected, Serial1/0

 i L2 5.0.0.0/8 [115/20] via 44.44.44.1, ATM3/0

      7.0.0.0/24 is subnetted, 1 subnets

 C       7.7.7.0 is directly connected, FastEthernet0/0

 i ia 110.0.0.0/8 [115/138] via 55.55.55.2, Serial1/0

      44.0.0.0/24 is subnetted, 1 subnets

 C       44.44.44.0 is directly connected, ATM3/0

 i ia 120.0.0.0/8 [115/138] via 55.55.55.2, Serial1/0

 i ia 140.0.0.0/8 [115/138] via 55.55.55.2, Serial1/0

 i ia 130.0.0.0/8 [115/138] via 55.55.55.2, Serial1/0

 i ia 150.0.0.0/8 [115/138] via 55.55.55.2, Serial1/0

 

RtrB では、RtrA によって漏出されたルートは外部として誤って認識されます。


 RtrB#show ip route

 Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP

        D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

        N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

        E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP

        i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter

 area

        * - candidate default, U - per-user static route, o - ODR

 

 Gateway of last resort is 55.55.55.1 to network 0.0.0.0

 

 i L1 1.0.0.0/8 [115/158] via 55.55.55.1, Serial1/0

 i L1 2.0.0.0/8 [115/158] via 55.55.55.1, Serial1/0

 i L1 3.0.0.0/8 [115/158] via 55.55.55.1, Serial1/0

 i L1 4.0.0.0/8 [115/158] via 55.55.55.1, Serial1/0

      55.0.0.0/24 is subnetted, 1 subnets

 C       55.55.55.0 is directly connected, Serial1/0

 i L1 5.0.0.0/8 [115/158] via 55.55.55.1, Serial1/0

      7.0.0.0/24 is subnetted, 1 subnets

 C       7.7.7.0 is directly connected, FastEthernet0/0

 S    110.0.0.0/8 is directly connected, Null0

      44.0.0.0/24 is subnetted, 1 subnets

 i L1    44.44.44.0 [115/20] via 55.55.55.1, Serial1/0

 S    120.0.0.0/8 is directly connected, Null0

 i*L1 0.0.0.0/0 [115/10] via 55.55.55.1, Serial1/0

 S    140.0.0.0/8 is directly connected, Null0

 S    130.0.0.0/8 is directly connected, Null0

 S    150.0.0.0/8 is directly connected, Null0

 

「外部」メトリックタイプでの再配送を使用しなければ、第 8 ビットは設定されません。この回避策をとると、IOS 12.1 を実行している L1/L2 ルータが再配送ルートを L2 LSP で再アドバタイズしないという問題を防ぐことができます。ワイド形式のメトリックを使用している場合は、IOS 12.0S を実行しているルータでもアップ/ダウン ビットを認識できます。この回避策をとると、タイプ 128 および 130 TLV のアップ/ダウン ビットを認識しない 12.0S ルータによってルーティング ループが形成される事態を防ぐことができます。

また、ナロー形式のメトリックはわずか 6 ビットであるのに対し、ワイド形式のメトリックでは 32 ビットが使用されます。ナロー形式のメトリックを使用すると、正確なメトリックとは無関係に、エリア間ルートの多くが 63 の最大内部メトリックで漏出される可能性があります。これらの理由から、「外部」メトリックタイプでの再配送を避け、代わりにワイド形式のメトリックを使用することを推奨します。


関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報


Document ID: 13796