CCNA試験勉強対策

ルーティングプロトコル OSPF

OSPFの落としどころをまとめておこう

このへんは覚えれば確実に得点につながるので確実に押さえたいところ。

OSPF

・OSPF(Open Shortest Path First)はリンクステート型のルーティングプロトコル。
・OSPFのアドミニストレーティブディスタンス値は110である。
・OSPFによって学習された経路は「O(オー)」として表される。
・OSPFのホップ数に限界は無い。

OSPFのテーブル

・OSPFの動作するルータには以下の3つのテーブルがある。
①ルーティングテーブル:最適経路のデータベース。
②ネイバーテーブル:直接接続されたOSPFルータのリスト。
③トポロジーテーブル:ネイバーから収集しLSAで作成した全経路情報のデータベース。

リンクステート型アルゴリズムの特徴

・「リンクステート」情報をやり取りしてトポロジーマップ(ネットワークの接続図)を作成する。
・トポロジーマップ上で経路選択を行う。
・経路情報の変更やネットワークダウンがあった場合、即座にリンクステートをアップデートすることにより迅速なコンバージェンスを実現している。
・トポロジーマップの作成や処理の複雑さからハード的に高負荷となるため安価なルータには向かない。

エリアの概念

・OSPFではネットワークを「エリア」として捉える。「エリア」とはリンクステート情報のアップデートを規制するための範囲となる。
・トポロジーに変更が生じた場合、変更を通知するリンクステート情報はエリア内でフラッディングされる。
・フラッディングされたリンクステートがネットワーク全体に流布して帯域を圧迫するのを防ぐために、ネットワークを「エリア」に分割する。
・エリアには「バックボーンエリア」と呼ばれる特殊なエリアがあり、分割されたエリアは全て、バックボーンエリアに接続している必要がある。
・「エリア0」がバックボーンエリアとなる。
・インタフェースが複数のエリアに接続されているルータを「エリアボーダールータ(ABR)」という。
・インタフェースが一つのエリアにのみ接続されているルータを「内部ルータ」という。

トポロジーデータベース

・OSPFにより、ルータはトポロジーデータベースを作成する。
・トポロジーデータベースはエリア単位に作成され、同じエリア内のルータは同じトポロジーデータベースを持っている。

経路選択

・OSPFのベストパスは、SPF(最短経路)アルゴリズムによって求められる。
・SPFアルゴリズムは「ダイクストラアルゴリズム」ともいう。
・SPFアルゴリズムは宛先までの経路をツリー構造として考え、最も最短の経路を得る手法となる。
・SPFアルゴリズムのメトリックにはリンクコストを使用する。
・リンクコストは、各ルータのインタフェース速度を数値化したものを使う。
・リンクコストが小さいほど距離が近いと判断する。
・宛先ネットワークまでに通過するリンクコストの合計=メトリックとなる。

サブネットマスクのアドバタイズ

・OSPFはクラスレスルーティングのため、サブネットマスクのアドバタイズをサポートしている。
・不連続サブネットマスク環境ではサブネットマスクをアドバタイズしないルーティングプロトコル(RIPver1など)では正しいルーティングが出来ない。

DRとBDR

・トポロジーデータベースの不一致を防ぐため、トポロジーデータベースを管理する必要がある。
・OSPFのトポロジーデータベースを一元管理するルータをDR(Designated Router)という。
・DRはトポロジーデータベースの管理や更新、配信を行う。
・DRが機能しなくなった場合に備えて、バックアップ用のDRがあり、BDR(Backup Designated Router)という。
・DRとBDRは自動的に選出される。
・DRとBDRはP2P接続を除く一つのブロードキャストドメイン単位で選出される。

DRとBDRの選出

・DRとBDRの選出は「Hello」パケットの交換で行われる。
・Helloパケットとは、キープアライブの一種でルータが自分の存在を通知するために定期的に送信するマルチキャストのパケットとなる。
・Helloパケットのマルチキャストアドレスは「224.0.0.5」宛てに送信される。
・DROTHERがDRとBDRに送信するときは「224.0.0.6」宛てに送信される。
・OSPFルータはHelloパケットの交換により隣接しているOSPFルータを認識する。
・認識しているOSPFルータを「ネイバー」と呼ぶ。
・ネイバー間でDR/BDRの選出を行う。
・DR/BDRの選出は以下のように行われる。
①OSPFプライオリティによる選出
・OSPFプライオリティの大きいルータからDR、BDRの順に選出される。
・OSPFプライオリティの値はデフォルトで1であるが、プライオリティを変更することによりDR、BDRを目的のルータにすることができる。
②ルータIDによる選出
・OSPFプライオリティが同一の場合、ルータIDの大きいルータからDR、BDRの順に選出される。
・ルータIDには、各ルータに設定された動作可能な(ダウンしていない)インタフェースに設定されたIPアドレスの中で最も大きい値のものが用いられる。
例)上から大きい順
192.168.20.10
192.168.10.20
172.16.1.3
172.16.1.2
172.16.1.1

・DRにもBDRにも選ばれなかったルータはDROTHERという。
・OSPFプライオリティが0のルータはDRにもBDRにも選ばれない。
・DRやBDRが変更されるのは、ダウンした時のみである。DRがダウンするとBDRがDRに選出される。BDRがダウンすると、新たなBDRが選出される。
・既存のルータよりも高いプライオリティを持つルータが後からネットワークに追加されたとしても、DRやBDRは変更されない。(『DRの粘着性』と呼ぶ。)

ルータの隣接関係

・OSPFの隣接関係には「ネイバー」と「アジャセンシー」の2種類がある。
・ネイバーのルータ同士は同一ネットワーク上のOSPFルータ同士の関係を指しHelloパケットを定期的に交換する。
・アジャセンシーのルータ同士はLSAパケットを交換する。
・アジャセンシーが確立された状態を「FULL State(完全状態)」という。

ポイントツーポイントネットワーク

・ポイントツーポイントネットワークでは2台のルータだけが接続されているのでDR/BDRの選出は行われない。
・2台のルータはアジャセンシーの関係になり、224.0.0.5のマルチキャストアドレスを使用してLSAを交換する。

■ルータID

・ルータIDの指定は以下のコマンドで行う。

(config-router)#router-id IPアドレス

・ルータIDの確認は以下のコマンドで行う。

#sh ip ospf

・ルータIDはOSPFを有効にした時点で決定する。
・一度ルータIDが決定されるとインタフェースがダウンしたりrouter-idコマンドで指定しても変更できない。
・ルータIDの再選択には以下のどちらかを行う。
①ルータを再起動する。
②OSPFを無効(no router ospf)にしてから、再度有効にする。

ループバックインタフェース

・DR/BDRの選出には、物理的に安定稼動しない(ダウンの可能性のある)物理インタフェースでなく、論理的なインタフェース(ループバックインタフェース)を用いる。
・ループバックインタフェースを設定したルータでは、物理インタフェースのIPアドレスよりもループバックインタフェースのIPアドレスが優先され、ルータIDとして使用される。
・ループバックインタフェースは以下のコマンドで設定する。
(config)#interface loopback インタフェース番号
(config-if)#ip address IPアドレス

トポロジーデータベースの更新

・OSPFルータはトポロジーデータベースの更新に、リンクステート情報(LSA)を使用する。
・トポロジーに変更が生じた場合、変更を検出したOSPFルータが即座にLSAをアップデートする。

リンクコストの計算

・OSPFではリンクコストを以下の計算式で求める。

リンクコスト=100Mbps/帯域幅

※帯域幅とリンクコスト
・ギガビットイーサ(1000Mbps)⇒100/1000=0.1⇒コスト1
・ファストイーサ(100Mbps)⇒100/100=1⇒コスト1
・イーサネット(10Mbps)⇒100/10=10⇒コスト10
・ISDN(64kbps)⇒100/0.064=1562⇒コスト1562

・OSPFは等コストバランシングをサポートしているため、同一経路が同じコストの場合、最大で同時に6経路まで使用できる。

OSPFの設定

・OSPFは以下のコマンドで設定する。

(config)#router ospf プロセス番号
(config-router)#network ネットワーク マスク area 0

※プロセス番号はOSPFのプロセス自体を管理する番号であり、任意でよい。他のルータと合わせる必要もない。
※ネットワークの指定はルータに直結しているネットワークを指定する。
※マスクはワイルドカードマスクで指定する。

例)
(config)#router ospf 1
(config-router)#network 172.16.10.0 0.0.0.255 area 0

OSPFの確認

・OSPFは以下のコマンドで動作確認する。

#sh ip ospf
⇒ルータID、OSPFタイマ値、SPFアルゴリズムの実行回数を表示する。

#sh ip route ospf
⇒OSPFによって学習された経路だけを表示する。

#sh ip protocols
⇒OSPFが正しく設定されているかを確認。

#sh ip ospf interface インタフェース番号
⇒特定のインタフェースでOSPFが設定されていることを確認する。

#debug ip ospf packet
⇒受信したパケットに関する情報をリアルタイムに表示する。

#sh ip ospf database
⇒リンクステートデータベースを表示する。

CCNAの学習に役立つ定番のおすすめ参考書

シスコ技術者認定教科書 CCNA 完全合格テキスト&問題集[対応試験]200-301
シスコ技術者認定教科書 CCNA 完全合格テキスト&問題集[対応試験]200-301

徹底攻略Cisco CCNA問題集[200-301 CCNA]対応 (模擬問題、スマホ問題集付き)
徹底攻略Cisco CCNA問題集[200-301 CCNA]対応 (模擬問題、スマホ問題集付き)

CCNAの教科書と問題集はまだ買うな
CCNA(Ciscoのネットワーク技術者入門資格試験)の教科書と問題集はまだ買うな!失敗しない勉強法とIT業界の指南書【CCNA200-301対応!】: 15個の資格試験を1発で合格した男の「インフラエンジニア登竜門資格」独学勉強法と黒歴史を徹底公開! IT業界超入門書

1週間でCCNAの基礎が学べる本
1週間でCCNAの基礎が学べる本