EIGRP

EIGRP

IOS12.2 EIGRP configuration guide
http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122cgcr/fipr_c/ipcprt2/1cfeigrp.htm

  • Cisco独自プロトコル
  • IPだけでなく、Novell IPXとAppleTalkにも対応しているマルチプロトコル
  • IGRPを拡張したもの。IGRPと同じメトリックを使用。
    • 同じASNの場合、IGRPと自動的にredistributeする
  • DUAL(Diffusing Update Algorithm)によるfast convergenceとloop freeを保証
  • 基本はディスタンスベクタだが、リンクステート的な面ももち、ハイブリッド型と呼ばれたりもする
    • 部分的なアップデートの送付
    • Neighbor Discovery (Hello Protocolをもつ)
  • unequal cost paths load balancingをサポート
  • ospfより柔軟なところは
    • distribute listをfull support
    • どのinterface、どのrouterでもmanualでsummarizationできる
  • 3つのtableをもつ
    • EIGRP neighbor table
    • EIGRP topology table
    • Routing table
  • Reliable Transport Protocol
    • 信頼性の必要なところ(Updateなど)はUnicastでAck、そうでないところ(Helloなど)ではMulticastでAckなし。
  • Helloをマルチキャスト(224.0.0.10)(0100.5e00.000a)でやりとり。5sか60s。(hold timeはその3倍)

設定

EIGRPを有効にする

EIGRPプロセスを動作させ、EIGRPを動作させるインターフェースを指定する。インターフェースの指定はネットワークで指定し、ネットワークコマンドで入れたものの中に含まれるIPアドレスを持ったインターフェースでEIGRPのパケットをやりとりするようになる

Router(config)# router eigrp autonomous-system
Router(config-router)# network ip-address [ wild-card-mask ]

ここでautonomous-systemとはいわゆるBGPのASとは異なるが、おなじAS番号をもったEIGRP(及びIGRP)プロセス同士でEIGRPの経路交換を行うため、(BGP)AS内で一つのIGPという意味ではBGPのASとあわせておいたほうがわかりやすいと思う。

また、ネットワークコマンドでwild-card-mask使わない場合は、クラスフルでの指定となるため、EIGRPを動かすインターフェースを特定するときは注意する。

Neighbor Adjacency Change Loggingを有効に

EIGRPではデフォルトで隣接関係が変わったときにその旨を出力してくれない。OSPFのように、隣接関係が変わったらコンソールに出力してもらい時に設定する。

Router(config-router)# eigrp log-neighbor-changes

EIGRPの使える帯域の変更

通常EIGRPはbandwidthインターフェースコマンドで設定した帯域の50%しか使えない。この割合を変更するには、

Router(config-if)# ip bandwitdh-percent eigrp percent

EIGRPメトリック計算変更

EIGRPのメトリックは帯域、回線の遅延、信頼性、負荷、MTUの5つを使って計算される。ただしデフォルトでは帯域と遅延のみが使用される。このメトリック計算式は下記で表される。

メトリック = { K1*帯域 + ( K2*帯域 ) / (256-負荷) + K3*遅延 } * { K5 / ( 信頼度+K4 ) }

デフォルトでは、

K1 = 1
K2 = 0
K3 = 1
K4 = 0
K5 = 0

となっているため、デフォルトでは

メトリック = 帯域 + 遅延

となる。このK値を変えることによってメトリック計算式を変更できる。

Router(config-router)# metric weights tos k1 k2 k3 k4 k5

このK値が一致していない場合、隣接関係はUPしないためネットワーク内で一致させる必要がある。

Offset List

INまたはOUTの経路に対し、メトリックを増やすことができる。ただし、引くことはできない。ACLを用いることにより、特定の経路に対しメトリックを増やすことも可能。

Router(config-router)# offset-list [ access-list-number | access-list-name] { in | out } offset [ interface ]

Auto Summarizationの無効

EIGRPはVLSMをサポートしているが、デフォルトでクラスフル境界で自動的に経路集約してしまう。これを無効にするには、

Router(config-router)# no auto-summary

経路集約

EIGRPでは任意のインターフェースで経路集約が可能。

Router(config-if)# ip summary-address eigrp autonomous-system-number ip-address mask

ここに含まれるネットワークが一つでもルーティングテーブルにあれば集約経路がアドバタイズされる。同時にnull 0への集約ルートがインストールされる。

Floating Summary Routes

EIGRPでは、経路集約を使ってデフォルトルートをアドバタイズできる

Router(config-if)# ip summary-address eigrp 0.0.0.0 0.0.0.0

ところが、EIGRPの集約経路はADが5と小さく、これで同時にインストールされるnull 0への経路のADが5となり、例えばルータがどこからかデフォルトルートをもらっている場合、このルータで経路集約を使ってデフォルトルートを設定すると、このnull 0へのルートが最優先となってしまい、もらっているデフォルトルートをルーティングテーブルにインストールできない。

これを防ぐために、Floating Summary Routeが使える。これは経路集約ルートのAD値を高くすることで実現できる。

Router(config-if)# ip summary-address eigrp 0.0.0.0 0.0.0.0 250

これにより、もらっているデフォルトルートをルーティングテーブルにインストールし、null 0ルートはそのデフォルトルートの到達性がなくならない限りインストールされない。

認証

EIGRPの認証は、まずkey-chainで認証キーの設定を行い、それをインターフェースに割り当てる。

まずkey-chainの設定

Router(config)# key chain name-of-chain
Router(config-keychain)# key number
Router(config-keychain-key)# key-string text

認証キーが有効な時間の設定をここにすることもできる。

Router(config-keychain-key)# accept-lifetime start-time { infinite | end-time | duration seconds }
Router(config-keychain-key)# send-lifetime start-time { infinite | end-time | duration seconds }

作成した認証キーをインターフェースにわりあてる。

Router(config-if)# ip authentication mode eigrp autonomous-system md5
Router(config-if)# ip authentication key-chain eigrp autonomous-system key-chain

EIGRPの認証はMD5認証だけ。クリアテキストはない。

Helloパケットの送出間隔とHold Timeの調整

デフォルトでは、T1以上の速度のインターフェースで5秒毎、それ以下の速度のインターフェースで30秒毎にHelloパケットを送出する。ここでの速度は物理速度ではなく、bandwidthコマンドで設定した速度になるので注意。Hold TimeはHelloパケット送出間隔の3倍がデフォルト。

Helloパケットの送出間隔を調整するには

Router(config-if)# ip hello-interval eigrp autonomous-system seconds

Hold Timeの調整をするには

Router(config-if)# ip hold-time eigrp autonomous-system seconds

OSPFのように、Helloパケット送出間隔を変えたからといってHold Timeが自動的に調整されないので注意。

Split Horizonの無効化

EIGRPでは、デフォルトですべてのインターフェースでSplit Horizonが有効になっている。フレームリレーなどNBMAなネットワークでは、Split Horizonを無効にしないと到達性を確保できない可能性がある。(特にハブルータのインターフェースにて)

Split Horizonを無効にするには、

Router(config-if)# no ip split-horizon eigrp autonomous-system

EIGRP Stub Routing

ハブアンドスポークで特に使われる。スポークルータのCPU/メモリを軽くするためにスポークルータをスタブルータとし、不要な経路やクエリを少なくする。

スポークルータ(スタブなルータ)に設定する。

Router(config-router)# eigrp stub [ receive-only | connected | static | summary ]

パラメータは、それぞれスポーク(スタブ)ルータがどのネットワークをハブルータにアドバタイズするかの指定。receive-onlyを選択すると、経路をアドバタイズすることもなく、またクエリもださなくなる。

不等コストバランス

EIGRPではコストが違うルートでも、設定した倍数以内ならそのルートをインストールできる。その設定値は、ルーティングテーブルのメトリックを比較すると簡単に算出できる。まともに計算すると結構たいへん。

Router(config-router)# variance variance-multiplier

設定した割合に従ってトラフィック分散される

Monitoring and Maintaining

  • show ip eigrp interfaces
    • 設定したI/FでEIGRPが動作しているか確認
  • show ip eigrp neighbors
  • show ip eigrp topology
  • NBMA networkで特にsprit horizonに注目

TIPS

  • フィルタかけずにroute advertiseさせない方法として、stubにするという方法もある

トラックバック(0)

トラックバックURL: http://blog.kslabs.net/mt/mt-tb.cgi/257

コメントする

From TestKing

メルマガ

シスコ認定、どうせとるなら「めざせ! CCIE」ということでメールマガジンを発行しています。

登録はこちらから
メールアドレス:
解除はこちらで
メールアドレス:
Powered by まぐまぐ

BlogPeople

BLOG PET

From Google