本記事では「トータリーNSSA(Totally Not-So-Stubby Area)」の設定及び正常性確認に関する検証結果をご紹介させて頂きます。
>>参考記事: 「CCIEが語る!ネットワークエンジニアにオススメな本・参考書!」
>>参考記事: 「[まとめ] OSPF 基礎〜応用・検証結果の記事をまとめました!」
【OSPF トータリーNSSA 検証】検証内容
設定要件及び検証ネットワークは以下の通りです。
ネットワーク図
検証時のネットワーク環境は以下の通りです。
設定要件
以下の要件に基づきOSPFの設定を実装する。
- R2-R4(エリア1)をトータリーNSSAにする事
- R4のLoopback10(Lo10:10.10.10.10)をOSPFネットワークへ再配布する事
- R4(Lo0:10.10.10.10)からREX(Lo0:100.100.100.100)へPingが通る事
検証時の確認ポイント
最初に検証時の確認ポイントを整理しておきます。
- トータリーNSSA内に伝搬されるLSAの確認
※ Type3,4,5がフィルターされ、Type7が生成されている事 - トータリーNSSA内ルータのルーティングテーブルの確認
※ABRでType3のデフォルトルートが自動生成される事
【OSPF トータリーNSSA 検証】事前確認 ※興味ない方は飛ばしてOKです。
本検証ネットワークのOSPFステータスを以下に纏めております。
興味のない方は「4章:設定変更作業から」をクリックして下さい。
検証前時点の各機器の設定内容やログは以下の通りです。
・「show ip ospf interface brief」コマンドで各OSPFインターフェース情報を出力しております。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | R1#show ip ospf interface brief Interface PID Area IP Address/Mask Cost State Nbrs F/C Lo0 1 0 1.1.1.1/24 1 LOOP 0/0 Et0/0 1 0 192.168.12.1/24 10 BDR 1/1 Et0/1 1 0 192.168.13.1/24 10 BDR 1/1 R2#show ip ospf interface brief Interface PID Area IP Address/Mask Cost State Nbrs F/C Lo0 1 0 2.2.2.2/24 1 LOOP 0/0 Et0/0 1 0 192.168.12.2/24 10 DR 1/1 Et0/1 1 1 192.168.24.1/24 10 BDR 1/1 R3#show ip ospf interface brief Interface PID Area IP Address/Mask Cost State Nbrs F/C Lo0 1 0 3.3.3.3/24 1 LOOP 0/0 Et0/1 1 0 192.168.13.2/24 10 DR 1/1 Et0/0 1 2 192.168.35.1/24 10 BDR 1/1 R4#show ip ospf interface brief Interface PID Area IP Address/Mask Cost State Nbrs F/C Lo0 1 1 4.4.4.4/24 1 LOOP 0/0 Et0/1 1 1 192.168.24.2/24 10 DR 1/1 R5#show ip ospf interface brief Interface PID Area IP Address/Mask Cost State Nbrs F/C Lo0 1 2 5.5.5.5/24 1 LOOP 0/0 Et0/0 1 2 192.168.35.2/24 10 DR 1/1 |
・「show ip ospf neighbor」コマンドでネイバー状態を出力しております。
以下の通り、全ルータ間でOSPFネイバーが確立出来ている事が確認できると思います。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | R1#show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 2.2.2.2 1 FULL/DR 00:00:38 192.168.12.2 Ethernet0/0 3.3.3.3 1 FULL/DR 00:00:39 192.168.13.2 Ethernet0/1 R2#show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 1.1.1.1 1 FULL/BDR 00:00:38 192.168.12.1 Ethernet0/0 4.4.4.4 1 FULL/DR 00:00:36 192.168.24.2 Ethernet0/1 R3#show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 1.1.1.1 1 FULL/BDR 00:00:37 192.168.13.1 Ethernet0/1 5.5.5.5 1 FULL/DR 00:00:37 192.168.35.2 Ethernet0/0 R4#show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 2.2.2.2 1 FULL/BDR 00:00:34 192.168.24.1 Ethernet0/1 R5#show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 3.3.3.3 1 FULL/BDR 00:00:31 192.168.35.1 Ethernet0/0 |
・R2とR4、R5の「show ip route ospf」コマンドでルーティングテーブルを出力しております。
以下の通り、各OSPF経路・外部経路(非OSPF経路)を受信出来ている事が確認できると思います。
▼ R2のルーティングテーブル▼
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | R2#show ip route ospf | begin Gateway Gateway of last resort is not set 1.0.0.0/32 is subnetted, 1 subnets O 1.1.1.1 [110/11] via 192.168.12.1, 00:00:34, Ethernet0/0 3.0.0.0/32 is subnetted, 1 subnets O 3.3.3.3 [110/21] via 192.168.12.1, 00:00:34, Ethernet0/0 4.0.0.0/32 is subnetted, 1 subnets O 4.4.4.4 [110/11] via 192.168.24.2, 00:00:24, Ethernet0/1 5.0.0.0/32 is subnetted, 1 subnets O IA 5.5.5.5 [110/31] via 192.168.12.1, 00:00:34, Ethernet0/0 100.0.0.0/32 is subnetted, 1 subnets O E2 100.100.100.100 [110/20] via 192.168.12.1, 00:00:34, Ethernet0/0 O E2 192.168.0.0/24 [110/20] via 192.168.12.1, 00:00:34, Ethernet0/0 O 192.168.13.0/24 [110/20] via 192.168.12.1, 00:00:34, Ethernet0/0 O IA 192.168.35.0/24 [110/30] via 192.168.12.1, 00:00:34, Ethernet0/0 |
▼ R4のルーティングテーブル▼
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | R4#show ip route ospf | begin Gateway Gateway of last resort is not set 1.0.0.0/32 is subnetted, 1 subnets O IA 1.1.1.1 [110/21] via 192.168.24.1, 00:00:06, Ethernet0/1 2.0.0.0/32 is subnetted, 1 subnets O IA 2.2.2.2 [110/11] via 192.168.24.1, 00:00:06, Ethernet0/1 3.0.0.0/32 is subnetted, 1 subnets O IA 3.3.3.3 [110/31] via 192.168.24.1, 00:00:06, Ethernet0/1 5.0.0.0/32 is subnetted, 1 subnets O IA 5.5.5.5 [110/41] via 192.168.24.1, 00:00:06, Ethernet0/1 100.0.0.0/32 is subnetted, 1 subnets O E2 100.100.100.100 [110/20] via 192.168.24.1, 00:00:06, Ethernet0/1 O E2 192.168.0.0/24 [110/20] via 192.168.24.1, 00:00:06, Ethernet0/1 O IA 192.168.12.0/24 [110/20] via 192.168.24.1, 00:00:06, Ethernet0/1 O IA 192.168.13.0/24 [110/30] via 192.168.24.1, 00:00:06, Ethernet0/1 O IA 192.168.35.0/24 [110/40] via 192.168.24.1, 00:00:06, Ethernet0/1 |
▼ R5のルーティングテーブル▼
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | R5#show ip route ospf | begin Gateway Gateway of last resort is not set 1.0.0.0/32 is subnetted, 1 subnets O IA 1.1.1.1 [110/21] via 192.168.35.1, 1d09h, Ethernet0/0 2.0.0.0/32 is subnetted, 1 subnets O IA 2.2.2.2 [110/31] via 192.168.35.1, 1d04h, Ethernet0/0 3.0.0.0/32 is subnetted, 1 subnets O IA 3.3.3.3 [110/11] via 192.168.35.1, 1d09h, Ethernet0/0 4.0.0.0/32 is subnetted, 1 subnets O IA 4.4.4.4 [110/41] via 192.168.35.1, 00:00:12, Ethernet0/0 O IA 192.168.12.0/24 [110/30] via 192.168.35.1, 1d09h, Ethernet0/0 O IA 192.168.13.0/24 [110/20] via 192.168.35.1, 1d09h, Ethernet0/0 O IA 192.168.24.0/24 [110/40] via 192.168.35.1, 1d04h, Ethernet0/0 |
NSSAの設定をした場合、上記「R4のルーティングテーブル」が変わります。
具体的にどのように変わるかを確認していきましょう!
【OSPF トータリーNSSA 検証】設定変更作業
では、以下にてNSSAの設定を実装していきます。
- R2のエリア1をトータリーNSSAにする
- R4のエリア1をNSSAにする
- R4のLoopback10(Lo10:10.10.10.10)をOSPFネットワークへ再配布する
1 2 | R2(config)# router ospf 1 R2(config-router)# area 1 nssa no-summary |
NSSAでデフォルトルートを生成する際は手動設定(area nssa default-information originateコマンドで設定)する必要がございますが、
トータリーNSSAでは「nssa no-summaryコマンド」のみで自動生成されます。
1 2 | R4(config)# router ospf 1 R4(config-router)# area 1 nssa |
1 2 3 4 5 | R4(config)# route-map Loopback->OSPF permit 10 R4(config-route-map)# match interface Loopback10 R4(config)# router ospf 1 R4(config-router)# redistribute connected subnets route-map Loopback->OSPF |
【OSPF トータリーNSSA 検証】正常性確認
では以下の2点について確認してみましょう!
- トータリーNSSA内に伝搬されるLSAの確認
※ Type3,4,5がフィルターされ、Type7が生成されている事 - トータリーNSSA内ルータのルーティングテーブルの確認
※ABRでType3のデフォルトルートが自動生成される事
【正常性確認①】トータリーNSSA内に伝搬されるLSAの確認
・トータリーNSSAのルータであるR4の設定前後でOSPFデータベースの差分を確認し、LSA Type3〜5のLSAがフィルターされている事を確認します。
まずはNSSAの設定前のOSPFデータベースを確認します。
以下の通りLSA Type 3〜5を受信しているのが、分かると思います。
▼ 【設定前】R4のOSPFデータベース▼
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | // ※LSA type3、4、5、7のみ抜粋しております R4#show ip ospf database | begin Summary Net Link Summary Net Link States (Area 1) Link ID ADV Router Age Seq# Checksum 1.1.1.1 2.2.2.2 41 0x80000004 0x00879B // ← エリア外経路(Type3)として受信 2.2.2.2 2.2.2.2 41 0x80000004 0x00F434 // ← エリア外経路(Type3)として受信 3.3.3.3 2.2.2.2 41 0x80000004 0x008F81 // ← エリア外経路(Type3)として受信 5.5.5.5 2.2.2.2 41 0x80000004 0x009767 // ← エリア外経路(Type3)として受信 192.168.12.0 2.2.2.2 41 0x80000004 0x00753D // ← エリア外経路(Type3)として受信 192.168.13.0 2.2.2.2 41 0x80000004 0x00CED8 // ← エリア外経路(Type3)として受信 192.168.35.0 2.2.2.2 41 0x80000004 0x004047 // ← エリア外経路(Type3)として受信 Summary ASB Link States (Area 1) Link ID ADV Router Age Seq# Checksum 5.5.5.5 2.2.2.2 41 0x80000001 0x00857C // ← ASBR情報(Type4)として受信 Type-5 AS External Link States Link ID ADV Router Age Seq# Checksum Tag 100.100.100.100 5.5.5.5 1729 0x80000040 0x00C8F2 0 // ← 外部経路(非OSPF経路)をType5として受信 192.168.0.0 5.5.5.5 1729 0x8000003C 0x0029BE 0 // ← 外部経路(非OSPF経路)をType5として受信 |
次にトータリーNSSAの設定後のOSPFデータベースを確認します。
以下の通り元々受信していたLSA Type 3(1.1.1.1等)やLSA Type 4、LSA Type 5がフィルターされている事が分かると思います。
それは「トータリーNSSA」はLSA Type1~2,7とType3(ABRが自動生成されるデフォルトルート)のみ伝播可能なOSPFの特殊エリアなので、R2(ABR)がLSA Type 3 〜 LSA Type 5の伝搬を止めているからです。
また、R2(ABR)ではLSA Type3 〜 5の代わりにLSA Type3のデフォルトルート(0.0.0.0)をNSSA内に伝搬している点も確認出来ると思います。
NSSAではLSA Type7のデフォルトルートを生成しますが、トータリーNSSAではType3のデフォルトルートを生成します。
R4(ASBR)で再配布しているLoopback10(10.10.10.10)のLSAはLSA Type5でなくLSA Type7で生成している点も確認しましょう!
▼ 【設定後】R4のOSPFデータベース▼
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | // ※LSA type3、4、5、7のみ抜粋しております R4#show ip ospf database | begin Summary Net Link // ← 外部経路(LSA Type 3〜LSA Type 5)が消えている!以下のLSA Type3のデフォルトルート(0.0.0.0)に集約されている。 Summary Net Link States (Area 1) Link ID ADV Router Age Seq# Checksum 0.0.0.0 2.2.2.2 910 0x80000002 0x00FA32 // ← エリア外ルート・外部ルートの代わりにLSA Type3のデフォルトルート(0.0.0.0)が増えている。 Type-7 AS External Link States (Area 1) Link ID ADV Router Age Seq# Checksum Tag 10.10.10.10 4.4.4.4 492 0x80000006 0x00CB7D 0 // ← R4のLo10(10.10.10.10)はLSA Type7として生成されている。 |
参考までにLSA Type5の代わりに生成されたデフォルトルート(0.0.0.0)とR4のLoopback経路(10.10.10.10)を「show ip ospf database summary 0.0.0.0」「show ip ospf database nssa-external 10.10.10.10」コマンドで確認してみましょう!
以下の通り、R2(ABR)でデフォルトルートをLSA Type3を生成し、R4(ASBR)でLoopback経路(10.10.10.10)をLSA Type7で生成している事が分かると思います。
▼ OSPFデータベース LSA Type3(0.0.0.0)▼
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | R4#show ip ospf database summary 0.0.0.0 OSPF Router with ID (4.4.4.4) (Process ID 1) Summary Net Link States (Area 1) Routing Bit Set on this LSA in topology Base with MTID 0 LS age: 1108 Options: (No TOS-capability, DC, Upward) LS Type: Summary Links(Network) Link State ID: 0.0.0.0 (summary Network Number) // ← ネットワークアドレス(デフォルトルートなので0.0.0.0) Advertising Router: 2.2.2.2 // ← このデフォルトルートのLSAはR2(ルーターID:2.2.2.2)が生成した事を意味する。 LS Seq Number: 80000002 Checksum: 0xFA32 Length: 28 Network Mask: /0 // ← サブネットマスク(デフォルトルートなので/0) MTID: 0 Metric: 1 // ← デフォルトルートのコスト値 |
▼ OSPFデータベース LSA Type7(10.10.10.10)▼
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | R4#show ip ospf database nssa-external 10.10.10.10 OSPF Router with ID (4.4.4.4) (Process ID 1) Type-7 AS External Link States (Area 1) LS age: 1037 Options: (No TOS-capability, Type 7/5 translation, DC, Upward) LS Type: AS External Link Link State ID: 10.10.10.10 (External Network Number ) // ← ネットワークアドレス(デフォルトルートなので0.0.0.0) Advertising Router: 4.4.4.4 // ← 10.10.10.10のLSAはR4(ルーターID:4.4.4.4)が生成した事を意味する。 LS Seq Number: 80000006 Checksum: 0xCB7D Length: 36 Network Mask: /32 // ← サブネットマスク Metric Type: 2 (Larger than any link state path) // ← メトリックタイプ(2:非コスト加算型) MTID: 0 Metric: 20 // ← 非OSPF経路のコスト値 Forward Address: 4.4.4.4 // ← 非OSPF経路の転送先アドレス (Type7の場合、ASBRのLoopbackアドレスが入る為、R4のLo0の値が入る) External Route Tag: 0 |
【正常性確認②】トータリーNSSA内ルータのルーティングテーブルの確認
・R4の設定前後でルーティングテーブルの差分を確認し、どのように変わっているか確認します。
まずはトータリーNSSAの設定前のルーティングテーブルを確認します。
以下の通り外部経路として(100.100.100.100,192.168.0.0)を受信しているのが、分かると思います。
▼ R4のルーティングテーブル▼
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | R4#show ip route ospf | begin Gateway Gateway of last resort is not set 1.0.0.0/32 is subnetted, 1 subnets O IA 1.1.1.1 [110/21] via 192.168.24.1, 00:05:04, Ethernet0/1 2.0.0.0/32 is subnetted, 1 subnets O IA 2.2.2.2 [110/11] via 192.168.24.1, 00:05:04, Ethernet0/1 3.0.0.0/32 is subnetted, 1 subnets O IA 3.3.3.3 [110/31] via 192.168.24.1, 00:05:04, Ethernet0/1 5.0.0.0/32 is subnetted, 1 subnets O IA 5.5.5.5 [110/41] via 192.168.24.1, 00:05:04, Ethernet0/1 100.0.0.0/32 is subnetted, 1 subnets O E2 100.100.100.100 [110/20] via 192.168.24.1, 00:05:04, Ethernet0/1 // ← 外部経路(E2)として反映されている O E2 192.168.0.0/24 [110/20] via 192.168.24.1, 00:05:04, Ethernet0/1 // ← 外部経路(E2)として反映されている O IA 192.168.12.0/24 [110/20] via 192.168.24.1, 00:05:04, Ethernet0/1 O IA 192.168.13.0/24 [110/30] via 192.168.24.1, 00:05:04, Ethernet0/1 O IA 192.168.35.0/24 [110/40] via 192.168.24.1, 00:05:04, Ethernet0/1 |
次にトータリーNSSAの設定後のルーティングテーブルを確認します。
以下の通り外部経路(E2)がルーティングテーブルから消えている事が分かると思います。
それは上記「【正常性確認①】トータリーNSSA内に伝搬されるLSAの確認」の通り、R2(ABR)でLSA Type 3〜5がフィルターされNSSA内にLSA Type 3〜5が流れてこないからです。
代わりにR2(ABR)で生成したLSA Type3のデフォルトルート(0.0.0.0)がルーティングテーブルに反映されている事を確認しましょう!
▼ R4のルーティングテーブル▼
1 2 3 4 5 6 | //外部経路(100.100.100.100/32, 192.168.0.0/24)が消えている! R4#show ip route ospf | begin Gateway Gateway of last resort is 192.168.24.1 to network 0.0.0.0 O*IA 0.0.0.0/0 [110/11] via 192.168.24.1, 00:55:20, Ethernet0/1 // ← 新たにデフォルトルート(IA:Type3)を受信している事 |
最後にR4(Lo10:10.10.10.10)からREX(Lo0:100.100.100.100)へPingが通る事を確認しましょう!
▼ R4のルーティングテーブル▼
1 2 3 4 5 6 | R4#ping 100.100.100.100 source loopback 10 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 100.100.100.100, timeout is 2 seconds: Packet sent with a source address of 10.10.10.10 !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 3/3/5 ms |
以下の記事ではNSSAの検証結果を纏めております。興味のある方はご覧下さい。
NSSAの設定方法と正常性確認方法(LSDBの解析等)について動作検証結果を纏めております。初心者の方にも分かるように纏めておりますでCCNA・CCNPを目指している方はぜひご覧下さい!
まとめ
最後までお読み頂きありがとうございました。
トータリーNSSAを有効活用する事により、リンクステートデータベースとルーティングテーブルのサイズを削減する事が可能であり、ネットワークを最適化する事が出来ます。ぜひ覚えておきましょう!
網羅的にOSPFの知識を身につけたい方は、以下のまとめ記事をご確認ください!!
>>参考記事: 「[まとめ] OSPF 基礎〜応用・検証結果の記事をまとめました!」