RIP for IPv6 の実装方法
サポートされているルーティング プロトコルを IPv6 で設定する場合は、ルーティング プロセスを作成し、そのルーティング プロセスをインターフェイスに対してイネーブルにして、特定のネットワークに合せてルーティング プロトコルをカスタマイズする必要があります。
(注) ここでは、IPv6 RIP ルーティング プロトコルを作成し、ルーティング プロセスをインターフェイス上でイネーブルにするための設定作業について説明します。次の各項では、RIP のカスタマイズについては詳しく説明していません。IPv6 でのプロトコルの機能は、IPv4 の場合と同じであるためです。IPv4 と IPv6 の設定の詳細およびコマンド リファレンス情報については、「関連資料」に記載されている資料を参照してください。
次の各項の作業では、IPv6 RIP を設定する方法を示します。一覧内の各作業は、必須と任意に分けています。
ここでは、次の各手順について説明します。
• 「IPv6 RIP プロセスのイネーブル化」(必須)
• 「IPv6 RIP のカスタマイズ」(任意)
• 「IPv6 RIP ルーティング プロセスへのルートの再配布」(任意)
• 「IPv6 RIP ルートのルート タグの設定」(任意)
• 「IPv6 RIP ルーティング アップデートのフィルタリング」(任意)
• 「IPv6 RIP の設定および動作の確認」(任意)
前提条件
IPv6 RIP を実行するようにルータを設定する前に、グローバル コンフィギュレーション モードで ipv6 unicast-routing コマンドを使用して IPv6 をグローバルにイネーブルにし、IPv6 RIP をイネーブルにするすべてのインターフェイス上で IPv6 をイネーブルにします。基本的な IPv6 接続作業の詳細については、「 IPv6 アドレッシングと基本接続の実装 」の章を参照してください。
グローバル値を設定または変更する場合は、手順 1 および 2 を実行してから、グローバル コンフィギュレーション モードで任意の ipv6 router rip コマンドを使用します(例については、「IPv6 RIP のカスタマイズ」を参照してください)。
手順の概要
1. enable
2. configure terminal
3. ipv6 unicast-routing
4. interface type number
5. ipv6 rip name enable
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • 必要に応じてパスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
ipv6 unicast-routing
Router(config)# ipv6 unicast-routing |
IPv6 ユニキャスト データグラムの転送をイネーブルにします。 |
ステップ 4 |
interface type number
Router(config)# interface Ethernet 0/0 |
インターフェイスのタイプおよび番号を指定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 5 |
ipv6 rip name enable
Router(config-if)# ipv6 rip process1 enable |
指定した IPv6 RIP ルーティング プロセスをインターフェイス上でイネーブルにします。 |
IPv6 RIP のカスタマイズ
この任意の作業は、IPv6 RIP でサポートする等価コスト パスの最大数を設定し、IPv6 RIP タイマーを調整して、デフォルトの IPv6 ルートを生成することで IPv6 RIP をカスタマイズする方法を示しています。
手順の概要
1. enable
2. configure terminal
3. ipv6 router rip word
4. maximum-paths number-paths
5. exit
6. interface type number
7. ipv6 rip name default-information { only | originate } [ metric metric-value ]
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • 必要に応じてパスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
ipv6 router rip word
Router(config)# ipv6 router rip process1 |
IPv6 RIP ルーティング プロセスを設定し、IPv6 RIP ルーティング プロセスのルータ コンフィギュレーション モードを開始します。 • word 引数を使用して、特定の IPv6 RIP ルーティング プロトコルを識別します。 |
ステップ 4 |
maximum-paths number-paths
Router(config-router)# maximum-paths 1 |
(任意)IPv6 RIP でサポートできる等価コスト ルートの最大数を定義します。 • number-paths 引数は、1 ~ 64 の整数です。 RIP のデフォルトは 4 パスです 。 |
ステップ 5 |
exit
Router(config-if)# exit |
インターフェイス コンフィギュレーション モードを終了し、グローバル コンフィギュレーション モードを開始します。 |
ステップ 6 |
interface type number
Router(config)# interface Ethernet 0/0 |
インターフェイスのタイプおよび番号を指定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 7 |
ipv6 rip name default-information { only | originate } [ metric metric-value ]
Router(config-if)# ipv6 rip process1 default-information originate |
(任意)IPv6 デフォルト ルート(::/0)を生成し、指定したインターフェイスから送信される指定した RIP ルーティング プロセスのアップデートに含めます。 (注) IPv6 デフォルト ルート(::/0)がインターフェイスから発信されたあとのルーティング ループを避けるために、ルーティング プロセスではインターフェイス上で受信したすべてのデフォルト ルートを無視します。 • only キーワードを指定すると、デフォルト ルート(::/0)が発信されますが、このインターフェイスで送信されるアップデート内の他のすべてのルートは抑制されます。 • originate キーワードを指定すると、このインターフェイスで送信されるアップデート内の他のすべてのルートに加えて、デフォルト ルート(::/0)が発信されます。 |
IPv6 RIP ルーティング プロセスへのルートの再配布
RIP では、再配布するルートを選択するためのルート マップの使用がサポートされています。ルートは、ルート マップのプレフィクス リストを使用してプレフィクスで指定することも、ルート マップの「タグの照合」機能を使用してタグで指定することもできます。
RIP でアドバタイズできる最大メトリックは 16 であり、メトリック 16 は到達不能なルートを示します。そのため、16 以上のメトリックでルートを再配布すると、RIP はデフォルトでこれらを到達不能としてアドバタイズします。これらのルートは、ネイバー ルータでは使用されません。ユーザはこれらのルートに 15 よりも小さい再配布メトリックを設定する必要があります。
(注) ルートは 15 以下のメトリックでアドバタイズする必要があります。RIP ルータは常にインターフェイス コスト(デフォルトは 1)を受信されたルートのメトリックに追加します。ルートをメトリック 15 でアドバタイズすると、ネイバーがこれに 1 を追加し、メトリックは 16 になります。メトリック 16 は到達不能であるため、ネイバーはルーティング テーブルにそのルートをインストールしません。
メトリックを指定しなかった場合、ルートの現在のメトリックが使用されます。ルートの現在のメトリックを確認するには、 show ipv6 route コマンドを入力します。
手順の概要
1. enable
2. configure terminal
3. interface type number
4. ipv6 rip name enable
5. redistribute protocol [ process-id ] { level-1 | level-1-2 | level-2 } [ metric metric-value ] [ metric-type { internal | external }] [ route-map map-name ]
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • 必要に応じてパスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
interface type number
Router(config)# interface Ethernet 0/0 |
インターフェイスのタイプおよび番号を指定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 4 |
ipv6 rip word enable
Router(config-if)# ipv6 router one enable |
インターフェイス上で IPv6 Routing Information Protocol(RIP; ルーティング情報プロトコル)のルーティング プロセスをイネーブルにします。 |
ステップ 5 |
redistribute protocol [ process-id ] { level-1 | level-1-2 | level-2 } [ metric metric-value ] [ metric-type { internal | external }] [ route-map map-name ]
Router(config-router)# redistribute bgp 65001 route-map bgp-to-rip |
指定したルートを IPv6 RIP ルーティング プロセスに再配布します。 • protocol 引数は、 bgp 、 connected 、 isis 、 rip 、または static キーワードのいずれかにすることができます。 • rip キーワードおよび process-id 引数では、IPv6 RIP ルーティング プロセスを指定します。 キーワードは、IPv6 アドレスをインターフェイスに割り当てることによって自動的に確立されるルートを示します。 |
IPv6 RIP ルートのルート タグの設定
ルート再配布の実行時に、数値タグをルートに関連付けることができます。タグは RIP によってルートとともにアドバタイズされ、隣接するルートのルーティング テーブルにルートとともにインストールされます。
タグ付きルート(たとえば、すでにタグが付いている IPv6 ルーティング テーブル内のルート)を RIP に再配布すると、RIP は自動的にタグとルートをアドバタイズします。再配布ルート マップを使用してタグを指定した場合、RIP はルーティング テーブル タグよりもルート マップ タグを優先して使用します。
手順の概要
1. enable
2. configure terminal
3. route-map map-tag [ permit | deny ] [ sequence-number ]
4. match ipv6 address { prefix-list prefix-list-name | access-list-name }
5. set tag tag- value
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • 必要に応じてパスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
route-map map-tag [ permit | deny ] [ sequence-number ]
Router(config)# route-map bgp-to-rip permit 10 |
ルート マップを定義し、ルート マップ コンフィギュレーション モードを開始します。 • match コマンドを使用して、この手順を実行します。 |
ステップ 4 |
match ipv6 address { prefix-list prefix-list-name | access-list-name }
Router(config-route-map)# match ipv6 address prefix-list bgp-to-rip-flt |
照合される IPv6 プレフィクスのリストを指定します。 |
ステップ 5 |
set tag tag-value
Router(config-route-map)# set tag 4 |
再配布されるルートに関連付けるタグ値を設定します。 |
IPv6 RIP ルーティング アップデートのフィルタリング
配布リストを使用したルート フィルタリングにより、RIP が受信およびアドバタイズするルートを制御できます。この制御は、グローバルに実行することも、インターフェイスごとに実行することもできます。
この作業は、インターフェイス上で受信または送信される IPv6 RIP ルーティング アップデートにプレフィクス リストを適用することで、IPv6 RIP ルーティング アップデートをフィルタリングする方法を示しています。
IPv6 配布リスト
フィルタリングは、配布リストによって制御されます。入力配布リストはルート受信を制御し、入力フィルタリングはネイバーから受信されたアドバタイズメントに適用されます。入力フィルタリングをパスしたルートだけが RIP ローカル ルーティング テーブルに挿入され、IPv6 ルーティング テーブルへの挿入候補となります。
出力配布リストはルート アドバタイズメントを制御します。出力フィルタリングは、ネイバーに送信されるルート アドバタイズメントに適用されます。出力フィルタリングをパスしたルートだけがアドバタイズされます。
グローバル配布リスト(特定のインターフェイスに適用されるのではない配布リスト)は、すべてのインターフェイスに適用されます。配布リストでインターフェイスを指定している場合、その配布リストはそのインターフェイスにしか適用されません。
インターフェイス配布リストが常に優先されます。たとえば、インターフェイス上でルートが受信されると、インターフェイス フィルタが deny に設定され、グローバル フィルタが permit に設定されている場合、ルートはブロックされます。また、インターフェイス フィルタでは渡され、グローバル フィルタではブロックされる場合、ルートは渡されます。
IPv6 プレフィクス リストのオペランド キーワード
IPv6 プレフィクス リストは、permit 文または deny 文を適用する前に照合が必要な特定のプレフィクスまたはプレフィクスの範囲を指定するために使用されます。2 つのオペランド キーワードを使用して、照合するプレフィクス長の範囲を指定できます。ある値以下のプレフィクス長は、 le キーワードで設定します。ある値以上のプレフィクス長は、 ge キーワードを使用して指定します。 ge および le キーワードを使用すると、通常の ipv6-prefix / prefix-length 引数よりも詳細に、照合するプレフィクス長の範囲を指定できます。プレフィクス リストのエントリと照合される候補プレフィクスに対して、次の 3 つの条件が存在する可能性があります。
• 候補プレフィクスは、指定したプレフィクス リストおよびプレフィクス長エントリと一致している必要があります。
• 省略可能な le キーワードの値によって、許可されるプレフィクス長が、 prefix-length 引数から le キーワードの値(この値を含む)までの範囲で指定されます。
• 省略可能な ge キーワードの値によって、許可されるプレフィクス長が、 ge キーワードの値から 128(この値を含む)までの範囲で指定されます。
(注) 最初の条件は、他の条件が有効になる前に一致している必要があることに注意してください。
ge または le キーワードを指定しなかった場合は、完全一致であると想定されます。1 つのキーワード オペランドだけを指定した場合、そのキーワードの条件が適用され、もう 1 つの条件は適用されません。 prefix-length 値は、 ge 値よりも小さい必要があります。 ge 値は、 le 値以下である必要があります。 le 値は、128 以下である必要があります。
手順の概要
1. enable
2. configure terminal
3. ipv6 prefix list prefix-list-name [ seq seq-number ] { deny ipv6-prefix / prefix-length | description text } [ ge ge-value ] [ le le-value ]
4. ipv6 prefix list prefix-list-name [ seq seq-number ] { permit ipv6-prefix / prefix-length | description text } [ ge ge-value ] [ le le-value ]
5. プレフィクス リストの構築に必要な数だけ、ステップ 3 および 4 を繰り返します。
6. ipv6 router rip name
7. distribute-list prefix-list prefix-list-name { in | out } [ interface-type interface-number ]
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • 必要に応じてパスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
ipv6 prefix list prefix-list-name [ seq seq-number ] { deny ipv6-prefix / prefix-length | description text } [ ge ge-value ] [ le le-value ]
Router(config)# ipv6 prefix-list abc permit 2001:0db8::/16
|
IPv6 プレフィクス リストのエントリを作成します。 |
ステップ 4 |
ipv6 prefix list prefix-list-name [ seq seq-number ] { deny ipv6-prefix / prefix-length | description text } [ ge ge-value ] [ le le-value ]
Router(config)# ipv6 prefix-list abc deny ::/0
|
IPv6 プレフィクス リストのエントリを作成します。 |
ステップ 5 |
プレフィクス リストの構築に必要な数だけ、ステップ 3 および 4 を繰り返します。 |
-- |
ステップ 6 |
ipv6 router rip name
Router(config)# ipv6 router rip process1
|
IPv6 RIP ルーティング プロセスを設定します。 |
ステップ 7 |
distribute-list prefix-list prefix-list-name { in | out } [ interface-type interface-number ]
Router(config-rtr-rip)# distribute-list prefix-list process1 in ethernet 0/0
|
インターフェイス上で受信または送信される IPv6 RIP ルーティング アップデートに、プレフィクス リストを適用します。 |
IPv6 RIP の設定および動作の確認
ユーザは IPv6 RIP の設定および動作を確認できます。この作業では、IPv6 RIP の情報を表示して、設定および動作を確認する方法を示します。
手順の概要
1. show ipv6 rip [ name ] [ database | next-hops ]
2. show ipv6 route [ ipv6-address | ipv6-prefix / prefix-length | protocol | interface-type interface-number ]
3. enable
4. debug ipv6 rip [ interface-type interface-number ]
手順の詳細
|
|
|
ステップ 1 |
show ipv6 rip [ name ] [ database | next-hops ]
Router> show ipv6 rip process1 database |
(任意)現在の IPv6 RIP プロセスに関する情報を表示します。 • この例の場合、指定した IPv6 RIP プロセスの IPv6 RIP プロセス データベース情報が表示されます。 |
ステップ 2 |
show ipv6 route [ ipv6-address | ipv6-prefix / prefix-length | protocol | interface-type interface-number ]
Router> show ipv6 route rip |
(任意)IPv6 ルーティング テーブルの現在の内容を表示します。 • この例では、IPv6 RIP ルートだけが表示されます。 |
ステップ 3 |
enable
Router> enable |
特権 EXEC モードなど、高位の権限レベルをイネーブルにします。 • 必要に応じてパスワードを入力します。 |
ステップ 4 |
debug ipv6 rip [ interface-type interface-number ]
Router# debug ipv6 rip |
(任意)IPv6 RIP ルーティング トランザクションのデバッグ メッセージを表示します。 |
例
• 「show ipv6 rip コマンドの出力例」
• 「show ipv6 route コマンドの出力例」
• 「debug ipv6 rip コマンドの出力例」
show ipv6 rip コマンドの出力例
次の例では、 show ipv6 rip コマンドを使用して、現在のすべての IPv6 RIP プロセスに関する出力情報を表示しています。
RIP process "process1", port 521, multicast-group FF02::9, pid 62
Administrative distance is 120. Maximum paths is 1
Updates every 5 seconds, expire after 15
Holddown lasts 10 seconds, garbage collect after 30
Split horizon is on; poison reverse is off
Default routes are generated
Periodic updates 223, trigger updates 1
Redistributing protocol bgp 65001 route-map bgp-to-rip
次の例では、 show ipv6 rip コマンドで name 引数および database キーワードを指定して、指定した IPv6 RIP プロセス データベースに関する出力情報を表示しています。次に示す process1 という名前の IPv6 RIP プロセスの出力には、タイマー情報が表示されており、ルート 2001:0db8::16/64 にはルート タグが設定されています。
Router> show ipv6 rip process1 database
RIP process "process1", local RIB
Ethernet0/0/FE80::A8BB:CCFF:FE00:B00, expires in 13 secs
2001:0db8::/16, metric 2 tag 4, installed
Ethernet0/0/FE80::A8BB:CCFF:FE00:B00, expires in 13 secs
2001:0db8:1::/16, metric 2 tag 4, installed
Ethernet0/0/FE80::A8BB:CCFF:FE00:B00, expires in 13 secs
2001:0db8:2::/16, metric 2 tag 4, installed
Ethernet0/0/FE80::A8BB:CCFF:FE00:B00, expires in 13 secs
::/0, metric 2, installed
Ethernet0/0/FE80::A8BB:CCFF:FE00:B00, expires in 13 secs
次の例では、 show ipv6 rip ユーザ EXEC コマンドで name 引数および next-hops キーワードを指定して、指定した IPv6 RIP プロセスに関する出力情報を表示しています。
Router> show ipv6 rip process1 next-hops
RIP process "process1", Next Hops
FE80::A8BB:CCFF:FE00:A00/Ethernet0/0 [4 paths]
show ipv6 route コマンドの出力例
ルートの現在のメトリックは、 show ipv6 route コマンドを入力することで確認できます。次の例では、 show ipv6 route コマンドで rip プロトコル キーワードを指定して、すべての IPv6 RIP ルートに関する出力情報を表示しています。
Router> show ipv6 route rip
IPv6 Routing Table - 17 entries
Codes: C - Connected, L - Local, S - Static, R - RIP, B - BGP
U - Per-user Static route
I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea
O - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
R 2001:0db8:1::/32 [120/2]
via FE80::A8BB:CCFF:FE00:A00, Ethernet0/0
R 2001:0db8:2::/32 [120/2]
via FE80::A8BB:CCFF:FE00:A00, Ethernet0/0
R 2001:0db8:3::/32 [120/2]
via FE80::A8BB:CCFF:FE00:A00, Ethernet0/0
debug ipv6 rip コマンドの出力例
次の例では、 debug ipv6 rip コマンドを使用して、IPv6 RIP ルーティング トランザクションのデバッグ メッセージを表示しています。
(注) デフォルトでは、debug コマンドからの出力、およびシステム エラー メッセージがコンソールに送信されます。デバッグ出力を再誘導するには、特権 EXEC モード内で logging コマンド オプションを使用します。指定できる宛先として、コンソール、仮想端末、内部バッファ、および syslog サーバを実行している UNIX ホストがあります。
RIPng: Sending multicast update on Ethernet0/0 for process1
src=FE80::A8BB:CCFF:FE00:B00
dst=FF02::9 (Ethernet0/0)
sport=521, dport=521, length=112
command=2, version=1, mbz=0, #rte=5
tag=0, metric=1, prefix=2001:0db8::/64
tag=4, metric=1, prefix=2001:0db8:1::/16
tag=4, metric=1, prefix=2001:0db8:2;:/16
tag=4, metric=1, prefix=2001:0db8:3::/16
tag=0, metric=1, prefix=::/0
RIPng: Next RIB walk in 10032
RIPng: response received from FE80::A8BB:CCFF:FE00:A00 on Ethernet0/0 for process1
src=FE80::A8BB:CCFF:FE00:A00 (Ethernet0/0)
sport=521, dport=521, length=92
command=2, version=1, mbz=0, #rte=4
tag=0, metric=1, prefix=2001:0db8::/64
tag=0, metric=1, prefix=2001:0db8:1::/32
tag=0, metric=1, prefix=2001:0db8:2::/32
tag=0, metric=1, prefix=2001:0db8:3::/32