OSPFの設定を入れたのに、ネイバーが張れない。ネットワークの現場でもCCNPの試験でもよくある場面です。原因はいくつかのパターンに決まっているので、順番に確認すれば必ず見つかります。この記事では、原因の一覧と、ネイバーの状態から原因を絞り込む方法を紹介します。
先に結論から
- ネイバーになるには、エリアID、Hello/Deadタイマー、サブネット、認証、スタブの設定などが一致している必要があります。
- 状態がEXSTARTやEXCHANGEで止まる場合は、MTUの不一致を疑います。
- DR以外のルーター同士(DROTHER)が2-WAYで止まるのは正常です。
- まずは
show ip ospf neighborとshow ip ospf interfaceで確認します。
ネイバーが張れない主な原因

| 原因 | よくある状態 | 確認するコマンド |
|---|---|---|
| エリアIDが違う | ネイバーが表示されない | show ip ospf interface |
| Hello/Deadタイマーが違う | ネイバーが表示されない | show ip ospf interface |
| サブネット(マスク)が違う | ネイバーが表示されない | show ip interface brief、show running-config |
| 認証の設定が違う | ネイバーが表示されない | show ip ospf interface、debug ip ospf adj |
| スタブの設定が片方だけ | ネイバーが表示されない | show ip ospf |
| MTUが違う | EXSTART/EXCHANGEで止まる | show ip ospf neighbor、show interface |
| ルーターIDが重複している | ネイバーが不安定、ログに警告 | show ip ospf |
| パッシブインターフェースになっている | Helloを送らない | show ip ospf interface |
| ACLでOSPFのパケットを止めている | ネイバーが表示されない | show access-lists |
ネイバーの状態から原因を絞り込む
OSPFのネイバーは、Down → Init → 2-Way → ExStart → Exchange → Loading → Full の順に進みます。どこで止まっているかで、疑う原因が変わります。

- 何も表示されない:Helloが届いていないか、Helloの中身(エリアID、タイマー、サブネット、認証、スタブの設定)が合っていません。
- INITで止まる:相手のHelloは届いているが、自分のHelloが相手に届いていない、または相手に認識されていません。片方向だけACLで止めているケースなどです。
- 2-WAYで止まる:DRでもBDRでもないルーター同士なら正常な状態です。
- EXSTART/EXCHANGEで止まる:MTUの不一致が代表的な原因です。
確認に使うコマンド
show ip ospf neighbor
show ip ospf interface GigabitEthernet0/0
show ip ospf
debug ip ospf adj
show ip ospf interfaceでは、エリアID、ネットワークタイプ、Hello/Deadタイマー、DR/BDRなどをまとめて確認できます。両側のルーターで出力を並べて比べると、違いがすぐに見つかります。
試験で問われやすいポイント
- ネットワークタイプの違い(ブロードキャストとポイントツーポイントなど)では、Helloの間隔が変わるため、タイマーの不一致として現れることがあります。
- MTUの不一致は
ip ospf mtu-ignoreで回避できますが、根本的にはMTUをそろえるのが正解です。 - ルーターIDは、手動で設定しない場合、ループバックの最大のIPアドレス、なければ有効なインターフェースの最大のIPアドレスから選ばれます。
OSPFの仕組みはOSPFのLSAタイプでも解説しています。
よくある質問
OSPFのネイバーが2-WAYのままですが、問題ですか?
DRでもBDRでもないルーター同士であれば正常です。DR・BDRとの間ではFULLになります。
EXSTARTで止まる原因は何ですか?
代表的な原因はMTUの不一致です。両側のインターフェースのMTUを確認してください。
Hello/Deadタイマーの初期値はいくつですか?
ブロードキャストやポイントツーポイントのネットワークでは、Helloが10秒、Deadが40秒です。
