OSPFの経路の優先順位
OSPFの経路の優先順位は以下のようになっています。
| 順位 | ルート | 内容 |
|---|---|---|
| 1 | OSPFインターナルルート(O) | 同じOSPFエリア内で学習されたルート。OSPFプロセスがエリア内の他のルータから直接学習したルートです。 |
| 2 | OSPFエリア間ルート(O IA) | OSPFのバックボーンエリア(エリア0)を通じて他のエリアから学習されたサマリールート。エリア境界ルータ(ABR)によって他のエリアから伝播される。 |
| 3 | OSPFエクスターナル1ルート(O E1) | 外部のルーティングプロトコル(例:BGP、他のOSPFプロセス)から再配布されたルートで、内部コストも考慮してメトリックが計算される。 |
| 3 | OSPF NSSAエクスターナル1ルート(O N1) | NSSA(Not-So-Stubby Area)で再配布された外部ルートで、E1と同様に内部コストも考慮してメトリックが計算される。 |
| 4 | OSPFエクスターナル2ルート(O E2) | 外部のルーティングプロトコルから再配布されたルートで、外部のメトリックのみが考慮される。 |
| 4 | OSPF NSSAエクスターナル2ルート(O N2) | NSSAエリアで再配布された外部ルートで、E2と同様に外部コストのみで評価される。 |
OSPFルートの選択の流れ
OSPFルータが複数の経路を受信した場合、上記の優先順位に基づいて最適な経路を選択します。例えば、同じ宛先に対してOSPFインターナルルートとエクスターナルルートの両方が存在する場合、OSPFインターナルルートが優先されます。
また、同じタイプのルートが複数存在する場合は、メトリック(コスト)が最も低いルートが選択されます。OSPFではコストが最も低い経路が優先され、最短パス(Shortest Path)が選ばれます。
インターナルルートとエリア間ルートの優先順位
以下のような構成図で考えます。

R1
hostname R1
int g0/2
ip address 192.168.12.1 255.255.255.0
no shut
int g0/3
ip address 192.168.13.1 255.255.255.0
no shut
router ospf 1
network 192.168.12.0 0.0.0.255 area 1
network 192.168.13.0 0.0.0.255 area 1
R2
hostname R2
int g0/1
ip address 192.168.12.2 255.255.255.0
no shut
int g0/6
ip address 192.168.26.2 255.255.255.0
no shut
router ospf 1
network 192.168.12.0 0.0.0.255 area 1
network 192.168.26.0 0.0.0.255 area 0
R3
hostname R3
int g0/1
ip address 192.168.13.3 255.255.255.0
no shut
int g0/4
ip address 192.168.34.3 255.255.255.0
no shut
router ospf 1
network 192.168.13.0 0.0.0.255 area 1
network 192.168.34.0 0.0.0.255 area 1
R4
hostname R4
int g0/3
ip address 192.168.34.4 255.255.255.0
no shut
int g0/6
ip address 192.168.46.4 255.255.255.0
no shut
router ospf 1
network 192.168.34.0 0.0.0.255 area 1
network 192.168.46.0 0.0.0.255 area 2
R6
hostname R6
int g0/2
ip address 192.168.26.6 255.255.255.0
no shut
int g0/4
ip address 192.168.46.6 255.255.255.0
no shut
router ospf 1
network 192.168.26.0 0.0.0.255 area 0
network 192.168.46.0 0.0.0.255 area 2
R1はルーティングテーブルを確認すると、192.168.34.0/24までの通信はGi0/3から通信されます。これは同じエリア内から学習されたルートを優先するためです。

LSA Type1とLSA Type3を確認するとどちらの情報も受信していますが、ルーティングテーブルに表示されるのはLSA Type1となるインターナルルートの情報となります。
show ip ospf database routerの実行結果(LSA Type1の確認)

show ip ospf database networkの実行結果(LSA Type3の確認)

エクスターナル1ルートとエクスターナル2ルートの優先順位

Router1
hostname Router1
int g0/2
ip address 192.168.12.10 255.255.255.0
no shut
int g0/3
ip address 192.168.13.10 255.255.255.0
no shut
int lo10
ip address 10.10.10.10 255.255.255.255
router eigrp 1
network 192.168.12.0 0.0.0.255
network 192.168.13.0 0.0.0.255
network 10.10.10.10 0.0.0.0
Router2
hostname Router2
int g0/1
ip address 192.168.12.2 255.255.255.0
no shut
int g0/4
ip address 192.168.24.2 255.255.255.0
no shut
router eigrp 1
network 192.168.12.0 0.0.0.255
redistribute ospf 1
default-metric 1000000 1 255 1 1500
router ospf 1
network 192.168.24.0 0.0.0.255 area 1
redistribute eigrp 1 metric-type 1
default-metric 1
Router3
hostname Router3
int g0/1
ip address 192.168.13.3 255.255.255.0
no shut
int g0/4
ip address 192.168.34.3 255.255.255.0
no shut
router eigrp 1
network 192.168.13.0 0.0.0.255
redistribute ospf 1
default-metric 1000000 1 255 1 1500
router ospf 1
network 192.168.34.0 0.0.0.255 area 1
redistribute eigrp 1 metric-type 2
default-metric 2
Router4
hostname Router4
int g0/2
ip address 192.168.24.4 255.255.255.0
no shut
int g0/3
ip address 192.168.34.4 255.255.255.0
no shut
router ospf 1
network 192.168.24.0 0.0.0.255 area 1
network 192.168.34.0 0.0.0.255 area 1
Router1のLoopback IPアドレスのルート情報をRouter2,Router3はそれぞれRouter4に再配布しています。
Router4で10.10.10.10までの経路を確認すると、エクスターナル1ルートであるRouter2経由の通信を選択しています。
