ルーティングプロトコルは、ルーター同士の通信方法を指示し、それぞれが情報をどのように配布すべきかを決めます。つまり、ルーターが経路を計画し、適切に機能できるようにするものです。
企業はネットワークに適したルーティングプロトコルを選ぶ必要があります。これらのプロトコルによって、コンテンツをストリーミングできるか、信頼性の高い電話会議をホストできるかが決まることもあります。性能と速度が高ければ、ユーザーはネットワーク内やオンライン上のさまざまな場所との間で必要なファイルをやり取りし、迅速に作業できます。
また、ルーティングプロトコルはネットワーク内の変化する状況に適応でき、オフラインになっている接続や存在する障害を検出できるため、企業ネットワークの可用性を維持することも重要です。
複数のルーティングプロトコルが現在利用可能ですが、最も頻繁に比較される2つが、Open Shortest Path First(OSPF)とEnhanced Interior Gateway Routing Protocol(EIGRP)です。どちらもインテリアゲートウェイプロトコルとみなされ、単一のルーティングドメイン内で動作します。
EIGRP(Enhanced Interior Gateway Routing Protocol)とは?
設計元はCisco Systemsで、Enhanced Interior Gateway Routing Protocolは、従来の同種プロトコルよりも効率的にルーター間で情報を交換できるネットワークプロトコルです。
EIGRPは、ベースとなったInterior Gateway Routing Protocolを使用するルーターと完全な相互運用性があります。また、Novell NetWareやAppleTalkのネットワークにも使用されます。
EIGRPルーターは、隣接するルーターのルーティングテーブルのコピーを保持します。あるルーターが経路を見つける必要がある場合、これらのテーブルを調べて適切な経路を探します。経路が見つからなければ、隣接するルーターが代わりに探し、それを繰り返して経路が確立されます。
EIGRPは、有限状態機械上で実行される拡散更新アルゴリズムを使用して最も効率的な経路を決定します。このアルゴリズムによって、最終的に送信元から宛先までの最も低コスト、または最も効率的な経路が選ばれます。

OSPF(Open Shortest Path First)とは?
企業ネットワークで一般的に使用されるOpen Shortest Path Firstは、最短経路優先(SPF)技術を使って、ローカルエリアネットワーク(LAN)上のルーター間でルーティング情報を効率的に検出・配布します。
TCP/IP環境向けに特別に設計されたOSPFでは、ルーターは同じネットワーク内にあり、そのエリア内のすべてのルーターを把握しています。同じエリアに属するルーターは、学習した情報を隣接ルーターに伝達できます。この隣接ルーターはネイバーと呼ばれます。
OSPFシステムは、Dijkstraのアルゴリズムを使って、リモートの宛先またはルーターまでの最短経路を計算できます。このアルゴリズムは、始点ノードから宛先ノードまでの最短経路を見つけるために使われます。

EIGRPとOSPFの比較
| EIGRP | OSPF | |
|---|---|---|
| 正式名称 | Enhanced Interior Gateway Protocol | Open Shortest Path First |
| 標準規格 | Cisco独自仕様 | IETFオープン標準 |
| CPUリソース使用量 | CPUとメモリの必要量が少ない | CPUとメモリのリソースを大量に消費 |
| 実装 | 容易 | 複雑 |
| プロトコルの種類 | ハイブリッド | リンクステート |
| ネットワークトポロジー | フラット型設計 | 階層型設計 |
| アドミニストレーティブディスタンス | 90(内部)170(外部) | 110 |
| アルゴリズム | DUAL(Diffusing Update Algorithm)ディスタンスベクター | Dijkstraリンクステート |
| 用途 | 中規模から大規模のネットワーク | 中規模から大規模のネットワーク |
| コンバージェンス速度 | 非常に高速 | 高速 |
| ルーティングメトリック | 信頼性、負荷、帯域幅、遅延を組み合わせる | 帯域幅/コスト |
| 負荷分散 | 不等コストの経路メトリック | 等コストのメトリック |
EIGRPとOSPFの5つの主な違い
EIGRPとOSPFは原理上いくつかの共通点を持ちますが、実際の動作は大きく異なります。こうした違いはプロトコルの種類から始まり、コンバージェンス時間、メトリック、アドミニストレーティブディスタンス、負荷分散にまで及びます。
プロトコルの種類
EIGRPネットワークのルーターは、ディスタンスベクターアルゴリズムとリンクステートの両方を使用します。ディスタンスベクターアルゴリズムでは、ルーターはトポロジーの変更を他のルーターに通知します。また各ルーターは、宛先ノードと自身との距離を一覧にしたテーブルを持ちます。
このプロトコルでは、他のルーターの距離情報に変更があった場合や、別のルーターへのリンクが失われた場合にも、ルーター自身を更新する必要があります。そのため、拡散更新アルゴリズムが最短経路を計算するEIGRPネットワークでは、最適経路と代替経路の両方を利用できます。
一方、リンクステートルーティングは、ディスタンスベクター方式のルーターのようにエリア内のすべてのルーターと通信するわけではありません。代わりに、これらのルーターは一度に1台のルーターとメッセージを交換し、ネットワークトポロジーを学習します。
主にリンクステートプロトコルに基づくOSPFネットワークは、Dijkstraアルゴリズムを使って最短経路を見つけます。
コンバージェンス時間
EIGRPは、OSPFよりコンバージェンス時間が短くなっています。つまり、リンクやルーターに障害が発生した場合でも、経路を迅速に再計算できます。これは、ネットワークループを回避しながら宛先までの最短経路を計算するDiffusing Update Algorithm(DUAL)を使用するためです。OSPFはShortest Path First(SPF)アルゴリズムを使用するため、コンバージェンスに時間がかかります。

メトリック
EIGRPは、帯域幅、遅延、信頼性、負荷、最大転送単位(MTU)を含む複合メトリックを使用します。メトリックは各パラメーターの最小値を用いて計算されます。これにより経路を迅速に計算し、常に最適な経路を選択できます。

OSPFは、リンクの帯域幅に基づく単一のメトリックであるコストを使用します。このメトリックはリンクの帯域幅の逆数を用いて計算され、あるノードから別のノードまでの経路コストを決定するために使われます。経路のコストを合計して、宛先までの最短経路を決定します。
アドミニストレーティブディスタンス
アドミニストレーティブディスタンスは、ルーティングプロトコルの信頼性を表す指標です。同じ宛先への経路が複数ある場合に、ルーターが最適な経路を選択するために使う値です。アドミニストレーティブディスタンスの値が小さいほど、そのプロトコルは信頼性が高いとみなされます。
EIGRPでは、アドミニストレーティブディスタンスを設定でき、デフォルト値は内部経路が90、外部経路が170です。つまりEIGRPは、外部から学習した経路よりも内部で学習した経路を優先します。複数の経路のアドミニストレーティブディスタンスが同じ場合、EIGRPは帯域幅や遅延などの別のメトリックを使って最適な経路を決定します。
一方、OSPFではアドミニストレーティブディスタンスは固定されており、変更できません。OSPFのアドミニストレーティブディスタンスは、すべての経路で110です。つまり、デフォルトではOSPFの経路はEIGRPの経路より信頼性が低いとみなされます。ただし、同じアドミニストレーティブディスタンスを持つ経路が複数ある場合、OSPFはパスコストなどの別のメトリックを使って最適な経路を決定します。
負荷分散
リソース利用率を最適化し、遅延を最小限に抑え、ネットワーク性能を向上させるために、複数の経路にネットワークトラフィックを分配する処理を負荷分散と呼びます。EIGRPとOSPFはどちらも負荷分散をサポートしていますが、その実現方法にはいくつかの違いがあります。
EIGRP
- EIGRPはデフォルトで不等コスト負荷分散をサポートしており、異なるメトリックを持つ経路間にトラフィックを分配できます。
- EIGRPは、経路の帯域幅、遅延、信頼性、負荷、MTUの組み合わせに基づいてメトリックを計算します。
- EIGRPではvarianceコマンドを使って、許可する負荷分散のレベルを設定します。varianceコマンドは、負荷分散処理に含める経路の最小メトリックに対する倍率を設定します。
OSPF
- OSPFはデフォルトで等コスト負荷分散をサポートしており、同じメトリックを持つ複数の経路にトラフィックを分配できます。
- OSPFは、経路の帯域幅に基づいてメトリックを計算します。
- OSPFではcostコマンドを使って経路のメトリックを設定します。
設定方法の違い
サンプルコードを使ってEIGRPとOSPFの設定方法の違いを分析しました。各プロトコルを設定する基本的な手順は次のとおりです。
EIGRPの設定
CiscoルーターでEIGRPを設定するには、次の手順に従います。
1. グローバルコンフィギュレーションモードに入る
Router> enable
Router# configure terminal2. router EIGRPコマンドを使ってルーターでEIGRPを有効にし、自律システム(AS)番号を指定する:
Router(config)# router eigrp <AS_number>3. networkコマンドに続けてネットワークのIPアドレスとワイルドカードマスクを指定し、EIGRPに参加するルーターインターフェースを設定する:
Router(config-router)# network <network_address> <wildcard_mask>OSPFの設定
OSPFを設定する基本的な手順は次のとおりです。
1. グローバルコンフィギュレーションモードに入り、「router ospf」コマンドに続けてプロセスID番号を入力する。例:
Router(config)# router ospf 1これによりOSPFが有効になり、IDが1の新しいプロセスが作成されます。
2. 次にOSPFルーターIDを割り当てる。
OSPFネットワーク内の各ルーターには、識別用の一意のIDが必要です。ルーターIDは手動で割り当てることも、OSPFに自動的に選択させることもできます。手動でルーターIDを割り当てるには、グローバルコンフィギュレーションモードで次のコマンドを入力します。
Router(config-router)# router-id <router-id>「router-id」を、ルーターIDとして使用するIPアドレスに置き換えます。
3. 次にOSPFインターフェースのエリアIDを定義する:
Router(config-router)# network <network-address> <wildcard-mask> area <area-id>EIGRPとOSPFの選び方
ほとんどの場合、OSPFは最小コストだけを考慮するため、実装がはるかに簡単です。特に小規模ネットワークで効果を発揮します。ただし、ネットワークが大きくなると複雑になる可能性があります。大規模なサイトでは、環境を適切に維持できるITスキルがあることを確認する必要があります。
また、さまざまなLANやWAN環境でも優れた性能を発揮し、異なるベンダーのデバイスやルーターを使用している場合にも適しています。OSPFはオープンソースであり、このプロトコルを使えば幅広い種類のルーターをより簡単に設定できます。
CiscoはEIGRPもオープン標準規格だと主張していますが、同社が準備したRFC 7868文書ではコアプロトコルの多くを公開していません。この詳細が欠けているため、EIGRPネットワークで他社製ルーターを使うのは困難です。
とはいえ、EIGRPはCiscoルーターを使用する企業にとって優れた選択肢です。ネイティブに統合されているため設定がはるかに簡単で、コンバージェンスも高速です。
結論:EIGRPとOSPFの違い
EIGRPとOSPFはどちらも、現在のネットワークインフラで広く使われているルーティングプロトコルです。どちらを選ぶかは最終的に、ネットワークの規模、複雑さ、ハードウェアの互換性など、対象となるネットワーク固有のニーズや要件によって決まります。
EIGRPとOSPFの主な違いを理解することで、ネットワーク管理者は自社のネットワークインフラに適したルーティングプロトコルを選択する際に、十分な情報に基づいて判断できます。
ネットワークをわかりやすく可視化するにはネットワークマッピングツールを使えます。また、ネットワークを保護するには、ネットワークセキュリティ監査を実施するための8つのヒントを活用しましょう。