| 確認 |
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番号が一致している必要があるというわけですね。
|
|