コンフィグレーションガイド Vol.3


23.3.2 RIPng学習経路フィルタリング

〈この項の構成〉

(1) 特定宛先ネットワークの経路の学習

2001:db8:811:ff01::/64宛てのRIPng経路だけを学習して,ほかの宛先ネットワークへのRIPng経路を学習しないように設定します。

[設定のポイント]

学習経路フィルタリングをするには,distribute-list inを設定してください。経路を宛先ネットワークでフィルタするには,ipv6 prefix-listを使用してください。

まず,2001:db8:811:ff01::/64宛ての経路だけpermitになるipv6 prefix-listを設定します。このipv6 prefix-listをdistribute-list inから参照することで,経路宛先ネットワークによるRIPng学習経路フィルタリングをするように設定します。

[コマンドによる設定]

  1. (config)# ipv6 prefix-list ONLY0811ff01 seq 10 permit 2001:db8:811:ff01::/64

    2001:db8:811:ff01::/64だけpermitになるipv6 prefix-listを設定します。ONLY0811ff01にはほかに条件がないので,宛先アドレスやマスク長の異なる経路はdenyになります。

  2. (config)# ipv6 router rip

    (config-rtr-rip)# distribute-list prefix-list ONLY0811ff01 in

    RIPngで学習する経路をONLY0811ff01でフィルタするように設定します。

(2) 特定インタフェースについて,特定宛先ネットワークの経路の学習

ポート1/1から学習した経路について,2001:db8:811:ff01::/64宛ての経路だけを学習して,ほかの宛先ネットワークへの経路を学習しないように設定します。ポート1/1以外のインタフェースから学習した経路はフィルタしません。

[設定のポイント]

RIPngインタフェース個別に学習経路フィルタリングをするには,distribute-list inに<Interface>を指定してください。

まず,2001:db8:811:ff01::/64宛ての経路だけpermitになるipv6 prefix-listを設定します。このipv6 prefix-listをdistribute-list in gigabitethernet 1/1から参照することで,ポート1/1から学習した経路についてだけ,経路宛先ネットワークによるRIPng学習経路フィルタリングをするように設定します。

[コマンドによる設定]

  1. (config)# ipv6 prefix-list ONLY0811ff01 seq 10 permit 2001:db8:811:ff01::/64

    2001:db8:811:ff01::/64だけpermitになるipv6 prefix-listを設定します。ONLY0811ff01にはほかに条件がないので,宛先アドレスやマスク長の異なる経路はdenyになります。

  2. (config)# ipv6 router rip

    (config-rtr-rip)# distribute-list prefix-list ONLY0811ff01 in gigabitethernet 1/1

    ポート1/1から学習した経路だけを,ONLY0811ff01でフィルタするように設定します。

(3) タグ値と宛先ネットワークの両方による学習経路フィルタリング

宛先ネットワークが2001:db8::/32に含まれていて,かつタグ値が15ではない経路を学習しないようにします。それ以外のRIPng経路はすべて学習するようにします。

[設定のポイント]

宛先ネットワーク以外を条件とする場合や経路属性を変更したい場合は,route-mapを使用します。このroute-mapをdistribute-list inから参照します。

まず,2001:db8::/32に含まれるプレフィックスだけがpermitになるipv6 prefix-listを設定します。次に,このipv6 prefix-listがpermitであり,かつタグ値が15でない経路だけがdenyになるroute-mapを設定します。

最後に,このroute-mapをdistribute-list inから参照することで,タグ値と宛先ネットワークの両方によるRIPng学習経路フィルタリングを設定します。

[コマンドによる設定]

  1. (config)# ipv6 prefix-list LONGER2001db8 seq 10 permit 2001:db8::/32 ge 32 le 128

    2001:db8::/32に含まれる経路だけpermitになるipv6 prefix-listを設定します。

  2. (config)# route-map TAG permit 10

    (config-route-map)# match ipv6 address prefix-list LONGER2001db8

    (config-route-map)# match tag 15

    (config-route-map)# exit

    2001:db8::/32に含まれて,かつタグ値が15の経路がpermitになるように設定します。

  3. (config)# route-map TAG deny 20

    (config-route-map)# match ipv6 address prefix-list LONGER2001db8

    (config-route-map)# exit

    シーケンス番号10にマッチしないで,かつ2001:db8::/32に含まれる経路がdenyになるように設定します。

  4. (config)# route-map TAG permit 30

    (config-route-map)# exit

    シーケンス番号10,20の両方にマッチしなかった経路がpermitになるように設定します。

  5. (config)# ipv6 router rip

    (config-rtr-rip)# distribute-list route-map TAG in

    このフィルタをRIPng学習経路フィルタリングに適用して,2001:db8::/32に含まれてかつタグ値が15でないRIPng経路だけを学習しないように設定します。

(4) 宛先ネットワークによるディスタンス値の変更

宛先ネットワークが2001:db8::/32に含まれているRIPng学習経路について,OSPFv3経路よりも優先されるように,ディスタンス値を50にします。

[設定のポイント]

まず,2001:db8::/32を含む経路だけpermitになるipv6 prefix-listを設定します。次に,このipv6 prefix-listがpermitであればディスタンス値を50に変更するroute-mapを設定します。

最後に,このroute-mapをdistribute-list inから参照することで,宛先ネットワークに基づいてディスタンス値を変更するRIPng学習経路フィルタリングを設定します。

[コマンドによる設定]

  1. (config)# ipv6 prefix-list LONGER2001db8 seq 10 permit 2001:db8::/32 ge 32 le 128

    2001:db8::/32に含まれる経路だけpermitになるipv6 prefix-listを設定します。

  2. (config)# route-map Distance50 permit 10

    (config-route-map)# match ipv6 address prefix-list LONGER2001db8

    (config-route-map)# set distance 50

    (config-route-map)# exit

    2001:db8::/32に含まれる経路を,ディスタンス値を50に変更してpermitになるように設定します。

  3. (config)# route-map Distance50 permit 20

    (config-route-map)# exit

    シーケンス番号10にマッチしなかった経路を,何も変更しないでpermitになるように設定します。

  4. (config)# ipv6 router rip

    (config-rtr-rip)# distribute-list route-map Distance50 in

    このフィルタをRIPng学習経路フィルタリングに適用して,2001:db8::/32に含まれるRIPng学習経路だけ,ディスタンス値を50に変更するように設定します。