ディストリビュート(distribute-list)はルーティングアップデートを制御する機能です。
Access-listやPrefix-list、route-mapを使って、条件を付けます。
Access-listとPrefix-listそれぞれ試してみます。
【Access-list ver】
R1で、172.16.1.0/24の経路情報を拒否します。
【設定前ログ】
設定前なので「172.16.1.0/24」が登録されてます。
R1(config)#do sh ip route ospf
10.0.0.0/8 is variably subnetted, 6 subnets, 2 masks
O 10.1.3.0/24 [110/2] via 10.0.1.2, 00:00:06, GigabitEthernet0/1
O 10.1.23.0/24 [110/2] via 10.0.12.2, 00:00:06, GigabitEthernet0/0
172.16.0.0/24 is subnetted, 2 subnets
O 172.16.1.0 [110/3] via 10.0.12.2, 00:00:06, GigabitEthernet0/0
[110/3] via 10.0.1.2, 00:00:06, GigabitEthernet0/1
O 172.16.2.0 [110/3] via 10.0.12.2, 00:00:06, GigabitEthernet0/0
[110/3] via 10.0.1.2, 00:00:06, GigabitEthernet0/1
【設定Config】
※拒否するので172.16.1.0のdenyだけ入れると、OSPFの経路全て受信拒否になるので
permit any入れてます。
R1(config)#access-list 1 deny 172.16.1.0 0.0.0.255
R1(config)#access-list 1 permit any
R1(config-router)#distribute-list 1 in
【設定後ログ】
172.16.1.0が消えてますね。
R1#sh ip route ospf
10.0.0.0/8 is variably subnetted, 6 subnets, 2 masks
O 10.1.3.0/24 [110/2] via 10.0.1.2, 00:04:13, GigabitEthernet0/1
O 10.1.23.0/24 [110/2] via 10.0.12.2, 00:04:13, GigabitEthernet0/0
172.16.0.0/24 is subnetted, 1 subnets
O 172.16.2.0 [110/3] via 10.0.12.2, 00:04:13, GigabitEthernet0/0
[110/3] via 10.0.1.2, 00:04:13, GigabitEthernet0/1
R1#sh ip protocols
Routing Protocol is "ospf 1"
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is 1
【Prefix-list ver】
R1で172.16.x.x/24以下の経路を受信、25以上は拒否します。
【設定前ログ】
R1(config)#do sh ip route ospf
10.0.0.0/8 is variably subnetted, 6 subnets, 2 masks
O 10.1.3.0/24 [110/2] via 10.0.1.2, 00:00:03, GigabitEthernet0/1
O 10.1.23.0/24 [110/2] via 10.0.12.2, 00:00:03, GigabitEthernet0/0
172.16.0.0/16 is variably subnetted, 4 subnets, 2 masks
O 172.16.1.0/24 [110/3] via 10.0.12.2, 00:00:03, GigabitEthernet0/0
[110/3] via 10.0.1.2, 00:00:03, GigabitEthernet0/1
O 172.16.2.0/24 [110/3] via 10.0.12.2, 00:00:03, GigabitEthernet0/0
[110/3] via 10.0.1.2, 00:00:03, GigabitEthernet0/1
O 172.16.3.0/28 [110/3] via 10.0.12.2, 00:00:03, GigabitEthernet0/0
[110/3] via 10.0.1.2, 00:00:03, GigabitEthernet0/1
O 172.16.4.0/28 [110/3] via 10.0.12.2, 00:00:03, GigabitEthernet0/0
[110/3] via 10.0.1.2, 00:00:03, GigabitEthernet0/1
【設定Config】
R1(config)#ip prefix-list le permit 172.16.0.0/16 ge 25
R1(config-router)#distribute-list prefix le in
→Prefix-listの条件内容は、Ipアドレスが「172.16.x.x」でサブネットが/24以下です。
【設定後ログ】
R1#sh ip route ospf
10.0.0.0/8 is variably subnetted, 6 subnets, 2 masks
O 10.1.3.0/24 [110/2] via 10.0.1.2, 00:00:03, GigabitEthernet0/1
O 10.1.23.0/24 [110/2] via 10.0.12.2, 00:00:03, GigabitEthernet0/0
172.16.0.0/24 is subnetted, 2 subnets
O 172.16.1.0 [110/3] via 10.0.12.2, 00:00:03, GigabitEthernet0/0
[110/3] via 10.0.1.2, 00:00:03, GigabitEthernet0/1
O 172.16.2.0 [110/3] via 10.0.12.2, 00:00:03, GigabitEthernet0/0
[110/3] via 10.0.1.2, 00:00:03, GigabitEthernet0/1