概要

標準ACLでフィルタするルートを特定するディストリビュートリストの設定例です。インタフェースの送受信、再配送時のフィルタの設定と動作をステップ・バイ・ステップで解説しています。

ネットワーク構成

図 ディストリビュートリストによるルートフィルタの設定例 ネットワーク構成
図 ディストリビュートリストによるルートフィルタの設定例 ネットワーク構成

初期設定

  • ホスト名/IPアドレス
  • RIPv2
    • R1-R3間でRIPv2を有効化
  • EIGRP AS1
    • R1-R2間でEIGRP AS1を有効化
  • 再配送
    • R1でEIGRPとRIPv2の双方向再配送

設定条件

  • R3はネットワークアドレス「168.1.x(xは任意)」のルート情報のみをRIPv2でR1へアドバタイズします。
  • R2はR1からネットワークアドレス「68.1.32/27」のルート情報のみをEIGRPルートとして受信します。
  • R1はネットワークアドレスが「1」ではじまり3バイト目が奇数のルート情報のみをEIGRPからRIPv2へ再配送します。

設定と確認

Step1:ルートフィルタ設定前のルーティングテーブルの確認

まず、ルートフィルタを設定する前のルーティングテーブルを確認します。

R1

R1#show ip route
~省略~

Gateway of last resort is not set

C    192.168.13.0/24 is directly connected, FastEthernet1/0
     10.0.0.0/24 is subnetted, 5 subnets
D       10.1.3.0 [90/156160] via 10.12.12.2, 00:04:52, FastEthernet0/0
D       10.1.2.0 [90/156160] via 10.12.12.2, 00:04:54, FastEthernet0/0
C       10.12.12.0 is directly connected, FastEthernet0/0
D       10.1.1.0 [90/156160] via 10.12.12.2, 00:04:58, FastEthernet0/0
D       10.1.4.0 [90/156160] via 10.12.12.2, 00:04:49, FastEthernet0/0
     192.168.1.0/27 is subnetted, 3 subnets
R       192.168.1.64 [120/1] via 192.168.13.3, 00:00:23, FastEthernet1/0
R       192.168.1.32 [120/1] via 192.168.13.3, 00:00:23, FastEthernet1/0
R       192.168.1.0 [120/1] via 192.168.13.3, 00:00:23, FastEthernet1/0
     192.168.2.0/24 is variably subnetted, 2 subnets, 2 masks
R       192.168.2.32/27 [120/1] via 192.168.13.3, 00:00:23, FastEthernet1/0
R       192.168.2.0/24 [120/1] via 192.168.13.3, 00:00:24, FastEthernet1/0
     192.168.3.0/24 is subnetted, 1 subnets
R       192.168.3.0 [120/1] via 192.168.13.3, 00:00:24, FastEthernet1/0

R2

R2#show ip route
~省略~

Gateway of last resort is not set

D EX 192.168.13.0/24 [170/30720] via 10.12.12.1, 00:02:06, FastEthernet0/0
     10.0.0.0/24 is subnetted, 5 subnets
C       10.1.3.0 is directly connected, Loopback0
C       10.1.2.0 is directly connected, Loopback0
C       10.12.12.0 is directly connected, FastEthernet0/0
C       10.1.1.0 is directly connected, Loopback0
C       10.1.4.0 is directly connected, Loopback0
     192.168.1.0/27 is subnetted, 3 subnets
D EX    192.168.1.64 [170/30720] via 10.12.12.1, 00:02:07, FastEthernet0/0
D EX    192.168.1.32 [170/30720] via 10.12.12.1, 00:02:09, FastEthernet0/0
D EX    192.168.1.0 [170/30720] via 10.12.12.1, 00:02:09, FastEthernet0/0
     192.168.2.0/24 is variably subnetted, 2 subnets, 2 masks
D EX    192.168.2.32/27 [170/30720] via 10.12.12.1, 00:02:09, FastEthernet0/0
D EX    192.168.2.0/24 [170/30720] via 10.12.12.1, 00:02:10, FastEthernet0/0
D EX 192.168.3.0/24 [170/30720] via 10.12.12.1, 00:02:10, FastEthernet0/0

R3

R3#show ip route
~省略~
Gateway of last resort is not set

C    192.168.13.0/24 is directly connected, FastEthernet0/0
     10.0.0.0/24 is subnetted, 5 subnets
R       10.1.3.0 [120/10] via 192.168.13.1, 00:00:10, FastEthernet0/0
R       10.1.2.0 [120/10] via 192.168.13.1, 00:00:10, FastEthernet0/0
R       10.12.12.0 [120/10] via 192.168.13.1, 00:00:10, FastEthernet0/0
R       10.1.1.0 [120/10] via 192.168.13.1, 00:00:10, FastEthernet0/0
R       10.1.4.0 [120/10] via 192.168.13.1, 00:00:10, FastEthernet0/0
     192.168.1.0/27 is subnetted, 3 subnets
C       192.168.1.64 is directly connected, Loopback0
C       192.168.1.32 is directly connected, Loopback0
C       192.168.1.0 is directly connected, Loopback0
     192.168.2.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.2.32/27 is directly connected, Loopback0
C       192.168.2.0/24 is directly connected, Loopback0
     192.168.3.0/24 is subnetted, 1 subnets
C       192.168.3.0 is directly connected, Loopback0

Step2:R3 インタフェースから送信時のルートフィルタの設定

R3でインタフェースからRIPルートを送信するときのルートフィルタの設定を行います。ネットワークアドレス「192.168.1.x(xは任意)」のルート情報をpermitする標準ACLを作成して、Fa0/0から送信するときに適用します。

R3

access-list 1 permit 192.168.1.0 0.0.0.255
!
router rip
 distribute-list 1 out FastEthernet0/0

Step3:R3 インタフェースから送信時のルートフィルタの確認

R3のルートフィルタの設定を確認します。ディストリビュートリストの適用はshow ip protocolsコマンドを見ます。

R3

R3#show ip protocols
Routing Protocol is "rip"
  Outgoing update filter list for all interfaces is not set
    FastEthernet0/0 filtered by 1, default is 1
  Incoming update filter list for all interfaces is not set
  Sending updates every 30 seconds, next due in 12 seconds
  Invalid after 180 seconds, hold down 180, flushed after 240
  Redistributing: rip
  Default version control: send version 2, receive version 2
    Interface             Send  Recv  Triggered RIP  Key-chain
    FastEthernet0/0       2     2
  Automatic network summarization is not in effect
  Maximum path: 4
  Routing for Networks:
    192.168.1.0
    192.168.2.0
    192.168.3.0
    192.168.13.0
  Passive Interface(s):
    Loopback0
  Routing Information Sources:
    Gateway         Distance      Last Update
    192.168.13.1         120      00:00:41
  Distance: (default is 120)

R3#show access-lists
Standard IP access list 1
    10 permit 192.168.1.0, wildcard bits 0.0.0.255 (15 matches)

そして、R1でRIPデータベースとルーティングテーブル上のRIPルートを確認します。

R1

R1#show ip rip database
10.0.0.0/8    auto-summary
10.1.1.0/24    redistributed
    [10] via 10.12.12.2,
10.1.2.0/24    redistributed
    [10] via 10.12.12.2,
10.1.3.0/24    redistributed
    [10] via 10.12.12.2,
10.1.4.0/24    redistributed
    [10] via 10.12.12.2,
10.12.12.0/24    redistributed
    [10] via 0.0.0.0,
192.168.1.0/24    auto-summary
192.168.1.0/27
    [1] via 192.168.13.3, 00:00:07, FastEthernet1/0
192.168.1.32/27
    [1] via 192.168.13.3, 00:00:07, FastEthernet1/0
192.168.1.64/27
    [1] via 192.168.13.3, 00:00:07, FastEthernet1/0
192.168.13.0/24    auto-summary
192.168.13.0/24    directly connected, FastEthernet1/0
R1#show ip route rip
     192.168.1.0/27 is subnetted, 3 subnets
R       192.168.1.64 [120/1] via 192.168.13.3, 00:00:07, FastEthernet1/0
R       192.168.1.32 [120/1] via 192.168.13.3, 00:00:07, FastEthernet1/0
R       192.168.1.0 [120/1] via 192.168.13.3, 00:00:21, FastEthernet1/0

R1のRIPデータベースにはR3から送信されたルート情報は、「192.168.1.0/27」「192.168.1.32/27」「192.168.1.64/27」の3つだけで、「192.168.2.0/27」「192.168.3.0/24」は含まれていません。その結果、ルーティングテーブルにもRIPルートは「192.168.1.0/27」「192.168.1.32/27」「192.168.1.64/27」の3つだけです。R3でインタフェースからRIPルートを送信するときにフィルタが意図したとおりに機能していることがわかります。

図 R3のルートフィルタの動作
図 R3のルートフィルタの動作

Step4:R2 インタフェースで受信時のルートフィルタの設定

R2は以下の4つのルート情報をRIPドメインのルートをEIGRP外部ルートとしてR1から受信しています。

  • 168.1.0/27
  • 168.1.32/27
  • 168.1.64/27
  • 168.13.0/24

R2

R2#show ip route eigrp
D EX 192.168.13.0/24 [170/30720] via 10.12.12.1, 00:19:37, FastEthernet0/0
     192.168.1.0/27 is subnetted, 3 subnets
D EX    192.168.1.64 [170/30720] via 10.12.12.1, 00:15:55, FastEthernet0/0
D EX    192.168.1.32 [170/30720] via 10.12.12.1, 00:15:55, FastEthernet0/0
D EX    192.168.1.0 [170/30720] via 10.12.12.1, 00:15:55, FastEthernet0/0

R2でEIGRP外部ルートとして「192.168.1.32/27」だけ受信するように受信時のディストリビュートリストの設定を行います。

R2

access-list 1 permit 192.168.1.32
!
router eigrp 1
 distribute-list 1 in FastEthernet0/0

Step5:R2 インタフェースで受信時のルートフィルタの確認

R2のルートフィルタの設定を確認します。show ip protocolsおよびshow access-listコマンドを表示します。

R2

R2#show ip protocols
Routing Protocol is "eigrp 1"
  Outgoing update filter list for all interfaces is not set
  Incoming update filter list for all interfaces is not set
    FastEthernet0/0 filtered by 1, default is 1
  Default networks flagged in outgoing updates
  Default networks accepted from incoming updates
  EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0
  EIGRP maximum hopcount 100
  EIGRP maximum metric variance 1
  Redistributing: eigrp 1
  EIGRP NSF-aware route hold timer is 240s
  Automatic network summarization is not in effect
  Maximum path: 4
  Routing for Networks:
    10.0.0.0
    172.16.0.0
    172.17.0.0
    172.18.0.0
    172.19.0.0
  Routing Information Sources:
    Gateway         Distance      Last Update
    10.12.12.1            90      00:00:56
  Distance: internal 90 external 170

R2#show access-lists
Standard IP access list 1
    10 permit 192.168.1.32 (1 match)

そして、EIGRPトポロジテーブルとルーティングテーブルを確認します。

R2

R2#show ip eigrp topology
IP-EIGRP Topology Table for AS(1)/ID(10.1.1.2)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - reply Status, s - sia Status

P 10.1.3.0/24, 1 successors, FD is 128256
        via Connected, Loopback0
P 10.1.2.0/24, 1 successors, FD is 128256
        via Connected, Loopback0
P 10.1.1.0/24, 1 successors, FD is 128256
        via Connected, Loopback0
P 10.12.12.0/24, 1 successors, FD is 28160
        via Connected, FastEthernet0/0
P 10.1.4.0/24, 1 successors, FD is 128256
        via Connected, Loopback0
P 192.168.1.32/27, 1 successors, FD is 30720
        via 10.12.12.1 (30720/28160), FastEthernet0/0
R2#show ip route eigrp
     192.168.1.0/27 is subnetted, 1 subnets
D EX    192.168.1.32 [170/30720] via 10.12.12.1, 00:19:26, FastEthernet0/0

RIPドメインのルート情報として、EIGRPトポロジテーブルに「192.168.1.32/27」だけが登録されていて、その結果、ルーティングテーブルに外部ルート「192.168.1.32/27」だけが登録されるようになっています。条件通りにルートフィルタが機能していることがわかります。

図 R2のルートフィルタの動作
図 R2のルートフィルタの動作

Step6:R1 再配送時のルートフィルタの設定

R1でEIGRPからRIPv2へ再配送しています。フィルタをかけていないとき、再配送対象のルートは以下の5つです。

  • 1.1.0/24
  • 1.2.0/24
  • 1.3.0/24
  • 1.4.0/24
  • 12.12.0/24

この5つのEIGRPルートがRIPデータベースに再配送されています。

R1

R1#show ip rip database
10.0.0.0/8    auto-summary
10.1.1.0/24    redistributed
    [10] via 10.12.12.2,
10.1.2.0/24    redistributed
    [10] via 10.12.12.2,
10.1.3.0/24    redistributed
    [10] via 10.12.12.2,
10.1.4.0/24    redistributed
    [10] via 10.12.12.2,
10.12.12.0/24    redistributed
    [10] via 0.0.0.0,
192.168.1.0/24    auto-summary
192.168.1.0/27
    [1] via 192.168.13.3, 00:00:11, FastEthernet1/0
192.168.1.32/27
    [1] via 192.168.13.3, 00:00:11, FastEthernet1/0
192.168.1.64/27
    [1] via 192.168.13.3, 00:00:11, FastEthernet1/0
192.168.13.0/24    auto-summary
192.168.13.0/24    directly connected, FastEthernet1/0

EIGRPからRIPv2に再配送されるのが条件通りに「10.1」ではじまり3バイト目が奇数のルート情報のみになるようにフィルタをかけます。標準ACLで「10.1.1.0」と「10.1.3.0」だけをpermitしてもよいのですが、もっと汎用性を持たせるためにワイルドカードマスクを工夫します。

R1

access-list 1 permit 10.1.1.0 0.0.254.255
!
router rip
 distribute-list 1 out eigrp 1

奇数は、8ビットのうち最下位ビットが「1」です。最下位ビットだけをチェックするワイルドカードマスクは最下位ビットの部分が「0」になっていればOKです。

図 IPアドレス「奇数」
図 IPアドレス「奇数」

Step7:R1 再配送時のルートフィルタの確認

R1の再配送時のルートフィルタを確認します。show ip protocolsおよびshow access-listを表示します。

R1

R1#show ip protocols
Routing Protocol is "eigrp 1"
~省略~

Routing Protocol is "rip"
  Outgoing update filter list for all interfaces is not set
    Redistributed eigrp 1 filtered by 1
  Incoming update filter list for all interfaces is not set
  Sending updates every 30 seconds, next due in 13 seconds
  Invalid after 180 seconds, hold down 180, flushed after 240
  Redistributing: eigrp 1, rip
  Default version control: send version 2, receive version 2
    Interface             Send  Recv  Triggered RIP  Key-chain
    FastEthernet1/0       2     2
  Automatic network summarization is not in effect
  Maximum path: 4
  Routing for Networks:
    192.168.13.0
  Routing Information Sources:
    Gateway         Distance      Last Update
    192.168.13.3         120      00:00:15
  Distance: (default is 120)

R1#show access-lists
Standard IP access list 1
    10 permit 10.1.1.0, wildcard bits 0.0.254.255 (66 matches)

そして、RIPデータベースとdebug ip ripでR1からR3へ送信しているRIPルート情報を確認します。

R1

R1#show ip rip database
10.0.0.0/8    auto-summary
10.1.1.0/24    redistributed
    [10] via 10.12.12.2,
10.1.2.0/24    redistributed
    [10] via 10.12.12.2,
10.1.3.0/24    redistributed
    [10] via 10.12.12.2,
10.1.4.0/24    redistributed
    [10] via 10.12.12.2,
10.12.12.0/24    redistributed
    [10] via 0.0.0.0,
192.168.1.0/24    auto-summary
192.168.1.0/27
    [1] via 192.168.13.3, 00:00:24, FastEthernet1/0
192.168.1.32/27
    [1] via 192.168.13.3, 00:00:24, FastEthernet1/0
192.168.1.64/27
    [1] via 192.168.13.3, 00:00:24, FastEthernet1/0
192.168.13.0/24    auto-summary
192.168.13.0/24    directly connected, FastEthernet1/0
R1#debug ip rip
RIP protocol debugging is on
R1#
*Mar  1 00:59:22.191: RIP: sending v2 update to 224.0.0.9 via FastEthernet1/0 (192.168.13.1)
*Mar  1 00:59:22.191: RIP: build update entries
*Mar  1 00:59:22.191:   10.1.1.0/24 via 0.0.0.0, metric 10, tag 0
*Mar  1 00:59:22.191:   10.1.3.0/24 via 0.0.0.0, metric 10, tag 0
R1#undebug all
All possible debugging has been turned off

RIPの再配送時のルートフィルタをdistribute-listで適用した場合、RIPデータベース上ではフィルタがかかっていないように表示されてしまいます。ですが、R1からR3へ送信しているRIPルートは「10.1.1.0/24」「10.1.3.0/24」の2つだけで条件通りです。R3のルーティングテーブルには、次のように「10.1.1.0/24」「10.1.3.0/24」のルート情報がRIPルートとして登録されています。

R3

R3#show ip route rip
     10.0.0.0/24 is subnetted, 2 subnets
R       10.1.3.0 [120/10] via 192.168.13.1, 00:00:10, FastEthernet0/0
R       10.1.1.0 [120/10] via 192.168.13.1, 00:00:10, FastEthernet0/0

図 R1のルートフィルタの動作
図 R1のルートフィルタの動作

設定のまとめ

各ルータの設定内容をまとめておきます。

R1

R1はネットワークアドレスが「10.1」ではじまり3バイト目が奇数のルート情報のみをEIGRPからRIPv2へ再配送します。

R1

access-list 1 permit 10.1.1.0 0.0.254.255
!
router rip
 distribute-list 1 out eigrp 1

R2

R2はR1からネットワークアドレス「192.168.1.32/27」のルート情報のみをEIGRPルートとして受信します。

R2

access-list 1 permit 192.168.1.32
!
router eigrp 1
 distribute-list 1 in FastEthernet0/0

R3

R3はネットワークアドレス「192.168.1.x(xは任意)」のルート情報のみをRIPv2でR1へアドバタイズします。

R3

access-list 1 permit 192.168.1.0 0.0.0.255
!
router rip
 distribute-list 1 out FastEthernet0/0

IPルーティング応用