はじめに
このドキュメントでは、Open Shortest Path First(OSPF)のリンク ステート ルーティング プロトコルをマルチエリア隣接関係用に設定する方法について説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
- OSPF
- マルチエリア隣接関係(Multi-Area Adjacency)
このドキュメントで説明する設定を試みる前に、次の要件を満たしておくことも推奨されます。
- OSPF リンク ステート ルーティング プロトコルがネットワークで事前設定されている必要があります。
- 2 つの OSPF スピーカーだけがインターフェイスを使用します。これらのスピーカーの間で OSPF のマルチエリア機能が動作します。マルチエリア OSPF は、ポイントツーポイント ネットワーク タイプでのみ機能します。
使用するコンポーネント
このドキュメントの情報は、マルチエリア OSPF に基づくものです。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
背景説明
OSPF リンク ステート ルーティング プロトコルでは、「Area(エリア)」という概念を使用します。エリアとは、OSPF ドメイン内のサブドメインのことです。エリア内のルータでは、そのエリアの完全なトポロジ情報を維持管理します。インターフェイスが属すことができる OSPF エリアは、デフォルトでは 1 つだけです。これにより、ネットワーク内で最適でないルーティングが発生するおそれがあるだけでなく、ネットワークが正しく設計されていない場合に、他の問題が発生するおそれもあります。
マルチエリア隣接関係がインターフェイスに設定されると、OSPF スピーカーではそのリンク上に複数の隣接関係(ADJ)を形成します。マルチエリア インターフェイスは、論理的なポイントツーポイント インターフェイスで、そのインターフェイス上に ADJ が形成されます。このドキュメントでは、マルチエリアOSPF ADJを使用して問題を回避し、ネットワーク要件を満たすことができるシナリオについて説明します。
設定
ネットワーク図
このネットワーク図では、ネットワーク/OSPF ドメインが使用されています。システムでは、ルータ 5(R5)から R1(10.1.1.1)へのトラフィックが常に R3 を通過する必要があります。R3がネットワーク内のファイアウォールで、すべてのトラフィックがこのファイアウォールを通じてルーティング可能であると仮定します。または、R3とR4の間のリンクに、R2とR4の間のリンクよりも多くの帯域幅があると仮定します。いずれのケースでも、システムではトラフィックが R5 から R1(10.1.1.1/32 プレフィックス)にフローする際に、そのトラフィックが R3 を通過する必要があります。
ルータの初期設定
このセクションでは、R1 から R5 までの初期設定を示します。
設定R1
interface Ethernet0/0
ip address 192.168.12.1 255.255.255.0
!
interface Loopback0
ip address 10.1.1.1 255.255.255.255
!
ip route 0.0.0.0 0.0.0.0 192.168.12.2
設定R2
interface Ethernet0/0
ip address 192.168.12.2 255.255.255.0
!
interface Ethernet0/1
ip address 192.168.23.2 255.255.255.0
ip ospf network point-to-point
ip ospf 1 area 0
!
interface Ethernet0/2
ip address 192.168.24.2 255.255.255.0
ip ospf network point-to-point
ip ospf 1 area 99
!
interface Loopback0
ip address 10.2.2.2 255.255.255.255
!
ip route 10.1.1.1 255.255.255.255 192.168.12.1
!
router ospf 1
router-id 0.0.0.2
redistribute static metric-type 1 subnets
設定R3
interface Ethernet0/0
ip address 192.168.34.3 255.255.255.0
ip ospf network point-to-point
ip ospf 1 area 99
!
interface Ethernet0/1
ip address 192.168.23.3 255.255.255.0
ip ospf network point-to-point
ip ospf 1 area 0
!
interface Loopback0
ip address 10.3.3.3 255.255.255.255
!
router ospf 1
router-id 0.0.0.3
設定R4
interface Ethernet0/0
ip address 192.168.34.4 255.255.255.0
ip ospf network point-to-point
ip ospf 1 area 99
!
interface Ethernet0/1
ip address 192.168.45.4 255.255.255.0
ip ospf network point-to-point
ip ospf 1 area 99
!
interface Ethernet0/2
ip address 192.168.24.4 255.255.255.0
ip ospf network point-to-point
ip ospf 1 area 99
!
interface Loopback0
ip address 10.4.4.4 255.255.255.255
!
router ospf 1
router-id 0.0.0.4
設定R5
interface Ethernet0/1
ip address 192.168.45.5 255.255.255.0
ip ospf network point-to-point
ip ospf 1 area 99
!
interface Loopback0
ip address 10.5.5.5 255.255.255.255
!
router ospf 1
router-id 0.0.0.5
デフォルト動作
このセクションでは、前述の設定を機能させた状態でルータのデフォルトの動作について説明します。
R5 から 10.1.1.1 へのトレースを次に示します。トラフィックが、R3 ではなく、R2 を通過していることに注意してください。
R5#traceroute 10.1.1.1
Type escape sequence to abort.
Tracing the route to 10.1.1.1
VRF info: (vrf in name/id, vrf out name/id)
1 192.168.45.4 6 msec 6 msec 6 msec <<< R4
2 192.168.24.2 6 msec 6 msec 8 msec <<< R2
3 192.168.12.1 8 msec * 3 msec <<< R1
このネットワークでは、ルータR4が決定を行う必要があり、システム要件に従って、トラフィックをR2に直接ルーティングするのではなく、R3にルーティングできます。
R4 上のルーティング テーブルの例を次に示します。
R4#show ip route 10.1.1.1
Routing entry for 10.1.1.1/32
Known via "ospf 1", distance 110, metric 30, type extern 1
Last update from 192.168.24.2 on Ethernet0/2, 00:14:33 ago
Routing Descriptor Blocks:
* 192.168.24.2, from 0.0.0.2, 00:14:33 ago, via Ethernet0/2 <<< Towards R2
Route metric is 30, traffic share count is 1
プレフィクスの 10.1.1.1/32 へのこのルートに、メトリックの 30 が関連付けられています。これは、自律システム境界ルータ(ASBR)(R2)によって使用されるデフォルトのメトリックの 20、および R4 上のインターフェイス Eth0/2 のコストの 10 に起因しています。
R3 を経由する R4 から 10.1.1.1/32 プレフィクスへのパスの方が長くなっています。ここで、R4のインターフェイスEthernet 0/2(R2へのパス)のコストが変更され、動作が変更されるかどうかが確認されます。
interface Ethernet0/2
ip address 192.168.24.4 255.255.255.0
ip ospf network point-to-point
ip ospf 1 area 99
ip ospf cost 100
end
R5 でのトレース、および R4 での show ip route コマンドの出力を次に示します。
R5#traceroute 10.1.1.1
Type escape sequence to abort.
Tracing the route to 10.1.1.1
VRF info: (vrf in name/id, vrf out name/id)
1 192.168.45.4 4 msec 9 msec 8 msec <<< R4
2 192.168.24.2 8 msec 9 msec 10 msec <<< R2
3 192.168.12.1 10 msec * 5 msec <<< R1
R4#show ip route 10.1.1.1
Routing entry for 10.1.1.1/32
Known via "ospf 1", distance 110, metric 120, type extern 1
Last update from 192.168.24.2 on Ethernet0/2, 00:01:50 ago
Routing Descriptor Blocks:
* 192.168.24.2, from 0.0.0.2, 00:01:50 ago, via Ethernet0/2
Route metric is 120, traffic share count is 1
トレースに示されているように、R5 からのトラフィックは同じパスをたどり、トラフィックは R3 を経由してフローしていません。また、R4 上の show ip route 10.1.1.1 コマンドの出力に示されているように、R4(インターフェイス Ethernet 0/2)で追加されたコスト 100 の影響で、プレフィクスへのルートのコストが(前の 30 に対して)120 になっています。ただし、パスは引き続き変わらず、トラフィックが R3 を経由してフローするという要件はまだ満たされていません。
この動作の原因を特定するために、R4のshow ip ospf border-routersコマンドの出力を次に示します(R4のインターフェイスEthernet 0/2のコストは依然として100に設定されています)。
R4#show ip ospf border-routers
OSPF Router with ID (0.0.0.4) (Process ID 1)
Base Topology (MTID 0)
Internal Router Routing Table
Codes: i - Intra-area route, I - Inter-area route
i 0.0.0.2 [100] via 192.168.24.2, Ethernet0/2, ABR/ASBR, Area 99, SPF 3
i 0.0.0.3 [10] via 192.168.34.3, Ethernet0/0, ABR, Area 99, SPF 3
R4 上で、2 台の Area Border Router(ABR; エリア境界ルータ)(R2 である 0.0.0.2 と R3 である 0.0.0.3)があること、および R2 が ASBR であることを確認できます。この出力には、ASBR の Intra-Area (i) の情報も表示されています。
ここで、トラフィックがR3を経由して流れるかどうかを判別し、show ip ospf border-routersコマンドの出力がどのように表示されるかを確認するために、R4でインターフェイスEthernet 0/2をシャットダウンします。
interface Ethernet0/2
ip address 192.168.24.4 255.255.255.0
ip ospf network point-to-point
ip ospf 1 area 99
ip ospf cost 100
shutdown
end
R5 でのトレース、および R4 での show ip route コマンドの出力を次に示します。
R5#traceroute 10.1.1.1
Type escape sequence to abort.
Tracing the route to 10.1.1.1
VRF info: (vrf in name/id, vrf out name/id)
1 192.168.45.4 7 msec 7 msec 8 msec <<< R4
2 192.168.34.3 9 msec 8 msec 8 msec <<< R3
3 192.168.23.2 9 msec 9 msec 7 msec <<< R2
4 192.168.12.1 8 msec * 4 msec <<< R1
R4#show ip route 10.1.1.1
Routing entry for 10.1.1.1/32
Known via "ospf 1", distance 110, metric 40, type extern 1 <<< Metric 40
Last update from 192.168.34.3 on Ethernet0/0, 00:01:46 ago <<< Traffic to R2
Routing Descriptor Blocks:
* 192.168.34.3, from 0.0.0.2, 00:01:46 ago, via Ethernet0/0
Route metric is 40, traffic share count is 1
各コマンド出力に示されているように、R4 でインターフェイス Ethernet 0/2 がシャットダウンされると、トラフィックが R3 を通過するようになっています。また、R2 経由の 10.1.1.1/32 へのコストが 120 だったのに対して、R3 へのルートに関連付けられているコストがわずか 40 になっています。OSPF プロトコルでは、10.1.1.1/32 に到達するためのコストが R3 経由の方がより低いにもかかわらず、R3 ではなく、R2 経由でトラフィックをルーティングすることを依然として優先しています。
R4 での show ip ospf border-routers の出力を再度次に示します。
R4#show ip ospf border-routers
OSPF Router with ID (0.0.0.4) (Process ID 1)
Base Topology (MTID 0)
Internal Router Routing Table
Codes: i - Intra-area route, I - Inter-area route
I 0.0.0.2 [20] via 192.168.34.3, Ethernet0/0, ASBR, Area 99, SPF 4
i 0.0.0.3 [10] via 192.168.34.3, Ethernet0/0, ABR, Area 99, SPF 4
ASBRに到達するために必要な情報は、エリア間情報です。ただし、ASBR への到達方法を明示する Intra-Area 情報は、2 つのパスに関連付けられている OSPF コストに関係なく、Inter-Area 情報よりも優先されます。
このため、R3 を経由するパスは、R3 を経由するコストの方がより低いにもかかわらず優先されませんでした。
ここで、次のように R4 上のインターフェイス Ethernet 0/2 を再度アップ状態にします。
interface Ethernet0/2
no shutdown
end
R5 でのトレースは、次のようにルーティング操作が前に確認されたものに戻っていることを示しています(トラフィックは R3 経由でフローしていません)。
R5#traceroute 10.1.1.1
Type escape sequence to abort.
Tracing the route to 10.1.1.1
VRF info: (vrf in name/id, vrf out name/id)
1 192.168.45.4 6 msec 7 msec 7 msec <<< R4
2 192.168.24.2 7 msec 8 msec 7 msec <<< R2
3 192.168.12.1 8 msec * 12 msec <<< R1
この問題を解決するには、次に示すように、さまざまな方法があります(次のリストは、すべてを網羅したものではありません)。
- R2とR3の間のエリアを99に変更し、コストを変更します。
- R2 と R3 の間に別のリンクを追加し、そのリンクを Area 99 に設定します。
- マルチエリア ADJ(隣接関係)を使用します。
マルチエリアOSPF ADJの動作の仕組みと、この問題の解決方法については、次のセクションを参照してください。
マルチエリア隣接関係の設定
前述のように、マルチエリアADJを使用すると、単一リンク上で複数のポイントツーポイントの論理隣接関係を形成できます。この要件は、リンク上に存在する OSPF スピーカーが 2 つだけでなければならないことで、ブロードキャスト ネットワークにおいては、このリンク上で OSPF ネットワーク タイプを Point-to-Point に手動で変更する必要があります。
この機能を使用すれば、1 つの物理リンクを複数の Area で共有できます。この機能によって、そのリンクを共有するそれぞれの Area で Intra-Area パスが作成されます。
この要件を満たすには、R2とR3の間に、現在エリア0にのみ存在するリンクEthernet 0/1を介してOSPFマルチエリアADJを設定する必要があります。
R2 の設定を次に示します。
interface Ethernet0/1
ip address 192.168.23.2 255.255.255.0
ip ospf network point-to-point
ip ospf multi-area 99
ip ospf 1 area 0
end
R3 の設定を次に示します。
interface Ethernet0/1
ip address 192.168.23.3 255.255.255.0
ip ospf network point-to-point
ip ospf multi-area 99
ip ospf 1 area 0
end
次に示すように、OSPF ADJ が仮想リンク上に形成されます。
%OSPF-5-ADJCHG: Process 1, Nbr 0.0.0.2 on OSPF_MA0 from LOADING to FULL, Loading Done
%OSPF-5-ADJCHG: Process 1, Nbr 0.0.0.3 on OSPF_MA0 from LOADING to FULL, Loading Done
新しく形成された ADJ を次に示します。
R2#show ip ospf neighbor 0.0.0.3
<Snip>
Neighbor 0.0.0.3, interface address 192.168.23.3
In the area 99 via interface OSPF_MA0
Neighbor priority is 0, State is FULL, 6 state changes
DR is 0.0.0.0 BDR is 0.0.0.0
Options is 0x12 in Hello (E-bit, L-bit)
Options is 0x52 in DBD (E-bit, L-bit, O-bit)
LLS Options is 0x1 (LR)
Dead timer due in 00:00:39
Neighbor is up for 00:03:01
Index 2/3, retransmission queue length 0, number of retransmission 0
First 0x0(0)/0x0(0) Next 0x0(0)/0x0(0)
Last retransmission scan length is 0, maximum is 0
Last retransmission scan time is 0 msec, maximum is 0 msec
R3#show ip ospf neighbor 0.0.0.2
<Snip>
Neighbor 0.0.0.2, interface address 192.168.23.2
In the area 99 via interface OSPF_MA0
Neighbor priority is 0, State is FULL, 6 state changes
DR is 0.0.0.0 BDR is 0.0.0.0
Options is 0x12 in Hello (E-bit, L-bit)
Options is 0x52 in DBD (E-bit, L-bit, O-bit)
LLS Options is 0x1 (LR)
Dead timer due in 00:00:39
Neighbor is up for 00:01:41
Index 2/3, retransmission queue length 0, number of retransmission 0
First 0x0(0)/0x0(0) Next 0x0(0)/0x0(0
Last retransmission scan length is 0, maximum is 0
Last retransmission scan time is 0 msec, maximum is 0 msec
確認
設定が正しく機能するかどうかを確認するには、R4でshow ip ospf border-routersコマンドを入力します。
R4#show ip ospf border-routers
OSPF Router with ID (0.0.0.4) (Process ID 1)
Base Topology (MTID 0)
Internal Router Routing Table
Codes: i - Intra-area route, I - Inter-area route
i 0.0.0.3 [10] via 192.168.34.3, Ethernet0/0, ABR, Area 99, SPF 10
i 0.0.0.2 [20] via 192.168.34.3, Ethernet0/0, ABR/ASBR, Area 99, SPF 10
次に示すように、R2(0.0.0.2)/ASBRへのトラフィックのルーティングに使用されるエリア内情報はR3経由です。これにより、前述の問題を解決できます。
R5 でのトレースを次に示します。
R5#traceroute 10.1.1.1
Type escape sequence to abort.
Tracing the route to 10.1.1.1
VRF info: (vrf in name/id, vrf out name/id)
1 192.168.45.4 8 msec 9 msec 8 msec <<< R4
2 192.168.34.3 8 msec 8 msec 8 msec <<< R3
3 192.168.23.2 7 msec 8 msec 8 msec <<< R2
4 192.168.12.1 8 msec * 4 msec <<< R1
コマンド出力に示されているように、10.1.1.1 宛ての R5 からのトラフィックは正しく R3 経由でフローしており、システム要件が満たされています。
R2、R3、およびR4でshow ip ospf neighborコマンドを入力して、ADJが確立されているかどうかを確認します。
R2#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
0.0.0.3 0 FULL/ - 00:00:39 192.168.23.3 Ethernet0/1
0.0.0.4 0 FULL/ - 00:00:37 192.168.24.4 Ethernet0/2
0.0.0.3 0 FULL/ - 00:00:33 192.168.23.3 OSPF_MA0
R3#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
0.0.0.2 0 FULL/ - 00:00:34 192.168.23.2 Ethernet0/1
0.0.0.2 0 FULL/ - 00:00:35 192.168.23.2 OSPF_MA0
0.0.0.4 0 FULL/ - 00:00:39 192.168.34.4 Ethernet0/0
R4#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
0.0.0.2 0 FULL/ - 00:00:32 192.168.24.2 Ethernet0/2
0.0.0.5 0 FULL/ - 00:00:32 192.168.45.5 Ethernet0/1
0.0.0.3 0 FULL/ - 00:00:35 192.168.34.3 Ethernet0/0
注:これらの出力では、Ethernet0/1インターフェイスエントリはエリア0上のADJを示し、OSPF_MA0インターフェイスエントリはエリア99上のマルチエリアADJを示しています。
R4 のインターフェイス Ethernet 0/2 のコストは引き続き 100 で、R4 上で R3 を経由するパスが優先されます。このコストが削除されると、R4 では前と同じようにトラフィックを直接 R2 にルーティングします。
R4 の設定および show ip route コマンドの出力を次に示します。100 の IP OSPF コストは、引き続き R4 のインターフェイス Ethernet 0/2 で設定された状態です。
interface Ethernet0/2
ip address 192.168.24.4 255.255.255.0
ip ospf network point-to-point
ip ospf 1 area 99
ip ospf cost 100
R4#show ip route 10.1.1.1
Routing entry for 10.1.1.1/32
Known via "ospf 1", distance 110, metric 40, type extern 1
Last update from 192.168.34.3 on Ethernet0/0, 00:28:45 ago
Routing Descriptor Blocks:
* 192.168.34.3, from 0.0.0.2, 00:28:45 ago, via Ethernet0/0
Route metric is 40, traffic share count is 1
このコストを削除した場合の、R4 の設定と show ip route コマンドの出力を次に示します。
interface Ethernet0/2
ip address 192.168.24.4 255.255.255.0
ip ospf network point-to-point
ip ospf 1 area 99
end
R4#show ip route 10.1.1.1
Routing entry for 10.1.1.1/32
Known via "ospf 1", distance 110, metric 30, type extern 1
Last update from 192.168.24.2 on Ethernet0/2, 00:00:13 ago
Routing Descriptor Blocks:
* 192.168.24.2, from 0.0.0.2, 00:00:13 ago, via Ethernet0/2 <<< Route changed back to R2
Route metric is 30, traffic share count is 1
トラブルシュート
現在のところ、この設定に関する特定のトラブルシューティング情報はありません。