概要

OSPFでのディストリビュートリストの設定例 Part2として、エリア間ルート(O IA)や外部ルート(O E2)がある場合についてです。

ネットワーク構成の変更

エリア構成を次のように変更して、R1でO IAルートが現れるようにします。また、R3ではredistribute connectedを行いR1でO E2ルートが現れるようにします。R1では、distribute-listはいったん削除しておきます。

図 ネットワーク構成の変更
図 ネットワーク構成の変更

R1 distribute-listの削除

router ospf 100
 no distribute-list 2 in

R2 エリア変更

router ospf 100
 network 172.16.0.0 0.0.255.255 area 1

R3 redistribute connected

router ospf 100
 redistribute connected route-map LOOPBACK
!
route-map LOOPBACK permit 10
 match interface Loopback0 Loopback1 Loopback2

ネットワーク構成を変更したときのR1のOSPF LSDBのサマリーとルーティングテーブルは次のようになります。

R1 LSDBサマリー/ルーティングテーブル

R1#show ip ospf database

            OSPF Router with ID (1.1.1.1) (Process ID 100)

                Router Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum Link count
1.1.1.1         1.1.1.1         954         0x80000003 0x00C780 4
2.2.2.2         2.2.2.2         267         0x80000005 0x00CD8D 2
3.3.3.3         3.3.3.3         210         0x80000006 0x00B29B 2

                Summary Net Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum
172.16.1.0      2.2.2.2         263         0x80000001 0x00C6AF
172.16.2.0      2.2.2.2         263         0x80000001 0x00BBB9
172.16.3.0      2.2.2.2         263         0x80000001 0x00B0C3

                Type-5 AS External Link States

Link ID         ADV Router      Age         Seq#       Checksum Tag
192.168.1.0     3.3.3.3         182         0x80000001 0x00D059 0
192.168.2.0     3.3.3.3         182         0x80000001 0x00C563 0
192.168.3.0     3.3.3.3         182         0x80000001 0x00BA6D 0
R1#show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

     172.16.0.0/24 is subnetted, 3 subnets
O IA    172.16.1.0 [110/782] via 10.1.12.2, 00:05:02, Serial1/0
O IA    172.16.2.0 [110/782] via 10.1.12.2, 00:05:02, Serial1/0
O IA    172.16.3.0 [110/782] via 10.1.12.2, 00:05:02, Serial1/0
     10.0.0.0/24 is subnetted, 2 subnets
C       10.1.13.0 is directly connected, Serial1/1
C       10.1.12.0 is directly connected, Serial1/0
O E2 192.168.1.0/24 [110/20] via 10.1.13.3, 00:05:02, Serial1/1
O E2 192.168.2.0/24 [110/20] via 10.1.13.3, 00:05:02, Serial1/1
O E2 192.168.3.0/24 [110/20] via 10.1.13.3, 00:05:03, Serial1/1

R1のLSDBには、172.16.1.0/24~172.16.3.0/24を表すLSAタイプ3があります。また、192.168.1.0/24~192.168.3.0/24を表すLSAタイプ5があります。そして、LSAタイプ3から計算した172.16.1.0/24~172.16.3.0/24のO IAルートがルーティングテーブルに登録されています。同様にLSAタイプ5から計算した192.168.1.0/24~192.168.3.0/24のO E2ルートがルーティングテーブルに載せられています。

O IAルート、O E2ルートのフィルタ

OSPFのdistribute-list inは、O IAルートでもO E2ルートでも同じようにフィルタをかけられます。R1で次の条件に基づいてフィルタします。

  • O IAルートは172.16.2.0/24のみルーティングテーブルに登録
  • O E2ルートは192.168.1.0/24のみルーティングテーブルに登録

このフィルタのためのR1での設定は次のように行います。

R1 フィルタの設定

access-list 3 permit 172.16.2.0
access-list 3 permit 192.168.1.0
!
router ospf 100
 distribute-list 3 in

access-list 3でルーティングテーブルに載せたい172.16.2.0と192.168.1.0をpermitしています。標準アクセスリストなので、ネットワークアドレスの部分のみを指定しています。このaccess-list 3 をdistribute-listのinで適用しています。すると、R1のルーティングテーブルは次のように変わります。

R1 ルーティングテーブル

R1#show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

     172.16.0.0/24 is subnetted, 1 subnets
O IA    172.16.2.0 [110/782] via 10.1.12.2, 00:01:48, Serial1/0
     10.0.0.0/24 is subnetted, 2 subnets
C       10.1.13.0 is directly connected, Serial1/1
C       10.1.12.0 is directly connected, Serial1/0
O E2 192.168.1.0/24 [110/20] via 10.1.13.3, 00:01:48, Serial1/1

ルーティングテーブルを見ると、条件の通りO IAルートとして172.16.2.0/24のみが登録されています。また、O E2ルートとして192.168.1.0/24のみが登録されています。ただし、ルーティングテーブル上ではフィルタされていますが、LSDBには変更はありません。R1のLSDBサマリーを見ると、次のようになります。

R1 LSDBサマリー

R1#show ip ospf database

            OSPF Router with ID (1.1.1.1) (Process ID 100)

                Router Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum Link count
1.1.1.1         1.1.1.1         1684        0x80000003 0x00C780 4
2.2.2.2         2.2.2.2         998         0x80000005 0x00CD8D 2
3.3.3.3         3.3.3.3         941         0x80000006 0x00B29B 2

                Summary Net Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum
172.16.1.0      2.2.2.2         993         0x80000001 0x00C6AF
172.16.2.0      2.2.2.2         993         0x80000001 0x00BBB9
172.16.3.0      2.2.2.2         993         0x80000001 0x00B0C3

                Type-5 AS External Link States

Link ID         ADV Router      Age         Seq#       Checksum Tag
192.168.1.0     3.3.3.3         913         0x80000001 0x00D059 0
192.168.2.0     3.3.3.3         913         0x80000001 0x00C563 0
192.168.3.0     3.3.3.3         913         0x80000001 0x00BA6D 0

ルーティングテーブルには載せられていない172.16.1.0/24、172.16.3.0/24を表すLSAタイプ3がLSDB上には存在します。また、192.168.2.0/24、192.168.3.0/24を表すLSAタイプ5がLSDB上に存在していることがわかります。

図 フィルタの設定と動作
図 フィルタの設定と動作

このように、OSPFでのdistribute-list inはLSDBからルーティングテーブルに登録するときに機能します。その対象は、エリア内ルート(O)でも、エリア間ルート(O IA)でも外部ルート(O E1/E2)でも同じです。


OSPFの仕組み