OSPF ネイバー(2WAY)確立の条件・不具合時の解決方法!

本記事ではOSPFネイバーが確立出来ない時に確認するポイント・解決方法を解説いたします。

OSPFのネイバー確立時の仕様・条件について

まず最初に「OSPFのネイバー確立時に関する動作仕様」について紹介します。
(OSPFのネイバー確立時に関する動作仕様をご存じの方は、本章はSKIPして下さい!)


OSPFでは各OSPFルータ同士でHelloパケットを送受信し「ネイバー関係」を確立します。
※その時対向機器から受領したHelloパケットのパラメータ内容に基づいて、ネイバー関係を確立するか判断いたします。

では、実際のHelloパケットではどのようなパラメータがやりとりされているのか、
以下にて「Helloパケットの主なパラメータ」を紹介いたします。

▼Helloパケットにてやりとりさせる主な内容▼

  • ルータID
  • ネットワークマスク
  • エリア番号
  • Helloインターバル・Deadインターバル
  • DRのIPアドレス
  • BDRのIPアドレス
  • OSPFネイバーのルータIDリスト
  • スタブエリアフラグ
  • 認証情報

上記の通り、Helloパケットでは様々なパラメータを交換しているのが分かると思います。

しかし、全てのパラメータが対向機器と一致している必要はございません。

その中で「ネイバー確立の判断条件」になるパラメータは以下の5つです。
以下5つの設定値(全て)がOSPFルータ同士で一致している必要がございますので、ネイバー確立が出来ない際は確認してみて下さい。

▼ネイバー確立条件▼

  1. エリア番号
  2. サブネットマスク
  3. Helloインターバル・Deadインターバル
  4. スタブエリアフラグ
  5. 認証情報



では上記のネイバー確立条件①〜⑤の詳細について1つずつ解説します。

【ネイバー 確立の条件①】エリア番号

対向のOSPFルータ同士でOSPFのエリア番号を一致させる必要がございます。

エリア番号が一致しているか確認されたい方は、以下「確認方法」以下をご確認下さい。

▼show run 以外の確認方法はこちら!▼

コマンド「show ip ospf interface brief」にて以下の点を確認して下さい。

上記の例ではインターフェース Et0/0のエリア番号が「0」である事が分かると思います。

注意点
バーチャルリンクを設定している際は「エリア0」扱いになりますので、注意して下さい。

【ネイバー 確立の条件②】サブネットマスク

対向のOSPFルータ同士でインターフェースのサブネットマスクを一致させる必要がございます。

サブネットマスクが一致しているか確認されたい方は、以下「確認方法」以下をご確認下さい。

▼show run 以外の確認方法はこちら!▼

コマンド「show ip ospf interface brief」にて以下の点を確認して下さい。

上記の例ではインターフェース Et0/0のサブネットマスクが「/24」である事が分かると思います。

【ネイバー 確立の条件③】Helloインターバル・Deadインターバル

対向のOSPFルータ同士でHelloインターバル・Deadインターバルを一致させる必要がございます。

OSPFではネットワークタイプ」という概念があり、「ネットワークタイプ」によりHelloインターバル・Deadインターバルのデフォルト値が異なりますので、注意が必要です。

ネットワークタイプHelloインターバル(秒)Deadインターバル(秒)DR/BDR有無
Broadcast1040
NBMA(Non-Broadcast MultiAccess)30120
Point to Point1040
Point to Multipoint30120
Point to Multipoint Non-Broadcast30120

また、ネットワークタイプのデフォルト設定はOSPFが有効化されているインターフェース種別により異なります。
詳細は以下の図をご覧下さい。

OSPFインターフェースネットワークタイプ
EthernetインターフェースBroadcast
PPP / TunnelインターフェースPoint to Point

上記をご理解頂いた上で、OSPFのネットワークタイプ・Helloインターバル・Deadインターバルの確認方法を紹介いたします。

▼show run 以外の確認方法はこちら!▼

コマンド「show ip ospf interface [インターフェース番号] | include Timer|Network Type」にて以下の点を確認して下さい。

上記の例ではインターフェース Et0/0のHelloインターバルは「10秒」、エDeadインターバルは「40秒」である事が分かると思います。


上記の通り、Helloインターバル・Deadインターバルの値の不一致には気づきにくい為、showコマンドで設定値を確認しましょう!

【ネイバー 確立の条件④】スタブエリアフラグ

対向のOSPFルータ同士でスタブエリアフラグのオプションフィールドを一致させる必要がございます。

注意点
OSPFの特殊エリア(スタブやNSSA)を導入している際は気をつけて下さい。

【ネイバー 確立の条件⑤】認証情報

対向のOSPFルータ同士で認証情報(認証タイプとパスワード)を一致させる必要がございます。

OSPFルータ同士が正常に認証出来ているかの確認方法は以下の通りです。

▼show run 以外の確認方法はこちら!▼

コマンド「debug ip ospf adj」にてエラーログが出力されていないか確認して下さい。
(実環境でのdebugコマンドの利用は注意して下さい。)

まとめ

最後までお読み頂きましてありがとうございます。

OSPFネイバーが確立出来ない時の確認ポイントはぜひ覚えておきましょう!

興味のある方は合わせて読んでみてください!