# ip prefix-list

モード
  グローバルコンフィグモード
カテゴリー
  IP / 経路制御（フィルタリング）

## 構文

コマンド構文

`(config)# ip prefix-list PLISTNAME [seq <1-4294967295>] {deny|permit} PREFIX`

`(config)# ip prefix-list PLISTNAME description TEXTLINE`

`(config)# no ip prefix-list PLISTNAME [[seq <1-4294967295>] {deny|permit} PREFIX]`

`(config)# no ip prefix-list PLISTNAME description TEXTLINE`

## コマンド説明

IPプレフィックスリストにエントリーを追加する。
no形式でIPプレフィックスリスト名だけを指定した場合は、IPプレフィックスリスト全体を削除する。
no形式でエントリーを指定した場合は、IPプレフィックスリストから該当エントリーを削除する。
no形式でdescriptionパラメーターを指定した場合は、IPプレフィックスリストの説明文（メモ）だけを削除する。
IPプレフィックスリストは、経路制御プロトコルでやりとりされる経路情報に対するフィルタリング機能の1つ。経路制御メッセージに含まれるプレフィックス、すなわち、宛先ネットワークアドレスとプレフィックス長（サブネットマスクの長さ）の組をチェックして、該当プレフィックスを破棄したり許可したりするために使う。
IPプレフィックスリストは複数のエントリーから構成されるリストで、検索はエントリー番号の若い順に行われる。検索時には、最初にマッチしたエントリーで処理（permitかdeny）が行われるか結果（permitかdeny）が返され、マッチした時点で検索は終了する。どのエントリーにもマッチしなかった場合はdenyとなる。
ルートマップのmatch節でIPプレフィックスリストを使用するときは、結果が「permit」のプレフィックスはルートマップの該当エントリーにマッチしたと見なされ、結果が「deny」のプレフィックスはマッチしたと見なされない。

## パラメーター

`PLISTNAME`
  IPプレフィックスリスト名
`seq <1-4294967295>`
  リスト内におけるエントリー番号。エントリーの新規作成時に省略した場合は、既存エントリーの最大番号＋5が自動的に割り当てられる（初期値は0。したがって最初のエントリーは5）。既存エントリーを変更するときは、必ずエントリー番号を指定すること
`deny|permit`
  条件に合致した場合のアクション。拒否（deny）、許可（permit）のどちらかを指定する
`PREFIX`
  IPプレフィックスのパターン。次の2つの指定方法がある
  `A.B.C.D/M [ge <0-32>] [le <0-32>]`
    IPアドレスとマスク長で指定する方法。MはIPアドレス「A.B.C.D」に対する比較対象ビットの長さで、A.B.C.Dの先頭何ビットを比較対象にするかを示す。geとleはオプションで、経路エントリーのプレフィックス長（経路エントリー「172.16.10.0/24」における「24」の部分）がgeの指定値以上、かつ、leの指定値以下のときだけマッチするよう指定する。ge、leの両方とも指定しなかったときは、経路エントリーのプレフィックス長が「M」と等しいときだけマッチする。geだけを指定した場合、le指定値は32と見なされる（ge指定値～32）。leだけを指定した場合、ge指定値は「M」と見なされる（M～le指定値）。geの指定値はA.B.C.D/MのMよりも大きくなくてはならない。また、leの指定値はgeの指定値以上でなくてはならない。すなわち、「M < ge指定値 < le指定値」となる
  `any`
    すべてのIPプレフィックスに合致させる場合に指定する
`description TEXTLINE`
  説明文。TEXTLINEは行末までがその値と見なされるため、スペースを含んでいてもよい

## 使用例

次のIPプレフィックスリスト「p1」は、宛先プレフィックス（アドレス部分）の先頭2オクテットが「172.16」で、プレフィックス長が16～32ビットの経路エントリーを破棄する。破棄される経路の例としては、172.16.0.0/16、172.16.10.0/24、172.16.100.5/32などが挙げられる。

    awplus(config)# ip prefix-list p1 deny 172.16.0.0/16 le 32
    awplus(config)# ip prefix-list p1 permit any

次のIPプレフィックスリスト「p2」は、宛先プレフィックス（アドレス部分）の先頭12ビットが「172.16」～「172.31」の範囲内で、プレフィックス長が12～32ビットの経路エントリーを破棄する。これは、クラスBのプライベートアドレス「172.16.0.0/12」範囲内のすべてのネットワークが当てはまる。破棄される経路の例としては、172.16.0.0/12、172.16.0.0/16、172.16.10.0/24、172.16.100.5/32などが挙げられる。

    awplus(config)# ip prefix-list p2 deny 172.16.0.0/12 le 32
    awplus(config)# ip prefix-list p2 permit any

前項のIPプレフィックスリスト「p2」は、次のように記述しても同じ動作をする。これは、「A.B.C.D/M」の「A.B.C.D」の部分は、先頭「M」ビットしか比較対象にならないためである。なお、本項のような記述は混乱を招くだけなのでおすすめできない。あくまでも「M」の意味を説明するための例である。

    awplus(config)# ip prefix-list p2 deny 172.16.111.222/12 le 32
    awplus(config)# ip prefix-list p2 permit any

次のIPプレフィックスリスト「p3」は、宛先プレフィックス（アドレス部分）の先頭3オクテットが「172.16.10」で、プレフィックス長が24ビットの経路エントリーを破棄する。これは事実上、経路エントリー「172.16.10.0/24」だけを破棄する設定となる。

    awplus(config)# ip prefix-list p3 deny 172.16.10.0/24
    awplus(config)# ip prefix-list p3 permit any

前項のIPプレフィックスリスト「p3」は、次のように記述しても同じ動作をする。理由は先に述べたとおり。

    awplus(config)# ip prefix-list p3 deny 172.16.10.100/24
    awplus(config)# ip prefix-list p3 permit any

次のIPプレフィックスリスト「p4」は、宛先プレフィックス（アドレス部分）の先頭2オクテットが「172.16」で、プレフィックス長が16ビットの経路エントリーを破棄する。これは事実上、「172.16.0.0/16」だけを破棄する設定となる。

    awplus(config)# ip prefix-list p4 deny 172.16.0.0/16
    awplus(config)# ip prefix-list p4 permit any

前項のIPプレフィックスリスト「p4」は、次のように記述しても同じ動作をする。理由は先に述べたとおり。一見すると、経路エントリー「172.16.10.0/24」も破棄されそうだが、プレフィックス長が16でないため破棄されない。

    awplus(config)# ip prefix-list p4 deny 172.16.10.0/16
    awplus(config)# ip prefix-list p4 permit any

## 注意・補足事項

IPプレフィックスリストの末尾には「deny any」、すなわち、すべてをdenyする暗黙のエントリーが存在している。

## コマンドツリー

## 関連コマンド