0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OSPFってなに?(CCNA第4回) 座学編

Last updated at Posted at 2024-09-04

OSPFってなに?(CCNA第4回) 座学編

ルーティング

まず、このようなネットワークがあったとする。
スクリーンショット 2024-09-03 0.04.42.png

今までは...

ルーター1つ1つに次の転送先のルーターのIPを入力していた。
スクリーンショット 2024-09-03 0.04.42のコピー.png
もし上記の画像のようにルーティングが行われていた場合、PCから4ルーターを経由して目的のサーバーにアクセスすることになる。
スクリーンショット 2024-09-03 0.04.42のコピー2.png

また、ルート内で障害が起きた場合、PCから7ルーターを経由して目的のサーバーにアクセスすることになる。
スクリーンショット 2024-09-03 0.04.42のコピー6.png

OSPFだと...

OSPFの場合、あらかじめルーティングを行う必要がなく、ルーターのコスト計算によって自動で最短ルートが選択される。
スクリーンショット 2024-09-02 184028のコピー2.png
また、ルート内で障害が起きた場合でも自動でコスト計算によって自動で最短ルートが選択される。
スクリーンショット 2024-09-02 184028のコピー.png

では、どうやって最短ルートを導いているのか?

OSPFの基本動作

OSPFでは以下のやり取りをルーター間で行った後、コンバージェンス(有効化)になる。

  1. Hello パケットを交換しネイバーを検出
  2. ネイバーテーブルにネイバーを登録
  3. 相互で認識し、LSDBの交換の準備
  4. ルーター間でDBDパケットを交換
  5. 詳細なLSA情報を交換する

ネイバーとは?
ネイバーとは隣りとして認識したルーターのことを指す。
スクリーンショット 2024-09-03 1.32.05.png

LSAとは?
Link State Advertisement
IPアドレスなどのインターフェイス情報( Link State )を交換する。その情報のこと。

LSDBとは?
Link State Database
各ルーターから収集したLSAを格納するためのデータベース。各ルーター間で共有される。

Helloパケットとは?

Helloパケットは、隣接したルータの発見と生存確認のために送られる。
隣接したルータに対して自分の存在を知らせる。また定期的に送信され、それが途絶えると受信側のルーターで停止したと判断される。

マルチキャストアドレスは「224.0.0.5」が使われる。

また、Helloパケット送信時に、ネイバーの情報も一緒に送られる。

EIGRPやHSRPでも使われる。

テーブルで見てみる

状態(ステート)遷移

状態 詳細
Down Helloパケットを受け取る前の初期状態
Init Helloパケットを受け取ったが、相手はまだ認識していない状態
2-Way お互いに認識している状態
Exstart DBDパケットを交換するためマスタースレーブを選択している状態
Exchange DBDパケットを交換している状態
Load LSRパケットを送信し最新のLSAをLSUパケットとして取得している状態
Full 完全な隣接関係を築いた状態

パケット

パケット 詳細
Helloパケット ネイバー発見と生存確認
DBDパケット LSDBの要約情報の送信
LSRパケット LSDBの詳細情報問い合わせ
LSUパケット LSDBの更新。LSAの集合体がLSU
LSAckパケット LSUパケットの確認応答

パケット

パケット 詳細
Helloパケット ネイバー発見と生存確認
DBDパケット LSDBの要約情報の送信
LSRパケット LSDBの詳細情報問い合わせ
LSUパケット LSDBの更新。LSAの集合体がLSU
LSAckパケット LSUパケットの確認応答

テーブル

テーブル 詳細
ネイバーテーブル 認識しているネイバーを登録する
トポロジテーブル(LSDB) 収集したLSAを登録する。同じエリア内の全ルーターで同一の情報になる
ルーティングテーブル 最適なルート情報を登録

具体的な流れ

image.png
このネットワーク上に、1.1.1.1が新しく追加されたとする。

ステップ1

OSPFを動作させたルーターは、まずHelloパケットを全OSPFルーター宛(マルチキャストアドレス 224.0.0.5)に送信される。
image.png
Helloパケットが返ってきたルーターをネイバーとして検出する。

ステップ2

ネイバーとしてネイバーテーブルにお互いが登録する
スライド3.PNG
スライド5.PNG

ステップ3

お互いにシーケンス番号を交換し、master/slaveを決める
スライド7.PNG
スライド9.PNG

ステップ4

LSDBの要約情報を交換する
スライド11.PNG
スライド14.PNG

ステップ5

もし、知らない情報があれば詳細情報をもらう
スライド15.PNG

ステップ6

LSAckパケットで完了したことを知らせる
スライド20.PNG

2~6をネイバー分繰り返す

Gifで理解する

OSPF.gif

互換性

RFCで標準仕様が規定。いろんなメーカー間で使用できる

参考文献

  • 林口 裕志; 浦川 晃. シスコ技術者認定教科書 CCNA 完全合格テキスト&問題集[対応試験]200 -301 (p.325). 株式会社 翔泳社. Kindle 版.
  • https://note.com/sato_manabi/n/nb179b5e60762
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?