EIGRPの基本設定
・3台のルーターでEIGRPを使って経路情報を交換する
・障害時に経路が切り替わることを確認する
ネットワーク構成(画像を別ウインドウで表示)
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 Ethernet0
ip address 192.168.3.1 255.255.255.0
!
interface Serial0
ip address 192.168.1.2 255.255.255.0
!
router eigrp 1 ←EIGRPをAS番号1で動作させる
network 192.168.1.0
network 192.168.3.0
auto-summary ←経路の自動集約(デフォルトで入っている)
no eigrp log-neighbor-changes ←ログを出さない(デフォルトで入っている)
!
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 Ethernet0
ip address 192.168.3.2 255.255.255.0
!
interface Serial0
ip address 192.168.2.2 255.255.255.0
no fair-queue
!
router eigrp 1 ←EIGRPをAS番号1で動作させる
network 192.168.2.0
network 192.168.3.0
auto-summary ←経路の自動集約(デフォルトで入っている)
no eigrp log-neighbor-changes ←ログを出さない(デフォルトで入っている)
!
line con 0
transport input none
line aux 0
line vty 0 4
login
!
end
RouterCのコンフィグ
!
version 12.3
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname RouterC
!
interface Loopback0
ip address 10.1.1.1 255.255.255.0
!
interface Serial0
ip address 192.168.1.1 255.255.255.0
clockrate 64000
!
interface Serial1
ip address 192.168.2.1 255.255.255.0
clockrate 64000
!
router eigrp 1 ←EIGRPをAS番号1で動作させる
network 10.0.0.0
network 192.168.1.0
network 192.168.2.0
auto-summary ←経路の自動集約(デフォルトで入っている)
!
line con 0
line aux 0
line vty 0 4
login
!
end
確認
EIGRPは,IGRPとOSPFのいいとこ取りをしたシスコ独自のルーティング・プロトコルです。
シスコ独自の仕様とはいえ,現場で比較的よく使われています。
「IGRPは収束が遅い,でもOSPFはルーターに負担がかかる」というケースでよく使われます。
EIGRPの基本動作を見てみましょう。

●EIGRPの設定方法
設定方法は,以下の2ステップです。

1.ルーターでEIGRPを有効にする
 router eigrp AS番号
2.EIGRPを有効にするインタフェースを指定する
 network ネットワーク番号 (ワイルドカード・マスク)

すると,ネットワーク番号に属するインタフェースでEIGRPが有効になります。
動作させるための設定は,RIPやOSPFと,さほど変わりませんね。

●動作の確認
以上のコンフィグを入れると,ルーター3台のすべてのインタフェースでEIGRPがオンになります。
今回の主人公はRouterAです。
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

D  10.0.0.0/8 [90/2297856] via 192.168.1.1, 00:19:45, Serial0
C  192.168.1.0/24 is directly connected, Serial0
D  192.168.2.0/24 [90/2195456] via 192.168.3.2, 00:19:45, Ethernet0
C  192.168.3.0/24 is directly connected, Ethernet0


RouterCのLoopbackアドレスを含む,四つすべてのネットワークが見えています。
でも,RouterCのLoopbackアドレスである10.1.1.0/24が,10.0.0.0/8という集約された経路情報になっています。
なぜでしょうか?
show ip protocolsコマンドで,EIGRPの動作の詳細を見てみます。

RouterC#show ip protocols
Routing Protocol is "eigrp 1"
 Outgoing update filter list for all interfaces is not set
 Incoming update filter list for all interfaces is not set
 Default networks flagged in outgoing updates
 Default networks accepted from incoming updates
 EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0
 EIGRP maximum hopcount 100
 EIGRP maximum metric variance 1
 Redistributing: eigrp 1
 EIGRP NSF-aware route hold timer is 240s
 Automatic network summarization is in effect
 Automatic address summarization:
  192.168.2.0/24 for Serial0, Loopback0
  192.168.1.0/24 for Serial1, Loopback0
  10.0.0.0/8 for Serial0, Serial1
   Summarizing with metric 128256
 Maximum path: 4
 Routing for Networks:
  10.0.0.0
  192.168.1.0
  192.168.2.0
 Routing Information Sources:
  Gateway     Distance   Last Update
  Gateway     Distance   Last Update
  (this router)     90   01:53:40
  192.168.2.2      90   00:22:25
  192.168.1.2      90   00:22:26
 Distance: internal 90 external 170


自動集約がオンになっていることがわかります(赤字の部分)。
このようにEIGRPでは,デフォルトで自動集約がオンになっているんですね。
その証拠に,「auto-summary」というコマンドが,コンフィグ・ファイルに入っています。
経路集約がおこなわれるのは,RIPとIGRPと同じで,異なるメジャーネットの境界です。

では,この経路集約をオフにしちゃいましょう。
EIGRPの設定モードで,no auto-summaryコマンドを入力します。

RouterC#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
RouterC(config)#router eigrp 1
RouterC(config-router)#no auto-summary


これで自動集約がオフになりました。
再び,show ip protocolsコマンドで,EIGRPの動作状況を確認してみましょう。

RouterC#show ip protocols
Routing Protocol is "eigrp 1"
 Outgoing update filter list for all interfaces is not set
 Incoming update filter list for all interfaces is not set
 Default networks flagged in outgoing updates
 Default networks accepted from incoming updates
 EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0
 EIGRP maximum hopcount 100
 EIGRP maximum metric variance 1
 Redistributing: eigrp 1
 EIGRP NSF-aware route hold timer is 240s
 Automatic network summarization is not in effect
 Maximum path: 4
 Routing for Networks:
  10.0.0.0
  192.168.1.0
  192.168.2.0
 Routing Information Sources:
  Gateway     Distance   Last Update
  (this router)     90   01:59:09
  192.168.2.2      90   00:01:54
  192.168.1.2      90   00:01:54
 Distance: internal 90 external 170


自動集約がオフになったという表示が出ました。
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

   10.0.0.0/24 is subnetted, 1 subnets
D    10.1.1.0 [90/2297856] via 192.168.1.1, 00:01:09, Serial0
C  192.168.1.0/24 is directly connected, Serial0
D  192.168.2.0/24 [90/2195456] via 192.168.3.2, 00:01:09, Ethernet0
C  192.168.3.0/24 is directly connected, Ethernet0


10.0.0.0/8という集約経路に代わって,10.1.1.0/24という集約前の経路情報が登録されました。
RouterCで経路集約がオフになったので,サブネットの経路情報がそのまま流れて来たわけです。

もうちょっとEIGRPの動作を見てみましょう。
EIGRPのルーティング・アップデートはどうなっているでしょうか?
デバッグでパケットを見てみます。

RouterA#debug eigrp packets
EIGRP Packets debugging is on
  (UPDATE, REQUEST, QUERY, REPLY, HELLO, IPXSAP, PROBE, ACK, STUB, SIAQUERY, SIAREPLY)
RouterA#
02:16:35: EIGRP: Sending HELLO on Serial0
02:16:35:  AS 1, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0

02:16:36: EIGRP: Received HELLO on Serial0 nbr 192.168.1.1
02:16:36:  AS 1, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
02:16:36: EIGRP: Sending HELLO on Ethernet0
02:16:36:  AS 1, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0
02:16:38: EIGRP: Received HELLO on Ethernet0 nbr 192.168.3.2
02:16:38:  AS 1, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
02:16:40: EIGRP: Sending HELLO on Serial0
02:16:40:  AS 1, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0


Helloパケットをやりとりしているのがわかります。
パケットの送信間隔を見てみると,5秒間隔で送信していることがわかります。
EIGRPではこのように,デフォルトでは5秒間隔でHelloパケットを送信します。
また,1.5Mビット/秒以下のリンクでは60秒間隔になります。

EIGRPルーターは,Helloパケットを使って何をしているかというと,ネイバーを確立しています。
EIGRPは,OSPFのようにネイバー同士で経路情報をやりとりするんですね。
show ip eigrp neighborsコマンドで,現在確立しているネイバーを表示できます。

RouterA#show ip eigrp neighbors
IP-EIGRP neighbors for process 1
H  Address         Interface  Hold Uptime  SRTT  RTO Q Seq Type
                    (sec)     (ms)    Cnt Num
1  192.168.1.1       Se0      13 00:05:49 1027 5000  0 16
0  192.168.3.2       Et0      11 00:31:50  10   200  0 14


二つのネイバーが表示されました。
RouterB(192.168.3.2)とRouterC(192.168.1.1)です。

●EIGRPのトポロジ・テーブルを解読
EIGRPルーターが経路情報をどうやって管理するかと言うと,トポロジ・テーブルに記述します。
トポロジ・テーブルは,show ip eigrp topologyで見ることができます。

RouterA#show ip eigrp topology
IP-EIGRP Topology Table for AS(1)/ID(192.168.3.1)

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
    r - reply Status, s - sia Status

P 10.1.1.0/24, 1 successors, FD is 2297856
     via 192.168.1.1 (2297856/128256), Serial0

P 192.168.1.0/24, 1 successors, FD is 2169856
     via Connected, Serial0
     via Summary (2169856/0), Null0
P 192.168.2.0/24, 1 successors, FD is 2195456
     via 192.168.3.2 (2195456/2169856), Ethernet0
     via 192.168.1.1 (2681856/2169856), Serial0
P 192.168.3.0/24, 1 successors, FD is 281600
     via Connected, Ethernet0
     via Summary (281600/0), Null0


10.1.1.0/24の経路情報に注目すると,「10.1.1.0/24あての最適経路として192.168.1.1をネクストホップに選んでおり,バックアップ用の経路はない」ということがわかります(赤字の部分)。
どんな情報が書かれているかを解読してみましょう。

・「P」…パッシブ状態。つまり,収束状態
・「10.1.1.0/24」…この経路情報で扱っているネットワーク
・「1 successors」…サクセサ(最適経路に到達するためのネクストホップ・ルーター)は一つ
・「FD is 2297856」…最適経路までの合計メトリック(フィージブル・ディスタンス)値は2297856
・「via 192.168.1.1」…ネクストホップ・ルーターのアドレス
・「(2297856/128256)」…前半の2297856はFD(フィージブル・ディスタンス)値。後半の128256はAD(アドバタイズドディスタンス)値。
・「Serial0」…EIGRPパケットを受信したインタフェース。つまり,パケットを出力するインタフェース

専門用語が多いですね。概略は以下です。
【ルーターの種類】
 ・サクセサ………………………最適経路のネクストホップ・ルーター
 ・フィージブル・サクセサ………バックアップ経路のネクストホップ・ルーター
【メトリックの種類】
 ・フィージブル・ディスタンス(FD)……最適経路におけるあて先までの合計メトリック
 ・アドバタイズド・ディスタンス(AD)…ネクストホップ・ルーターからあて先までの合計メトリック

EIGRPの特徴は,「ディスタンス値」と呼ばれる情報を使って最適経路とバックアップ経路を判断するところです。
最適経路は,ディスタンス値の一番小さな経路で,これはつまりFDが一番小さな経路です。
バックアップ経路は,二番目にディスタンス値が小さな経路になりますが,その際にADを使います(後述)。
こうして,サクセサ(最適経路のネクストホップ)と,フィージブル・サクセサ(バックアップ経路のネクストホップ)を決めるわけです。
そして最終的に,サクセサの経路情報をルーティング・テーブルに登録します。

さらに詳しく知りたい場合は,以下のページが参考になります。
http://www.cisco.com/japanese/warp/public/3/jp/service/tac/103/eigrp-toc-j.shtml

show ip eigrp topologyコマンドで表示されるのは,サクセサとフィージブル・サクセサの経路です。
「all-links」オプションを付けると,この二つになれなかった経路情報も表示されます。

RouterA#show ip eigrp topology all-links
IP-EIGRP Topology Table for AS(1)/ID(192.168.3.1)

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
    r - reply Status, s - sia Status

P 10.1.1.0/24, 1 successors, FD is 2297856, serno 15
     via 192.168.1.1 (2297856/128256), Serial0
     via 192.168.3.2 (2323456/2297856), Ethernet0

P 192.168.1.0/24, 1 successors, FD is 2169856, serno 1
     via Connected, Serial0
     via Summary (2169856/0), Null0
P 192.168.2.0/24, 1 successors, FD is 2195456, serno 11
     via 192.168.3.2 (2195456/2169856), Ethernet0
     via 192.168.1.1 (2681856/2169856), Serial0
P 192.168.3.0/24, 1 successors, FD is 281600, serno 10
     via Connected, Ethernet0
     via Summary (281600/0), Null0


10.1.1.0/24あての経路として,192.168.3.2経由の経路情報が表示されました。
なぜこの経路情報がバックアップ経路(フィージブル・サクセサ)にならなかったのかというと,それは,

フィージブル・サクセサ(バックアップ経路)になれるのは,その経路のAD(アドバタイズド・ディスタンス)が現在のフィージブル・ディスタンスより小さいとき

という条件があるからです。
10.1.1.0/24の経路情報に注目すると,192.168.3.2経由の経路のADは2297856になっています。
これは,この経路情報のFDである2297856と同じ値です。
そのためRouterAは,この経路をバックアップ経路として登録するのを控えたわけです。

●経路の切り替わりを確認
では,RouterAとRouterCがつながる経路がダウンするとどうなるでしょうか。
トポロジ・テーブルには10.1.1.0/24あてのフィージブル・サクセサ(バックアップ経路)がありませんが,その場合RouterAは,新しいサクセサを見つけます。
実際にRouterAのSerial0インタフェースをダウンさせてみましょう。

RouterA#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
RouterA(config)#interface Serial 0
RouterA(config-if)#shutdown
RouterA(config-if)#
02:20:21: %LINK-5-CHANGED: Interface Serial0, changed state to administratively down
02:20:22: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0, changed state to down


Serial0のリンクがダウンした表示が出ました。
トポロジ・テーブルを見みましょう。
すると今度は,192.168.3.2経由の経路が登録されています。
サクセサとフィージブル・サクセサがなくなったので,192.168.3.2経由の経路を新しいサクセサとして選びました。
フィージブル・サクセサでもなかった経路情報が,一気に2階級昇進してサクセサに昇格したわけですね。

RouterA#show ip eigrp topology all-links
IP-EIGRP Topology Table for AS(1)/ID(192.168.3.1)

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
    r - reply Status, s - sia Status

P 10.1.1.0/24, 1 successors, FD is 2323456, serno 19
     via 192.168.3.2 (2323456/2297856), Ethernet0

P 192.168.2.0/24, 1 successors, FD is 2195456, serno 11
     via 192.168.3.2 (2195456/2169856), Ethernet0
P 192.168.3.0/24, 1 successors, FD is 281600, serno 10
     via Connected, Ethernet0


ルーティング・テーブルも見てみましょう。
10.1.1.0/24あての経路が192.168.3.2(RouterB)経由に代わったことがわかります。

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

   10.0.0.0/24 is subnetted, 1 subnets
D    10.1.1.0 [90/2323456] via 192.168.3.2, 00:00:35, Ethernet0
D  192.168.2.0/24 [90/2195456] via 192.168.3.2, 00:08:23, Ethernet0
C  192.168.3.0/24 is directly connected, Ethernet0



EIGRPの用語や概要は,以下のWebサイト(シスコのTAC)も参考になます。
http://www.cisco.com/japanese/warp/public/3/jp/service/tac/103/1-j.shtml

EIGRPラボ
EIGRPの基本設定
パッシブ・インタフェースの設定
不等コスト・ロードバランシング
タイマーの設定
NBMAネットワークにおけるEIGRPの設定