[index] CentreCOM 8948XL コマンドリファレンス 2.9

# スイッチング/IPv6ハードウェアパケットフィルター

備考：IPv6アクセラレーターボード AT-ACC01（および拡張メインメモリー AT-SD256A-001）が必要

      - 基本動作
       - フィルターの構成
       - フィルター処理の流れ
      - 設定手順
      - コマンド例
      - IPv6ハードウェアパケットフィルターのルール領域消費量

IPv6ハードウェアパケットフィルターは、IPv6アクセラレーターボードのL3処理部において、IPv6パケットをフィルタリング（許可・拒否・DSCP/802.1p書き換え）する機能です。

> Note - トンネリングIPv6パケット（IPv6 over IPv4および6to4）をフィルタリングすることはできません。

IPv6ハードウェアパケットフィルターは、本体スイッチチップのL2入力処理部で適用されるハードウェアパケットフィルターとは独立した機能であり、併用が可能です。
IPv6ハードウェアパケットフィルターには以下の特長があります。

- ルーティングされるIPv6パケットにだけ適用される（スイッチングされるIPv6パケットをフィルタリングするには、通常のハードウェアパケットフィルターを使う）
- L3、L4ヘッダーに基づくフィルタリング（L2ヘッダーは見ない）
- パケットの許可・拒否に加え、DSCP、802.1pの書き換えも可能（ポリシーベースQoSの分類基準として利用できる）

IPv6パケットのフィルタリング条件には、以下の各項目を使用できます。フィルタリング条件は、汎用のパケットフィルターであるクラシファイアによって定義します。クラシファイアの詳細については「スイッチング」/「クラシファイア」をご覧ください。

- IPv6ヘッダーのDSCP（DiffServ Code Point）、プロトコル、始点・終点IPアドレス
- TCPヘッダーの始点・終点ポート
- UDPヘッダーの始点・終点ポート

条件に一致したパケットに対しては、以下の処理（アクション）が可能です。アクションは最初に一致したエントリーで適用されます。どのエントリーにも一致しなかったパケットは通常通り処理（転送）されます。

- 転送（Forward）
- 破棄（Discard）
- DSCP/802.1p書き換え（Mark）

基本動作

IPv6ハードウェアパケットフィルターの基本動作について説明します。

フィルターの構成

IPv6ハードウェアパケットフィルターは、複数のフィルターで構成される1つのリストです。個々のフィルターは、クラシファイア（汎用パケットフィルター）とアクションから構成されます。

フィルター処理の流れ

IPv6ハードウェアパケットフィルターの処理は、おおむね次の手順にしたがって行われます。

> Note - 以下の説明は、設定上の便宜を最優先して書いたものであり、実際の内部動作を正確に記述したものではありません。あらかじめご了承ください。

1. IPv6ハードウェアパケットフィルターが1つでも定義されている場合、ルーティング対象のIPv6パケットとフィルターエントリーを、フィルター番号の小さい順に照合します。
2. 一致するエントリーが見つかった場合は、その場でアクション（破棄、転送、DSCP/802.1p書き換え）を実行し、フィルターの処理を完了します。
3. 一致するエントリーがなかった場合はフィルター処理を完了し、通常どおりパケットを出力します。

> Note - IPv6ハードウェアパケットフィルターは、スイッチ本体から送信されるパケットには適用されません。

設定手順

IPv6ハードウェアパケットフィルターの設定は、次の流れで行います。

1. クラシファイアの作成（CREATE CLASSIFIERコマンド）
2. フィルターエントリーの追加（ADD SWITCH ACCELERATOR HWFILTERコマンド）

以下、各手順について詳しく解説します。
ここでは例として、ホスト3ffe:b80:3c:10::1aからサーバー3ffe:b80:3c:20::2宛てのパケットを遮断するよう設定します。

1. クラシファイアを作成します（CREATE CLASSIFIERコマンド）。

   `CREATE CLASSIFIER=1 ETHFORMAT=ETHII-TAGGED PROTOCOL=IPV6 IPSADDR=3ffe:b80:3c:10::1a/128 IPDADDR=3ffe:b80:3c:20::2/128 ↓
   `

   > Note - IPv6ハードウェアパケットフィルターで使用するクラシファイアは、CREATE CLASSIFIERコマンドのページに掲載されている「IPv6ハードウェアパケットフィルター用の構文」にしたがっている必要があります。同構文にないパラメーターを含むクラシファイアを使おうとすると、ADD SWITCH ACCELERATOR HWFILTERコマンド実行時にエラーとなります。

2. フィルターを作成（リストに追加）します（ADD SWITCH ACCELERATOR HWFILTERコマンド）。フィルターを作成するには、フィルター番号に加え、クラシファイア番号とマッチ時のアクション（転送、破棄、DSCP/802.1p書き換え）を指定する必要があります。

   `ADD SWITCH ACCELERATOR HWFILTER=1 CLASSIFIER=1 ACTION=DISCARD ↓
   `

> Note - 既存フィルターと同じ番号を指定した場合は、既存フィルターの位置に新規フィルターが挿入され、既存フィルター以降は番号が1つずつ後ろにずれます。

> Note - IPv6ハードウェアパケットフィルターは、ルーティングされるすべてのIPv6パケットに適用されます。ただし、トンネリングIPv6パケット（IPv6 over IPv4および6to4）は対象外です。

> Note - IPv6ハードウェアパケットフィルターは、スイッチ本体から送信されるパケットには適用されません。

基本設定は以上です。

コマンド例

次に具体的なコマンド例を示します。
■ 3ffe:b80:3c:10::100から3ffe:b80:3c:20::/64へのIPv6ルーティングパケットを破棄。

`CREATE CLASSIFIER=1 ETHFORMAT=ETHII-TAGGED PROTOCOL=IPV6 IPSADDR=3ffe:b80:3c:10::100/128 IPDADDR=3ffe:b80:3c:20::/64 ↓
ADD SWITCH ACCELERATOR HWFILTER=1 CLASSIFIER=1 ACTION=DISCARD ↓
`

■ 3ffe:b80:3c:10::/64からのICMPパケットを破棄。

`CREATE CLASSIFIER=1 ETHFORMAT=ETHII-TAGGED PROTOCOL=IPV6 IPSADDR=3ffe:b80:3c:10::/64 IPPROTOCOL=ICMP ↓
ADD SWITCH ACCELERATOR HWFILTER=1 CLASSIFIER=1 ACTION=DISCARD ↓
`

■ 3ffe:b80:3c:30::100へのtelnetパケットを破棄。

`CREATE CLASSIFIER=1 ETHFORMAT=ETHII-TAGGED PROTOCOL=IPV6 IPDADDR=3ffe:b80:3c:30::100/128 TCPDPORT=23 ↓
ADD SWITCH ACCELERATOR HWFILTER=1 CLASSIFIER=1 ACTION=DISCARD ↓
`

■ ポリシーベースQoSでパケットを分類するため、3ffe:b80:3c:1ff::/64からのUDPパケットのDSCP値を10に書き換える。

`CREATE CLASSIFIER=1 ETHFORMAT=ETHII-TAGGED PROTOCOL=IPV6 IPDADDR=3ffe:b80:3c:1ff::/64 IPPROTOCOL=UDP ↓
ADD SWITCH ACCELERATOR HWFILTER=1 CLASSIFIER=1 ACTION=MARK NEWIPDSCP=10 ↓
`

■ IPv6ハードウェアパケットフィルターを使用するためには、必ずIPv6モジュールを有効にする必要があります。IPv6ハードウェアパケットフィルターは、ルーティングされるIPv6パケットだけが対象だからです。レイヤー2スイッチングされるIPv6パケット（同一VLAN内のIPv6通信など）をフィルタリングするには、通常のハードウェアパケットフィルターを使ってください。ただしこの場合は、IPv6アドレスなどのL3パラメーターを条件に使うことはできません。
■ IPv6ハードウェアパケットフィルターの一覧を表示するには、SHOW SWITCH ACCELERATOR HWFILTERコマンドを使います。

`SHOW SWITCH ACCELERATOR HWFILTER ↓
SHOW SWITCH ACCELERATOR HWFILTER=1 ↓
`

■ クラシファイアの一覧を表示するには、SHOW CLASSIFIERコマンドを実行します。CLASSIFIERパラメーターに番号を指定すれば、該当するクラシファイアの詳細なパラメーターが表示されます。

`SHOW CLASSIFIER ↓
SHOW CLASSIFIER=1-3 ↓
SHOW CLASSIFIER=ALL ↓
`

■ IPv6ハードウェアパケットフィルターのフィルター番号は可変です。ADD SWITCH ACCELERATOR HWFILTERコマンドでフィルターを追加するとき、既存のフィルターと同じ番号を指定した場合は、既存フィルターの位置に新規フィルターが挿入され、既存フィルター以降は番号が1つずつ後ろにずれます。
■ IPv6ハードウェアパケットフィルターを削除するには、DELETE SWITCH ACCELERATOR HWFILTERコマンドにフィルター番号を指定します。フィルター番号は可変なので、必ずSHOW SWITCH ACCELERATOR HWFILTERコマンドで確認してから指定してください。フィルターを削除すると、削除によって空いた番号を埋める形で後続のフィルター番号が自動的に変更されるので注意してください。

`DELETE SWITCH ACCELERATOR HWFILTER=1 ↓
DELETE SWITCH ACCELERATOR HWFILTER=ALL ↓
`

> Note - IPv6ハードウェアパケットフィルターを削除しても、クラシファイアは削除されません。IPv6ハードウェアパケットフィルターとクラシファイアの関連付けが削除されるだけです。クラシファイアを削除するには、DESTROY CLASSIFIERコマンドを使います。

IPv6ハードウェアパケットフィルターのルール領域消費量

IPv6ハードウェアパケットフィルターは、通常のハードウェアパケットフィルターなどと異なり、システム内部のルール領域を使用しません。ルール領域の空き容量とは関係なく、最大999個のフィルターを作成することができます。
なお、ルール領域については、「スイッチング」/「クラシファイア」をご覧ください（「クラシファイアとルール領域消費量」を参照）。

(C) 2004 - 2008 アライドテレシスホールディングス株式会社

PN: J613-M0021-12 Rev.L