2005年01月22日

ルーティングプロトコル復習 EIGRP編その1

どうも!せっかくの土曜日を無駄に過ごしたKyoです。(泣
さて、今日はEIGRPについて見ていきましょう。例によってその1はCCNAレベルでその2以降はBSCI(CCNP)レベルです。

EIGRPは非常に便利なルーティングプロトコルといえます。
なぜならば、ネットワークエンジニアにEIGRPの説明をさせれば、その人がどれぐらいシスコ信者かがわかるからです!。。。げふげふw

ということなので(?)EIGRPはIGRP同様シスコ独自のルーティングプロトコルです。
しかし、IGRPより格段にパワーアップしています。
あまりにEIGRPを持ち上げると「おまえシスコ信者かー」と突っ込まれるのでヤメ(笑)
でもCCIEなんて「いかにシスコに魂を売るか」が重要じゃなおkfj;えいjげg

・・・さて、EIGRPですが。w
まずは、ディスタンスベクターとリンクステートの特徴からおさらいしておきましょう。

・ディスタンスベクター型
ルート情報をアドバタイズする。定期的なアップデートを行う。データを丸投げするので帯域を消費する。タイマーを利用するのでコンバージェンスが遅い、単純なのでルータへの負担は軽い
・リンクステート型
リンク情報をアドバタイズする。イベントトリガーアップデート。データは変更部分のみなので帯域はあまり消費しない。トリガーなのでコンバージェンスは早い。複雑なのでルータへの負担は大きい

・・・とこんなカンジです。ではEIGRPのハイブリット型の特徴を順番に見ていきましょう。
Q1 アドバタイズする情報は?
A1 ルート情報になります。従って、ハイブリット型→拡張ディスタンスベクタといいます。
Q2 アップデートの間隔は?
A2 イベントトリガーです。変更があったときにアドバタイズします。
Q3 送るデータの量は?
A3 変更部分のみなので多くありません。また、EIGRPが占有する帯域を制御することもできます。
Q4 コンバージェンスは早い?
A4 OSPFほどではないですが、ディスタンスベクタに比べると格段に早いです。
Q5 ルータへの負担は?
A5 RIPよりは多少あるでしょうが、OSPFほどでもないです。
Q6 その他の利点は?
A6 IP以外にもIPXやAppletalkもサポートしていること、DUALによる最適パス選定など(後述)

では、EIGRPの欠点はないのでしょうか?結論をいうと、あります。フィージブルサクセサが本当にベストパスなのか?ということとSIAという状態に陥ることがあること、そして何よりシスコ以外のルータでは使えないということです。ちなみに、同じくシスコ独自のプロトコルCDP(Cisco Discovery Protocol)は、HPのスイッチで使えちゃったりするんですが(笑)もしかしたらEIGRPしゃべれる他ベンダーのルータもあるかも???

では、EIGRPの原理を少しずつ見ていきましょう。

EIGRPはルーティングテーブル、トポロジーテーブル、ネイバーテーブルの3つのテーブルを持っています。(厳密に言うならIPルーティングテーブル、IPXトポロジーテーブル、Appletalkネイバーテーブル・・・・となるので合計9個ですね)
これらの役割は後で説明しますが、簡単に言えば、
・トポロジーテーブル・・隣接ルータからアドバタイズされたルート情報
・ルーティングテーブル・・・トポロジーから選択した最適ルートのテーブル
・ネイバーテーブル・・・Neighborの関係になったルータのリスト

EIGRPはRIPと異なり、OSPFに似ており、ルータと隣接関係を確立してからルート情報の交換を行います。
この関係をNeighborといいます。OSPFの場合、Ajacencyといって代表ルータ(DR)とそのバックアップルータ(BDR)のみと情報交換の関係を結んでいました。EIGRPの場合はEIGRPマルチキャスト(224.0.0.10)でHelloを受信し、応答としてアップデートパケットを返したルータとはNeighborになります。
つまり、同じネットワークにいるEIGRPルータ全部とNeighborになります。
ただし、
・AS番号が同じであること
・メトリック基準(K値)が同じであること
が条件です。その上で、下のHello-ACKの転移が正しく行わなければなりません。
ではこの遷移を詳しく見ていきましょう。

1.ルータAがルータB(のいるNW)にEIGRPマルチキャストでHelloパケットを送信します。
2.ルータBはHelloパケットを受け取ったら、Updateパケットを送信します。Updateっていうぐらいだから自分の持っているルート情報が入っています。

実はこの時点でNeighbor関係は成立しています。

3.ルータAはAckパケットを返します。受け取ったことを通知するんですね。
4.さらにルータAは受け取ったUpdateパケットの情報を自分のトポロジーテーブルに反映させます。
また、Neighborを認識したのでネイバーテーブルも更新します。
5.そしたら、ルータA自身もルート情報をUpdateパケットでマルチキャストします。
6.ルータBは受け取ったのでAckパケットを返します。

ルーティングプロトコル復習OSPF編その2で説明しますが、OSPFの場合はもっと複雑です。
さて、めでたく隣接関係が確立されたルータAとBですが、一度隣接関係になったらいつまでも隣接関係かというと、そうでもないのです。友情と同じように、定期的に連絡を取らなきゃいけないんです(何)

と、いうわけでHelloパケットは定期的に送って、隣接関係を維持します。このHelloパケットを送る間隔をHelloインターバルといいます。デフォルトのHelloインターバルはT1(1.5M)より速い回線(もちろんEthernetも入る)は5秒、BRIなどの低速回線だと60秒です。
#まあ、デフォルトといった以上変更はできます。ip eigrp hello-intervalをインターフェイスコンフィグモードで入力します。
じゃあ、Helloパケットが届かなかったらどうなるのか?3回届かないと隣接ルータはダウンしたものとみなします。これがホールドダウンタイムです。(ホールドダウンタイマーとは違う)
#これもip eigrp hold-timeコマンドで調整可能

ダウンしたとみなした場合、ネイバーテーブルからその隣接ルータが削除され、トポロジーテーブルからは、そのルータから学習したエントリーは全て削除します。


こうして得たルート情報から、目的ネットワークへのルートが計算されます。この方法に関しては次回以降に譲りますが、とりあえず
・最も最短(低コスト)で選ばれたパスをSuccessorといい、ルーティングテーブルに載る。またそのコストをFeasible Distanceという。
・ネイバーが送る(つまりそのネイバーから目的ネットワークへのコスト)をReported Distanceという
・Reported DistanceがFeasible Distanceより小さい場合、その経路はFeasible Successorとなり、バックアップルートに利用される。

さて、なんのこっちゃ?
というのを例によってCCNA復習ラボでみていきましょう。



とりあえず、全部の経路をEIGRPでアドバタイズする設定を打ち込みましょう。
RT03(config)#router eigrp 10
RT03(config)#network 10.2.2.0 0.0.0.3
RT03(config)#network 192.168.1.0
RT03(config)#no auto-summary

1行目の10というのはAS番号です。これが違うとネイバーにはなれません。
2行目・・・クラスレスルーティングプロトコルなのでサブネットマスクも送信できます。が、ここではワイルドカードマスクで対象IFを指定してます。
3行目・・・ワイルドカードマスクを特に指定しなければクラスフル境界が採用されます。
同様に全てのルータにEIGRPを設定していきます。

ではここで、各テーブルを見ていきましょう。
RT03#show ip route eigrp
   172.24.0.0/32 is subnetted, 1 subnets
D   172.24.1.1 [90/20691200] via 192.168.1.254, 00:01:03, Ethernet0
   10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
D   10.1.1.0/24 [90/21075200] via 192.168.1.254, 00:01:03, Ethernet0
D  192.168.2.0/24 [90/20537600] via 192.168.1.254, 07:20:34, Ethernet0
D  192.168.3.0/24 [90/20563200] via 192.168.1.254, 00:01:08, Ethernet0

EIGRPのAdministrative Distanceは90です。とりあえず、いままでのルーティングプロトコルの中では最強であることがわかります。
メトリックですが、えらいでかい数字が表示されていますね。IGRPの256倍の精度でメトリックを計算しているので、このような値になっています。具体的な算出法は次回やります。
さて、目的ネットワーク172.24.1.1へはどうやら192.168.1.254から行くようですね。
トポロジーテーブルを見てみましょう。
RT03#show ip eigrp top all
IP-EIGRP Topology Table for AS(10)/ID(192.168.1.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 21075200, serno 10
    via 192.168.1.254 (21075200/21049600), Ethernet0
    via 10.2.2.2 (41024000/40512000), Serial0
P 10.2.2.0/30, 1 successors, FD is 2169856, serno 3
    via Connected, Serial0
P 192.168.1.0/24, 1 successors, FD is 281600, serno 2
    via Connected, Ethernet0
P 192.168.2.0/24, 1 successors, FD is 20537600, serno 4
    via 192.168.1.254 (20537600/20512000), Ethernet0
P 192.168.3.0/24, 1 successors, FD is 20563200, serno 8
    via 192.168.1.254 (20563200/20537600), Ethernet0
    via 10.2.2.2 (41049605/40537605), Serial0
P 172.24.1.1/32, 1 successors, FD is 20691200, serno 9
    via 192.168.1.254 (20691200/20665600), Ethernet0
    via 10.2.2.2 (41152005/40640005), Serial0

とりあえず、一番したのエントリだけ見てください。サクセサである192.168.1.254経由のルートの
Feasible Distanceは20,691,220です。そしてもう一つのルート10.2.2.2経路のルートのdistanceは41,152,005のようです。さらにReported Distanceが40,640,005です。
つまり、下の経路(RT03-RT04-RT05)は残念ながらFeasible Successor(バックアップルート)にはなれなかった。ということです。

ではここで、RT04-RT05間の回線速度を128kにちょっとあげてみます。
そして、もう一度トポロジーテーブルをみると。。。

RT03#show ip eigrp topology all
IP-EIGRP Topology Table for AS(10)/ID(192.168.1.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 21024000, serno 33
    via 10.2.2.2 (21024000/20512000), Serial0
P 10.2.2.0/30, 1 successors, FD is 2169856, serno 3
    via Connected, Serial0
P 192.168.1.0/24, 1 successors, FD is 281600, serno 2
    via Connected, Ethernet0
    via 10.2.2.2 (21587205/21075205), Serial0
P 192.168.2.0/24, 1 successors, FD is 20537600, serno 29
    via 192.168.1.254 (20537600/20512000), Ethernet0
    via 10.2.2.2 (21561605/21049605), Serial0
P 192.168.3.0/24, 1 successors, FD is 20563200, serno 30
    via 192.168.1.254 (20563200/20537600), Ethernet0
    via 10.2.2.2 (21049605/20537605), Serial0
P 172.24.1.1/32, 1 successors, FD is 20691200, serno 31
    via 192.168.1.254 (20691200/20665600), Ethernet0
    via 10.2.2.2 (21152005/20640005), Serial0

今度は、10.2.2.2経由のReported Distanceが20,640,005になりました。
Feasible Distanceよりも小さくなりましたので、この経路はFeasible Successorになった、ということになります。ちなみに、どれがFeasible Successorなのかをしりたいときはshow ip eigrp topologyを実行します。(all・・・all-linksをいれない)
RT03#show ip eigrp top
IP-EIGRP Topology Table for AS(10)/ID(192.168.1.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 21024000
    via 10.2.2.2 (21024000/20512000), Serial0
P 10.2.2.0/30, 1 successors, FD is 2169856
    via Connected, Serial0
P 192.168.1.0/24, 1 successors, FD is 281600
    via Connected, Ethernet0
P 192.168.2.0/24, 1 successors, FD is 20537600
    via 192.168.1.254 (20537600/20512000), Ethernet0
P 192.168.3.0/24, 1 successors, FD is 20563200
    via 192.168.1.254 (20563200/20537600), Ethernet0
    via 10.2.2.2 (21049605/20537605), Serial0
P 172.24.1.1/32, 1 successors, FD is 20691200
    via 192.168.1.254 (20691200/20665600), Ethernet0
    via 10.2.2.2 (21152005/20640005), Serial0

192.168.1.0の経路が1つになりましたね。と、いうことは、192.168.1.0への経路として10.2.2.2からのルートはFeasible Successorではない、といえます。逆に、172.24.1.1への経路として10.2.2.2はFeasible Successorであった、ということになります。


とりあえず、その1はここまで。
その2以降、さらに詳しくEIGRPをみていきましょう!

By kyo @ 10:14 PM | CCNA | コメント (0) | トラックバック (1)

コメント

コメントを書く







名前、アドレスを登録しますか?




トラックバック

このエントリーのトラックバックURL:
http://www.n-study.com/mt/mt-tb.cgi/381


CCNAの勉強で、OSPFやEIGRPがわからなくて困っている人に! … “いまのCCNAでは、OSPFやEIGRPについての問題も出ていますね。もともとCCNPで出てくる内容だったので、まだ勉強をし始めた方は、OSPFやEIGRPはな...”
From ネットワークのおべんきょしませんか?ブログ @ 2005年01月23日 10:33