単元解説

OSPFv2の基礎

ルーティングCCNA

IPv4ネットワークで使うリンクステート型の動的ルーティングプロトコルOSPFv2について、単一エリア構成、ネイバー関係、LSDB、コスト、基本設定を学びます。

図版:Net Basics Labタップして拡大
OSPFv2の基礎の要点を図解しています。

この単元で学ぶこと

OSPFv2は、IPv4ネットワークで使うリンクステート型の動的ルーティングプロトコルです。ルータ同士がネットワークの接続情報を交換し、各ルータが同じようなネットワーク構成図を作ったうえで、宛先までの最適な経路を計算します。

この単元では、もっとも基本的な単一エリア構成を中心に、OSPFv2が経路を学習する流れ、ネイバー関係、ルータID、LSDB、コスト、Cisco IOSでの基本設定と確認方法を整理します。

OSPFv2とは

OSPFv2は、同一の自律システム内で動作するIGPです。IPv4用のOSPFであり、ルータ間でリンク状態情報を共有して経路を学習します。

静的ルートでは管理者が1本ずつ経路を設定しますが、OSPFv2ではルータ同士が情報を交換するため、経路追加や障害時の経路再計算を自動化できます。

リンクステート型ルーティングの流れ

OSPFv2の基本的な流れは、ネイバーの発見、リンク状態情報の交換、LSDBの同期、SPF計算、ルーティングテーブルへの登録です。

最初にルータはHelloパケットを使って隣接ルータを見つけます。必要な条件が一致するとネイバー関係を作り、リンクステートアドバタイズメントを交換します。各ルータは集めた情報をLSDBとして保持し、SPFアルゴリズムで自分を起点にした最短経路を計算します。

単一エリアOSPFとエリア0

OSPFではネットワークをエリアという単位に分けて管理できます。最初に学ぶ構成は単一エリアOSPFで、参加するルータと対象インターフェースをすべて同じエリアへ所属させます。

エリア0はバックボーンエリアです。小規模な単一エリア構成では、すべてのOSPFインターフェースをエリア0に置く構成が代表的です。

ルータID

ルータIDは、OSPFルータを識別する32ビットの値です。IPv4アドレスのような表記を使いますが、OSPF内部でルータを識別するためのIDであり、通信先を表すIPアドレスそのものではありません。

ルータIDは明示的に設定しておくと、意図しない値になることを避けられます。OSPFルータ同士でルータIDが重複すると、正常に動作しません。

ネイバー関係と隣接関係

OSPFv2ルータはHelloパケットを交換してネイバーを発見します。エリア番号、サブネット、Helloタイマ、Deadタイマ、認証設定、ネットワークタイプなどの条件が一致しないと、期待どおりにネイバー関係を作れません。

ルーティング情報を詳細に交換する関係を隣接関係と呼びます。ポイントツーポイントリンクでは通常、両端のルータが隣接関係を作ります。

LSAとLSDB

LSAは、ルータやネットワークの接続状態を伝える情報です。OSPFルータはLSAを交換し、エリア内のリンク状態情報をLSDBとして保持します。

同じエリア内のOSPFルータは、通常、整合したLSDBを持つことを目指します。LSDBをもとに各ルータがSPF計算を行うため、同じネットワーク構成に対して一貫した経路選択ができます。

SPFアルゴリズムとOSPFコスト

SPFアルゴリズムは、LSDBをもとに自分から各宛先までの最短経路を計算する仕組みです。OSPFでは経路の優劣をコストで表します。

複数の経路がある場合、合計コストが小さい経路が優先されます。インターフェースの帯域や手動設定したコストが、経路選択に影響します。

DRとBDR

Ethernetのように複数のOSPFルータが同じネットワークへ接続するブロードキャストネットワークでは、すべてのルータが互いに完全な隣接関係を作ると交換量が増えます。

このため、DRとBDRを選出して情報交換を効率化します。ポイントツーポイントリンクではDRとBDRは選出されません。

基本設定の例

次は、192.168.10.0/24をエリア0へ参加させ、ルータIDを1.1.1.1に設定する例です。

router ospf 1
 router-id 1.1.1.1
 network 192.168.10.0 0.0.0.255 area 0

router ospf 1 の1はOSPFプロセスIDです。Cisco IOS上でプロセスを識別するための値で、隣接ルータと一致させる必要はありません。

passive-interfaceの考え方

端末が接続されているLAN側のインターフェースでは、OSPFのHelloパケットを送る必要がない場合があります。そのようなインターフェースはpassive-interfaceとして扱えます。

passive-interfaceにしても、そのインターフェースの接続ネットワークはOSPFで広告できます。ただし、そのインターフェース上ではOSPFネイバーを形成しません。

確認コマンド

設定後は、ネイバー関係、OSPFで学習した経路、OSPFインターフェースの状態を確認します。

show ip ospf neighbor
show ip route ospf
show ip ospf interface brief

ネイバーが期待どおり表示されない場合は、インターフェースのIPアドレス、エリア番号、タイマ、ネットワークタイプ、passive-interface設定を順に確認します。

まず覚えたいポイント

OSPFv2はIPv4向けのリンクステート型IGPです。Helloパケットでネイバーを発見し、LSAを交換してLSDBを作り、SPFアルゴリズムでコストが小さい経路を選びます。単一エリア構成ではエリア0を使い、ルータIDの重複やエリア・タイマの不一致に注意します。

関連用語