IGRPの基本設定
・IGRPで配信する経路情報を確認する
・RIPとの設定の違いを確認する
ネットワーク構成(画像を別ウインドウで表示)
RouterAのコンフィグ
!
version 12.2
no service single-slot-reload-enable
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname RouterA
interface Loopback0
ip address 10.1.1.1 255.255.255.0
!
interface Ethernet0
ip address 172.16.1.1 255.255.255.0
!
interface Serial0
ip address 192.168.1.1 255.255.255.0
no fair-queue
!
router igrp 64 ←IGRPをAS番号64番で動作させる
network 10.0.0.0 ←10.x.x.xのインタフェースでIGRPを動かす
network 172.16.0.0 ←172.16.x.xのインタフェースでIGRPを動かす
network 192.168.1.0
 ←192.168.1.xのインタフェースでIGRPを動かす
!
ip kerberos source-interface any
ip classless
ip http server
!
!
line con 0
transport input none
line aux 0
line vty 0 4
login
!
end
RouterBのコンフィグ
!
version 12.2
no service single-slot-reload-enable
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname RouterB
!
interface Serial0
ip address 192.168.1.2 255.255.255.0
no fair-queue
clockrate 500000
!
interface Serial1
ip address 192.168.2.1 255.255.255.0
clockrate 500000
!
router igrp 64 ←IGRPをAS番号64番で動作させる
network 192.168.1.0 ←192.168.1.xのインタフェースでIGRPを動かす
network 192.168.2.0
 ←192.168.2.xのインタフェースでIGRPを動かす
!
ip kerberos source-interface any
ip classless
ip http server
!
!
line con 0
transport input none
line aux 0
line vty 0 4
login
!
end
RouterCのコンフィグ
!
version 12.2
no service single-slot-reload-enable
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname RouterC
!
interface Ethernet0
ip address 172.17.1.1 255.255.255.0
!
interface Serial0
ip address 192.168.2.2 255.255.255.0
no fair-queue
!
router igrp 64 ←IGRPをAS番号64番で動作させる
network 172.17.0.0 ←172.17.x.xのインタフェースでIGRPを動かす
network 192.168.2.0 ←192.168.2.xのインタフェースでIGRPを動かす

!
ip kerberos source-interface any
ip classless
ip http server
!
!
line con 0
transport input none
line aux 0
line vty 0 4
login
!
end
確認
IGRPの動作を確認してみましょう。
IGRPは,「RIPは小規模ネットにしか対応できないし,なんとかならないか」と思ってシスコが独自に開発したプロトコルです。
とはいえ,ベースはあくまでもRIPなので,IGRPを知るには,RIPとの違いを見ていくことが手っ取り早いです。
IGRPがRIPと違うのは,主に以下です。

・ホップ数は最大255(RIPは15)
・メトリック値に帯域幅や遅延を基にした値を採用(RIPはホップ数だけ)
・不等コスト・ロードバランシングをサポート(RIPは等コスト・ロードバランシング)
・経路情報の通知は90秒ごと(RIPは30秒ごと)

逆にいうと,ディスタンス・ベクタ方式の動作など,基本部分はほとんど同じです。
そこで,RIPと比べながらIGRPの基本設定を見ていきましょう。

まずIGRPがRIPと違うのは,動作させるときにAS番号(1〜65535)を入力するところです。
ここで言うAS番号は,BGPで使うAS番号のことではなく,単に「同じ番号のもの同士でIGRPをやりとりするよ」という意味です。
では,router igrpコマンドを入れてみましょう。

Router(config)#router igrp 64
^
% Invalid input detected at '^' marker.


ぐはっ!エラーです。
このルーターがサポートしているルーティング・プロトコルを調べてみると…

RouterA(config)#router ?
bgp Border Gateway Protocol (BGP)
eigrp Enhanced Interior Gateway Routing Protocol (EIGRP)
isis ISO IS-IS
iso-igrp IGRP for OSI networks
mobile Mobile routes
odr On Demand stub Routes
ospf Open Shortest Path First (OSPF)
rip Routing Information Protocol (RIP)


うはw,IGRPがサポートされてない(爆)。
実はこれ,バージョン12.3(5)IP PlusのIOSです。
比較的新しいIOSでは,IGRPはもうサポートしていないんですね(たぶん)。
そこで,IOSのバージョンを12.2(1d)Enterpriseに変更してみます。

RouterA(config)#router ?
bgp Border Gateway Protocol (BGP)
egp Exterior Gateway Protocol (EGP)
eigrp Enhanced Interior Gateway Routing Protocol (EIGRP)
igrp Interior Gateway Routing Protocol (IGRP)
isis ISO IS-IS
iso-igrp IGRP for OSI networks
mobile Mobile routes
odr On Demand stub Routes
ospf Open Shortest Path First (OSPF)
rip Routing Information Protocol (RIP)
static Static routes


今度はありました(笑)。
上のコンフィグを入れた状態の,RouterAのルーティング・テーブルを見てみましょう。

RouterA#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 172.17.0.0/16 [100/10576] via 192.168.1.2, 00:00:53, Serial0
172.16.0.0/24 is subnetted, 1 subnets
C 172.16.1.0 is directly connected, Ethernet0
10.0.0.0/24 is subnetted, 1 subnets
C 10.1.1.0 is directly connected, Loopback0
C 192.168.1.0/24 is directly connected, Serial0
I 192.168.2.0/24 [100/10476] via 192.168.1.2, 00:00:53, Serial0


IGRPで172.17.0.0/16と192.168.2.0/14という経路情報を学習しています。
RIPで学習した経路情報は「R」と表示されましたが,IGRPでは「I」と表示されます(赤字の部分)。
メトリックが10576と10476となっているところも,RIPと違うところです。
これは,帯域幅と遅延から,ルーター自動的に導き出した値です。

次に,IGRPで通知している経路情報を見てみましょう。

RouterA#debug ip igrp transactions
IGRP protocol debugging is on
RouterA#
00:45:21: IGRP: sending update to 255.255.255.255 via Ethernet0 (172.16.1.1)
00:45:21: network 172.17.0.0, metric=10576
00:45:21: network 10.0.0.0, metric=501
00:45:21: network 192.168.1.0, metric=8476
00:45:21: network 192.168.2.0, metric=10476
00:45:21: IGRP: sending update to 255.255.255.255 via Loopback0 (10.1.1.1)
00:45:21: network 172.17.0.0, metric=10576
00:45:21: network 172.16.0.0, metric=1100
00:45:21: network 192.168.1.0, metric=8476
00:45:21: network 192.168.2.0, metric=10476
00:45:22: IGRP: sending update to 255.255.255.255 via Serial0 (192.168.1.1)
00:45:22: network 172.16.0.0, metric=1100
00:45:22: network 10.0.0.0, metric=501


Serial0から二つの経路情報を送信しています。
ここで,スプリット・ホライズンをオフにしてみます。

RouterA(config)#interface Serial 0
RouterA(config-if)#no ip split-horizon


すると,RouterAで通知するIGRPの経路情報はどうなるでしょう。

RouterA#debug ip igrp transactions
IGRP protocol debugging is on
RouterA#
01:02:55: IGRP: sending update to 255.255.255.255 via Ethernet0 (172.16.1.1)
01:02:55: network 172.17.0.0, metric=10576
01:02:55: network 10.0.0.0, metric=501
01:02:55: network 192.168.1.0, metric=8476
01:02:55: network 192.168.2.0, metric=10476
01:02:55: IGRP: sending update to 255.255.255.255 via Loopback0 (10.1.1.1)
01:02:55: network 172.17.0.0, metric=10576
01:02:55: network 172.16.0.0, metric=1100
01:02:56: network 192.168.1.0, metric=8476
01:02:56: network 192.168.2.0, metric=10476
01:02:56: IGRP: sending update to 255.255.255.255 via Serial0 (192.168.1.1)
01:02:56: network 172.17.0.0, metric=10576
01:02:56: network 172.16.0.0, metric=1100
01:02:56: network 10.0.0.0, metric=501
01:02:56: network 192.168.1.0, metric=8476
01:02:56: network 192.168.2.0, metric=10476


RouterBから学習した三つの経路情報(172.17.0.0,192.168.1.0,192.168.2.0)も,RouterBに通知しています。
IGRPでもRIPと同様に,スプリット・ホライズンがデフォルトで効いているんですね。

最後に,イタズラして,IGRPの動作ASを変えてみましょう。
AS番号64番のプロセスを削除して,56番に変えてみます。

RouterA(config)#no router igrp 64
RouterA(config)#router igrp 56
RouterA(config-router)#network 10.0.0.0
RouterA(config-router)#network 172.16.0.0
RouterA(config-router)#network 192.168.1.0


ルーティング・テーブルを見てみます。

RouterA#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

172.16.0.0/24 is subnetted, 1 subnets
C 172.16.1.0 is directly connected, Ethernet0
10.0.0.0/24 is subnetted, 1 subnets
C 10.1.1.0 is directly connected, Loopback0
C 192.168.1.0/24 is directly connected, Serial0


IGRPで受信していた経路情報が消えてしまいました。
IGRPでほかのルーターと経路情報をやりとりするときは,AS番号が一致している必要があるというわけですね。

IGRPラボ
IGRPの基本設定
パッシブ・インタフェースの設定
不等コスト・ロードバランシング
タイマーの設定
ユニキャスト・アップデートの設定