# ip community-list expanded

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

## 構文

コマンド構文

`(config)# [no] ip community-list expanded LISTNAME {deny|permit} REGEXPLINE`

## コマンド説明

名前付き拡張コミュニティーリストにエントリーを追加する。
no形式で実行した場合は、名前付き拡張コミュニティーリストから指定したエントリーを削除する。
コミュニティーリストは、BGP経路に対するフィルタリング機能の1つ。COMMUNITIES属性の値に基づいて経路をフィルタリングしたり、各種属性を変更するときに使う。
コミュニティーリストは複数のエントリーから構成されるリストで、検索はエントリーの追加順に行われる。検索時には、最初にマッチしたエントリーで結果（permitかdeny）が返され、マッチした時点で検索は終了する。どのエントリーにもマッチしなかった場合はdenyとなる。
コミュニティーリストは単独で使用するのではなく、ルートマップのmatch節やset節で使用する（match communityコマンド、set comm-list deleteコマンド）。そのとき、コミュニティーリストの検索結果が「permit」ならルートマップの該当エントリーにマッチしたと見なされ、結果が「deny」の場合はマッチしたと見なされない。

## パラメーター

`LISTNAME`
  コミュニティーリスト名
`deny|permit`
  条件に合致した場合のアクション。拒否（deny）、許可（permit）のどちらかを指定する
`REGEXPLINE`
  所属コミュニティーの正規表現。比較対象は、show ip bgpコマンドで特定の経路エントリーを指定したときに表示される「Community」欄の文字列。同欄では、該当経路の所属コミュニティーが、番号の小さい順にスペース区切りで記述されている。なお、コミュニティー番号0:0は文字列「internet」、65535:65281は「no-export」、65535:65282は「no-advertise」、65535:65283は「local-AS」として記述されることに注意。正規表現では大文字小文字を区別するため、これらのキーワードを指定するときは注意すること（特に「local-AS」の「AS」が大文字であることに注意）

## 注意・補足事項

拡張コミュニティーリストの末尾には「deny .*」、すなわち、すべてをdenyする暗黙のエントリーが存在している。なお、コミュニティーリストはルートマップのmatch節やset節で使うものなので、基本的にはpermitする経路だけを列挙する。
拡張コミュニティーリストで指定可能な正規表現の構成要素は次のとおり。

構成要素 | 意味
^ | 所属コミュニティーを表す文字列の先頭にマッチ
$ | 所属コミュニティーを表す文字列の末尾にマッチ
. | スペースを含む任意の1文字にマッチ
* | 直前のパターンが0個以上続く場合に最長マッチ
+ | 直前のパターンが1個以上続く場合に最長マッチ
? | 直前のパターンが0個または1個ある場合にマッチ
_ | コミュニティーの区切りにマッチ。具体的にはスペース、カンマ、丸カッコ( )、波カッコ{ }、文字列の先頭と末尾にマッチする
[012] | 角カッコ[ ]で囲まれた文字のどれか1つと一致すればマッチ
[^012] | 角カッコ[ ]で囲まれた文字のどれとも一致しなければマッチ
- | 角カッコ[ ]内で使った場合のみ、ASCII文字の範囲を示す。たとえば、[0-2]は[012]と、[^6-9]は[^6789]と同じ意味になる
internet | コミュニティー0:0にマッチ
no-export | コミュニティー65535:65281（NO_EXPORT）にマッチ
no-advertise | コミュニティー65535:65282（NO_ADVERTISE）にマッチ
local-AS | コミュニティー65535:65283（NO_EXPORT_SUBCONFED）にマッチ。「AS」が大文字であることに注意

## コマンドツリー

## 関連コマンド