InfraAcademy

InfraAcademy Blog

CCNAのOSPF問題は、ネイバーとDR選出でつまずく。show ip ospf neighborを読みながら解く練習問題8問

著者: ryu | #CCNA #ルーティング #資格
Linuxをブラウザで試してみる

Linux・ネットワーク・AWSを、環境構築なしで実践学習できます

この記事を共有

こんにちは、インフラエンジニアのryuです。

この記事は、CCNAの勉強をしていて、OSPFの問題になると手が止まってしまう人に向けて書いています。

OSPFは、設定のコマンド自体はそれほど多くありません。それなのに問題になると、ネイバーが張れない理由を選ばせたり、DRがどのルーターになるかを答えさせたりと、仕組みを理解していないと解けない形で出てきます。

そこでこの記事では、OSPFに絞ったオリジナルの練習問題を8問用意しました。問題の前に、間違えやすいポイントを先に整理しておきます。

OSPFの設定手順そのものを確認したい人は、先にOSPFの設定方法とは?を読んでおくと、問題が解きやすくなります。CCNA全体の勉強の進め方は、CCNAの勉強方法の記事にまとめています。

CCNAでOSPFはどこまで問われる?

まずは、試験の範囲を確認しておきます。CCNA(200-301 v1.1)の出題範囲では、OSPFは「3.0 IP Connectivity」の分野に入っています。この分野は、試験全体の25%です。

その中で、OSPFの項目は「3.4 シングルエリアOSPFv2の設定と確認」です。細かい項目は次の4つになっています。

項目 内容
3.4.a ネイバーの隣接関係(neighbor adjacencies)
3.4.b ポイントツーポイント
3.4.c ブロードキャスト(DR/BDRの選出)
3.4.d ルーターID

範囲はシングルエリアに限られているので、複数エリアの設計や、エリアの種類の細かい違いまでは求められていません。そのぶん、ネイバー・DR/BDR・ルーターIDの3つは、確実に答えられるようにしておきたいところです。

なお、現行の200-301 v1.1の最終受験日は2027年2月2日で、2027年2月3日からはv2.0に切り替わります。受験日が決まったら、Ciscoの公式ページで出題範囲をもう一度確認しておきましょう。

OSPFの問題で間違えやすいポイント

問題に入る前に、間違えやすいところを4つ整理しておきます。どれも、用語を覚えているだけだと引っかかりやすいところです。

ルーターIDの決まり方

ルーターIDは、OSPFの中でルーターを見分けるための32ビットの値です。IPアドレスと同じ形で書きますが、通信に使うアドレスではありません。

ルーターIDは、次の順番で決まります。

順番 決め方
1 router-id コマンドで手動設定した値
2 ループバックインターフェースのIPアドレスのうち、いちばん大きいもの
3 有効な物理インターフェースのIPアドレスのうち、いちばん大きいもの

ここで引っかかりやすいのが2番目です。ループバックがあれば、物理インターフェースのほうが大きなアドレスでもループバックが優先されます。

また、OSPFが動いたあとで router-id を変えても、すぐには切り替わりません。新しいルーターIDを使わせるには、clear ip ospf process でOSPFのプロセスをリセットするか、ルーターを再起動します。

ネイバーになるための条件

OSPFのルーターどうしは、Helloパケットを送り合ってネイバーになります。このとき、Helloに入っている値の一部がそろっていないと、ネイバーになれません。

そろっている必要があるもの よくある間違い
エリアID 片方だけ area 1 で設定している
HelloとDeadの間隔 片方だけ ip ospf hello-interval を変えている
サブネット(マスク) /24 と /25 のように、マスクがずれている
認証の設定 片方だけ認証を有効にしている

ルーターIDが重複している場合も、正しく動きません。

もう1つ覚えておきたいのがMTUです。MTUが合っていないと、ネイバーは見えているのに、EXSTART や EXCHANGE の状態で止まってしまいます。

コストの計算

OSPFは、コストの合計がいちばん小さい経路を選びます。インターフェースのコストは、基準帯域幅をインターフェースの帯域幅で割って求めます。

コスト = 基準帯域幅 ÷ インターフェースの帯域幅(Ciscoの既定の基準帯域幅は100Mbps。計算結果が1より小さくなる場合は1になる)

既定のままだと、100MbpsのFastEthernetも1GbpsのGigabitEthernetも、コストは同じ1です。そのため、速さの違うリンクをOSPFに区別させたいときは、auto-cost reference-bandwidth で基準帯域幅を大きくします。この値はすべてのルーターでそろえておきます。

経路のコストは、宛先までに通る出口側インターフェースのコストを足したものです。ip ospf cost で、インターフェースごとにコストを直接決めることもできます。

DR/BDRの選出

イーサネットのようなブロードキャストのネットワークでは、DR(代表ルーター)とBDR(バックアップ代表ルーター)が選ばれます。ほかのルーター(DROTHER)は、DRとBDRとだけ情報をやり取りします。

選出のルールは次のとおりです。

  • インターフェースのOSPFプライオリティが大きいルーターが勝つ(既定値は1)
  • プライオリティが同じなら、ルーターIDが大きいルーターが勝つ
  • プライオリティが0のルーターは、DRにもBDRにもならない

そして、いちばん間違えやすいのが、DRの選出は横取りされないという点です。あとから、プライオリティの大きいルーターを追加しても、今のDRがダウンしない限りDRは変わりません。

ポイントツーポイントのネットワークでは、DR/BDRの選出はありません。イーサネットでも、ip ospf network point-to-point を設定すると選出が行われなくなります。

練習問題:ルーターIDとネイバー編

ここからは、この記事のために作ったオリジナルの問題です。実際の試験の問題ではありません。

まずは、ルーターIDとネイバーに関する4問です。

問題1:ルーターIDはどれになる?

R1には、次のインターフェースがあります。どれも up/up で、router-id コマンドは設定していません。R1のルーターIDはどれになるでしょうか。

GigabitEthernet0/0  192.168.10.1
GigabitEthernet0/1  172.16.20.1
Loopback0           10.0.0.1
  • A. 192.168.10.1
  • B. 172.16.20.1
  • C. 10.0.0.1
  • D. 0.0.0.0

正解:C

router-id が設定されていないときは、ループバックインターフェースのアドレスが物理インターフェースより優先されます。物理インターフェースの 192.168.10.1 のほうが数字は大きいですが、ループバックがあるので 10.0.0.1 が選ばれます。ループバックが無ければ、Aの 192.168.10.1 になります。

問題2:ネイバーにならない原因

R1とR2を同じサブネットでつなぎ、どちらもエリア0でOSPFを設定しました。ところが、show ip ospf neighbor に相手が表示されません。調べたところ、次の設定が見つかりました。

R1(config)# interface gigabitEthernet 0/0
R1(config-if)# ip ospf hello-interval 5

R2のインターフェースは既定の設定のままです。ネイバーにするための対処として、もっとも適切なものはどれでしょうか。

  • A. R2のOSPFプライオリティを0にする
  • B. R1とR2のHelloとDeadの間隔をそろえる
  • C. R1に passive-interface gigabitEthernet 0/0 を設定する
  • D. R2のルーターIDをR1と同じにする

正解:B

HelloとDeadの間隔は、ネイバーになるためにそろっている必要がある値です。R1だけHelloを5秒にしているので、R2の既定値と合わずネイバーになれません。Cの passive-interface を設定すると、そのインターフェースからHelloを送らなくなるので、逆にネイバーになれなくなります。DのようにルーターIDを重複させるのも誤りです。

問題3:EXSTARTのまま進まない

show ip ospf neighbor を実行したところ、相手のルーターの状態がずっと EXSTART のまま変わりません。原因として、もっとも考えられるものはどれでしょうか。

  • A. エリアIDが合っていない
  • B. 両端のインターフェースのMTUが合っていない
  • C. 片方のプライオリティが0になっている
  • D. 基準帯域幅が合っていない

正解:B

EXSTART は、データベースの情報をやり取りし始める段階です。MTUが合っていないと、この段階や次の EXCHANGE で止まることがあります。Aのエリアの不一致では、そもそもHelloの段階でネイバーになれないので、一覧に相手が出てきません。Dの基準帯域幅のずれは経路の選び方に影響しますが、ネイバーの状態は止めません。

問題4:2WAY/DROTHERは異常?

1台のスイッチに、R1〜R4の4台のルーターをつないでOSPFを動かしています。R3で show ip ospf neighbor を実行すると、R4との関係が 2WAY/DROTHER と表示されました。R1はDR、R2はBDRで、R3とR4はどちらもDROTHERです。この状態について、正しい説明はどれでしょうか。

  • A. R3とR4の設定に問題があり、修正が必要である
  • B. DROTHERどうしは2WAYで止まるのが正常で、問題はない
  • C. R4がダウンしかけている
  • D. R3とR4のMTUが合っていない

正解:B

ブロードキャストのネットワークでは、DROTHERはDRとBDRとだけ FULL の関係になります。DROTHERどうしは、お互いを認識した 2WAY の状態で止まるのが正常です。全部のネイバーが FULL になっていないからといって、異常とは限りません。

練習問題:コストとDR/BDR編

次は、コストの計算とDR/BDRの選出の4問です。前半より、計算や結果を考える問題が多くなります。

問題5:基準帯域幅を変えたときのコスト

R1で auto-cost reference-bandwidth 1000 を設定しました。基準帯域幅が1000Mbpsになります。このとき、100MbpsのFastEthernetインターフェースのコストはいくつになるでしょうか。インターフェースに ip ospf cost は設定していません。

  • A. 1
  • B. 10
  • C. 100
  • D. 1000

正解:B

コストは基準帯域幅をインターフェースの帯域幅で割って求めるので、1000 ÷ 100 = 10 です。既定の100Mbpsのままなら、100 ÷ 100 = 1 になります。同じ設定で、1GbpsのGigabitEthernetは 1000 ÷ 1000 = 1 です。

問題6:DRとBDRはどれになる?

1台のスイッチに、R1〜R3の3台をつなぎ、同時に起動しました。各ルーターのインターフェースの設定は次のとおりです。DRとBDRはどれになるでしょうか。

ルーター ルーターID プライオリティ
R1 1.1.1.1 1
R2 2.2.2.2 1
R3 3.3.3.3 0
  • A. DRはR3、BDRはR2
  • B. DRはR2、BDRはR1
  • C. DRはR1、BDRはR2
  • D. DRもBDRも選ばれない

正解:B

R3はルーターIDがいちばん大きいですが、プライオリティが0なので選出に参加しません。残りのR1とR2はプライオリティが同じ1なので、ルーターIDが大きいR2がDR、R1がBDRになります。プライオリティを先に比べて、同じときだけルーターIDを比べる、という順番を押さえておきましょう。

問題7:あとからプライオリティの大きいルーターを追加した

問題6の状態で、DRはR2、BDRはR1になっています。そこへ、プライオリティを100にしたR4を同じスイッチにつなぎました。R1とR2は動き続けています。R4がつながった直後の役割として、正しいものはどれでしょうか。

  • A. R4がすぐにDRになり、R2はBDRになる
  • B. R4がすぐにDRになり、R2はDROTHERになる
  • C. DRはR2、BDRはR1のままで、R4はDROTHERになる
  • D. DRとBDRの選出がやり直され、すべてのネイバーが切れる

正解:C

DRの選出は横取りされないので、R4のプライオリティが大きくても、すでに選ばれているDRとBDRはそのままです。たとえばDRのR2がダウンすると、BDRのR1がDRに上がり、空いたBDRにはプライオリティの大きいR4が選ばれます。このように、役割が空いたときに初めて選ばれる仕組みです。

問題8:show ip route の数字を読む

R1で show ip route を実行したところ、次の行がありました。

O     10.1.1.0/24 [110/3] via 192.168.12.2, 00:05:12, GigabitEthernet0/0

この行の説明として、正しいものはどれでしょうか。

  • A. 110はコスト、3はアドミニストレーティブディスタンスである
  • B. 110はアドミニストレーティブディスタンス、3はOSPFのコストの合計である
  • C. 110はホップ数、3はネイバーの数である
  • D. 110はルーターID、3はエリア番号である

正解:B

角かっこの中は、[アドミニストレーティブディスタンス/メトリック] の順に並んでいます。OSPFのアドミニストレーティブディスタンスは110で、メトリックはコストの合計です。先頭の O は、OSPFで学習した経路という意味です。show ip route の読み方は、show ip routeコマンドの使い方で詳しく説明しています。

間違えた問題の見直し方

8問のうち、何問できたでしょうか。点数よりも、どの問題で迷ったかを見てほしいです。

間違えた問題は、次の表で読み直す記事を選んでみてください。

間違えた問題 苦手なところ 読み直す記事
問題1・2 ルーターID、ネイバーの条件 OSPFの設定方法とは?
問題3・4 ネイバーの状態の読み方 OSPFの設定方法とは?
問題5・8 コスト、経路の選び方 ルーティングとは? と スタティックルートの設定
問題6・7 DR/BDRの選出 この記事の「DR/BDRの選出」

読み直したら、もう一度その問題を解き、なぜほかの選択肢が違うのかを1行で言えるか確かめてみてください。

show コマンドとセットで覚える

OSPFの問題でも、show コマンドの出力を読ませる問題がよく出てきます。どのコマンドで何が分かるかを、表にしておきます。

コマンド 分かること
show ip ospf neighbor ネイバーのルーターID、状態(FULL や 2WAY)、DR/BDRの役割
show ip ospf interface インターフェースのエリア、コスト、ネットワークタイプ、HelloとDeadの間隔、DRとBDR
show ip protocols ルーターID、network コマンドの範囲、パッシブインターフェース
show ip route ospf OSPFで学習した経路だけを表示する

ネイバーにならないときは、show ip ospf interface で両端のエリアとHelloの間隔を並べて見るのが近道です。問題を解くときも、どのコマンドを打てば答えを確かめられるかまで考えると、知識が設定とつながっていきます。

スタティックルートとの違いも確認する

OSPFで学習した経路とスタティックルートが同じ宛先にあるときは、アドミニストレーティブディスタンスの小さいほうが使われます。スタティックルートは1、OSPFは110なので、既定ではスタティックルートが優先です。

このあたりは、ほかのルーティングの問題とも一緒に出てきます。腕試しをしたい人は、CCNAの練習問題10問の記事や、CCNAのサブネットの練習問題もあわせて解いてみてください。

InfraAcademyで続ける

問題で確認したことは、実際にルーターを設定してみると、ずっと覚えやすくなります。

InfraAcademyのネットワーク講座では、講座の中のシミュレーターで、ルーターやスイッチの設定と ping での確認を練習できます。講座の順番は、ネットワークのロードマップにまとめています。

自分で構成を組んでみたい人は、CCNAのハンズオン課題の記事で、VLANからACLまでを順番に設定してみてください。OSPFの前に、ルーティングの基本をもう一度手で確かめておくと、この記事の問題も解きやすくなります。

問題演習を続けたい人は、トップページのInfraAcademy の資格模擬問題から「CCNA模擬試験200問」を解けます。IP Connectivityの分野で間違えた問題があれば、この記事の表に戻って、どこを読み直すかを決めてみてください。

試験が近い人は、CCNA試験1週間前の復習表で、残りの日数でどこを見直すかを決めておくと安心です。

まとめ

CCNAのOSPFの問題で、間違えやすいところを振り返ります。

  • ルーターIDは、手動設定 → ループバック → 物理インターフェースの順で決まる
  • エリアID、HelloとDeadの間隔、サブネットがそろっていないとネイバーにならない
  • MTUが合っていないと、EXSTART や EXCHANGE で止まる
  • コストは基準帯域幅 ÷ 帯域幅で、既定では100Mbps以上のリンクはすべて1になる
  • DRはプライオリティ → ルーターIDの順で決まり、0のルーターは選ばれない。あとから追加したルーターに横取りされない
  • DROTHERどうしは 2WAY が正常。[110/3] は、ADが110、コストの合計が3

OSPFは、CCNAのルーティングの中心になる分野です。

ネイバーの状態とDR/BDRの決まり方を show コマンドと一緒に押さえておけば、問題の出され方が変わっても落ち着いて解けます。1問ずつ理由を確かめながら、合格まで進んでいきましょう。応援しています。

参考

Next Action

記事で読んだ内容を、講座で実装してみましょう

InfraAcademyでは、ブラウザ上でLinuxやネットワークの実践環境を使いながら学習できます。無料で始められる講座から、学習の流れを試せます。

この記事を書いた人

ryu

株式会社InfraAcademy 代表 / エンジニア

大手メーカーでインフラエンジニアとして勤務した後、ベンチャー企業・スタートアップでフルスタックエンジニアを経験。その後、起業し学習サービス「InfraAcademy」を運営しています。
保有資格:ネットワークスペシャリストなど 運営会社:株式会社InfraAcademy

Related

関連記事

ブログ一覧へ

Roadmap

まずはこの4講座から

ログインすれば無料で始められる講座です。気になったテーマから手を動かして学べます。

講座一覧を見る