概要

CiscoルータでのRIPの設定例です。RIPの基本的な設定に加えて、passive-interfaceやスプリットホライズンの無効化、ルートポイズニングの動作を確認します。

ネットワーク構成

図 RIPの設定例 ネットワーク構成
図 RIPの設定例 ネットワーク構成

初期設定

  • R1/R2
    • ホスト名/IPアドレス
  • PC1/PC2
    • ホスト名/IPアドレス/デフォルトゲートウェイ

設定条件

  • R1/R2でRIPv2によってルーティングテーブルを作成します。
  • 不要なインタフェースからRIPルート情報を送信しないようにしてください。
  • RIPタイマはデフォルトの値の半分に設定してください。

設定と確認

Step1:RIPv2の設定

R1/R2のFa0/0とFa1/0でRIPv2を有効化します。また、no auto-summaryコマンドで自動集約を無効化します。

R1

router rip
 network 192.168.1.0
 network 192.168.12.0
 version 2
 no auto-summary

R2

router rip
 network 192.168.2.0
 network 192.168.12.0
 version 2
 no auto-summary

Step2:passive-interfaceの設定

PCしか接続されていないFa1/0からRIPのルート情報を送信する必要はありません。R1/R2でFa1/0をpassive-interfaceとして設定します。

R1/R2

router rip
 passive-interface FastEthernet1/0

Step3:RIPタイマの設定

RIPタイマのデフォルト値は、以下の通りです。

タイマデフォルト(秒)
Update 30
Invalid 180
Hold down 180
Flush 240
表 RIPタイマのデフォルト

R1/R2でタイマの値をデフォルトの半分の値として設定します。

R1/R2

router rip
 timers basic 15 90 90 120

Step4:RIPの設定の確認

Step1~Step3までの設定をshow ip protocolsコマンドで確認します。R1のshow ip protocolsコマンドは次のようになります。

R1

R1#show ip protocols
Routing Protocol is "rip"
  Outgoing update filter list for all interfaces is not set
  Incoming update filter list for all interfaces is not set
  Sending updates every 15 seconds, next due in 11 seconds
  Invalid after 90 seconds, hold down 90, flushed after 120
  Redistributing: rip
  Default version control: send version 2, receive version 2
    Interface             Send  Recv  Triggered RIP  Key-chain
    FastEthernet0/0       2     2
  Automatic network summarization is not in effect
  Maximum path: 4
  Routing for Networks:
    192.168.1.0
    192.168.12.0
  Passive Interface(s):
    FastEthernet1/0
  Routing Information Sources:
    Gateway         Distance      Last Update
    192.168.12.2         120      00:00:01
  Distance: (default is 120)

また、ルーティングテーブルのRIPルートを確認します。R1でshow ip route ripコマンドでルーティングテーブルを見ると、192.168.2.0/24が登録されています。

R1

R1#show ip route rip
R    192.168.2.0/24 [120/1] via 192.168.12.2, 00:00:11, FastEthernet0/0

Step5:通信確認

R1/R2のRIPの設定が正しく行われていれば、ルーティングテーブルに必要なルート情報が登録されます。R1/R2のRIPルートを確認します。

R1

R1#show ip route rip
R    192.168.2.0/24 [120/1] via 192.168.12.2, 00:00:07, FastEthernet0/0

R2

R2#show ip route rip
R    192.168.1.0/24 [120/1] via 192.168.12.1, 00:00:03, FastEthernet0/0

ルーティングテーブルが正常に完成しているのでPC1-PC2間で通信ができます。PC1からPC2へPingを実行します。

PC1

PC1> ping 192.168.2.100
84 bytes from 192.168.2.100 icmp_seq=1 ttl=62 time=39.652 ms
84 bytes from 192.168.2.100 icmp_seq=2 ttl=62 time=34.879 ms
84 bytes from 192.168.2.100 icmp_seq=3 ttl=62 time=35.262 ms
84 bytes from 192.168.2.100 icmp_seq=4 ttl=62 time=40.536 ms
84 bytes from 192.168.2.100 icmp_seq=5 ttl=62 time=38.431 ms

Step6:RIPルート送受信の確認

RIPルートの送受信の様子を確認します。R1でshow ip rip databaseコマンドを実行してRIPデータベースを見ます。

R1

R1#show ip rip database
192.168.1.0/24    auto-summary
192.168.1.0/24    directly connected, FastEthernet1/0
192.168.2.0/24    auto-summary
192.168.2.0/24
    [1] via 192.168.12.2, 00:00:01, FastEthernet0/0
192.168.12.0/24    auto-summary
192.168.12.0/24    directly connected, FastEthernet0/0

R1のRIPデータベースには「192.168.1.0/24」「192.168.12.0/24」「192.168.2.0/24」が登録されています。「192.168.1.0/24」「192.168.12.0/24」の2つのルート情報は、networkコマンドでR1自身がRIPルートとして登録しています。「192.168.2.0/24」は、R2から受信したRIPルートです。

図 R1のRIPデータベース
図 R1のRIPデータベース

そして、R1でdebug ip ripを有効にします。

R1

R1#debug ip rip
RIP protocol debugging is on
R1#
*Mar  1 01:04:28.939: RIP: sending v2 update to 224.0.0.9 via FastEthernet0/0 (192.168.12.1)
*Mar  1 01:04:28.939: RIP: build update entries
*Mar  1 01:04:28.939:   192.168.1.0/24 via 0.0.0.0, metric 1, tag 0
R1#
*Mar  1 01:04:31.471: RIP: received v2 update from 192.168.12.2 on FastEthernet0/0
*Mar  1 01:04:31.471:      192.168.2.0/24 via 0.0.0.0 in 1 hops
R1#undebug all
All possible debugging has been turned off

R1はFa0/0から192.168.1.0/24のルート情報を送信しています。スプリットホライズンによって、「192.168.12.0/24」と「192.168.2.0/24」はフィルタされています。

図 R1から送信するRIPルート情報
図 R1から送信するRIPルート情報
debug ip ripはundebug allまたはno debug ip ripで無効化します。

Step7:スプリットホライズンの無効化

R1 Fa0/0でスプリットホライズンを無効化します。

R1

interface FastEthernet0/0
 no ip split-horizon

スプリットホライズンを無効化したあと、再度、R1でdebub ip ripコマンドを入力してRIPルートの送受信を確認します。

R1

R1#debug ip rip
RIP protocol debugging is on
R1#
*Mar  1 01:13:04.783: RIP: received v2 update from 192.168.12.2 on FastEthernet0/0
*Mar  1 01:13:04.783:      192.168.2.0/24 via 0.0.0.0 in 1 hops
R1#
*Mar  1 01:13:08.763: RIP: sending v2 update to 224.0.0.9 via FastEthernet0/0 (192.168.12.1)
*Mar  1 01:13:08.763: RIP: build update entries
*Mar  1 01:13:08.763:   192.168.1.0/24 via 0.0.0.0, metric 1, tag 0
*Mar  1 01:13:08.763:   192.168.2.0/24 via 192.168.12.2, metric 2, tag 0
*Mar  1 01:13:08.767:   192.168.12.0/24 via 0.0.0.0, metric 1, tag 0
R1#undebug all
All possible debugging has been turned off

スプリットホライズンを無効化すると、Fa0/0から出力インタフェースがFa0/0の「192.168.2.0/24」「192.168.12.0/24」のルート情報も送信します。

図 R1から送信するRIPルート情報(スプリットホライズン無効化)
図 R1から送信するRIPルート情報(スプリットホライズン無効化)

スプリットホライズンを無効化したときのルート情報の送信を確認したら、もとに戻しておきます。

R1

interface FastEthernet0/0
 ip split-horizon

Step8:ルートポイズニングの確認

ルートポイズニングによって、速やかにルート情報が削除される様子を確認します。R1でdebug ip ripを有効化している状態でFa1/0をshutdownします。

R1

R1#debug ip rip
RIP protocol debugging is on
R1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
R1(config)#interface FastEthernet 1/0
R1(config-if)#shutdown
R1(config-if)#
*Mar  1 01:19:52.091: RIP: sending v2 flash update to 224.0.0.9 via FastEthernet0/0 (192.168.12.1)
*Mar  1 01:19:52.091: RIP: build flash update entries
*Mar  1 01:19:52.091:   192.168.1.0/24 via 0.0.0.0, metric 16, tag 0
*Mar  1 01:19:52.991: RIP: received v2 update from 192.168.12.2 on FastEthernet0/0
*Mar  1 01:19:52.991:      192.168.1.0/24 via 0.0.0.0 in 16 hops  (inaccessible)
R1(config-if)#
*Mar  1 01:19:53.083: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet1/0, changed state to down
R1(config-if)#u
R1(config-if)#do undebug all
All possible debugging has been turned off

R1のFa1/0をshutdownして「192.168.1.0/24」のネットワークがダウンすると、R1はトリガードアップデートを送信しています。「*Mar  1 01:19:52.091: RIP: sending v2 flash update to 224.0.0.9 via FastEthernet0/0 (192.168.12.1)」

その内容は、「192.168.1.0/24」のメトリックが16「*Mar  1 01:19:52.091:   192.168.1.0/24 via 0.0.0.0, metric 16, tag 0」で、192.168.1.0/24がダウンしていることを意味しています。

そして、R2からポイズンリバース「*Mar  1 01:19:52.991:      192.168.1.0/24 via 0.0.0.0 in 16 hops  (inaccessible)」を受信していることがわかります。

このときR1のRIPデータベースでは、「192.168.1.0/24」はpossibly downの状態です。

R1

R1#show ip rip database
192.168.1.0/24 is possibly down
192.168.1.0/24 is possibly down
192.168.2.0/24    auto-summary
192.168.2.0/24
    [1] via 192.168.12.2, 00:00:09, FastEthernet0/0
192.168.12.0/24    auto-summary
192.168.12.0/24    directly connected, FastEthernet0/0

R2のRIPデータベース上でも同様に「192.168.1.0/24」がpossibly downの状態になり、ルーティングテーブルからRIPルート「192.168.1.0/24」が削除されています。

R2

R2#show ip rip database
192.168.1.0/24 is possibly down
192.168.1.0/24 is possibly down
192.168.2.0/24    auto-summary
192.168.2.0/24    directly connected, FastEthernet1/0
192.168.12.0/24    auto-summary
192.168.12.0/24    directly connected, FastEthernet0/0
R2#show ip route rip

ルートポイズニングの動作を確認したら、R1のFa1/0を有効化して、debugは無効化します。

設定のまとめ

R1/R2でRIPv2によってルーティングテーブルを作成します。

R1

router rip
 network 192.168.1.0
 network 192.168.12.0
 version 2
 no auto-summary

R2

router rip
 network 192.168.2.0
 network 192.168.12.0
 version 2
 no auto-summary

不要なインタフェースからRIPルート情報を送信しないようにしてください。

R1/R2

router rip
 passive-interface FastEthernet1/0

RIPタイマはデフォルトの値の半分に設定してください。

R1/R2

router rip
 timers basic 15 90 90 120

IPルーティングのキホン