トラフィック制御 / アクセスリスト
アクセスリストは、MACアドレス、IPアドレスなどのアドレス情報に基づいてパケットやトラフィック、アプリケーションセッション、経路エントリーなどを分類・識別し、分類後の処理を指定したり、設定対象IPアドレスを範囲指定したりするための汎用的な仕組みです。本解説編では、アクセスリストの種類と用途について述べた後、アクセスリストの基本的な作成方法について解説します。
なお、アクセスリスト自体は基本的に分類・識別条件を定義するだけなので、単体では意味をなさず、他の機能と組み合わせて初めて効果を発揮しますが、本解説編では作成したアクセスリストの使用方法については軽く触れるだけにします。各機能におけるアクセスリストの具体的な使用方法については、該当機能の解説編やコマンドリファレンス編をご参照ください。
アクセスリストの種類と用途
アクセスリストには、大きく分けて「標準IPアクセスリスト」、「拡張IPアクセスリスト」、「標準IPv6アクセスリスト」、「ハードウェアアクセスリスト」の4種類があります。次に示すように、これらはそれぞれ用途が分かれています。したがって、用途が決まれば使用すべきアクセスリストの種類も自動的に決まります。
- 標準IPアクセスリスト
- SNMPコミュニティーへのアクセス制御
- IPv4によるリモートアクセス(Telnet/SSH)の制御
- (RIP) 経路情報のフィルタリング(経路エントリーの許可・破棄や属性変更)
- (OSPF) 経路情報のフィルタリング(経路エントリーの許可・破棄や属性変更)
- (BGP) 経路情報のフィルタリング(経路エントリーの許可・破棄や属性変更)
- (PIM-SM) 隣接関係の制御(隣接ルーターの制限)
- (PIM-SM) 各種機能の設定対象となるマルチキャストグループの指定
- (PIM-DM) 隣接関係の制御(隣接ルーターの制限)
- (IGMP) 参加可能なマルチキャストグループの制限
- (IGMP) 各種機能の設定対象となるマルチキャストグループの指定
- SNMPコミュニティーへのアクセス制御
- 拡張IPアクセスリスト
- (PIM-SM) ランデブーポイント(RP)におけるRegisterメッセージのフィルタリング
- (MSDP) MSDPピアにおけるSA(Source-Active)メッセージのフィルタリング
- (PIM-SM) ランデブーポイント(RP)におけるRegisterメッセージのフィルタリング
- 標準IPv6アクセスリスト
- IPv6によるリモートアクセス(Telnet/SSH)の制御
- (RIPng) 経路情報のフィルタリング(経路エントリーの許可・破棄や属性変更)
- (OSPFv3) 経路情報のフィルタリング(経路エントリーの許可・破棄や属性変更)
- (BGP) 経路情報のフィルタリング(経路エントリーの許可・破棄や属性変更)
- (PIM-SMv6) ランデブーポイント(RP)におけるRegisterメッセージのフィルタリング
- (PIM-SMv6) 隣接関係の制御(隣接ルーターの制限)
- (PIM-SMv6) 各種機能の設定対象となるマルチキャストグループの指定
- (MLD/MLD Snooping) 参加可能なマルチキャストグループの制限
- (MLD/MLD Snooping) 各種機能の設定対象となるマルチキャストグループの指定
- IPv6によるリモートアクセス(Telnet/SSH)の制御
- ハードウェアアクセスリスト
- (ハードウェアパケットフィルター) 受信スイッチポートにおけるパケットフィルタリング
- (QoS) 受信スイッチポートにおけるトラフィック分類
- (ハードウェアパケットフィルター) 受信スイッチポートにおけるパケットフィルタリング
なお実際には、標準IPv6アクセスリストを除く3種類は、識別子(ID)として番号、文字列のどちらを使うか、あるいは、分類条件としてEthernetヘッダー、IPヘッダー、IPv6ヘッダー以降のどれを使うかなどの違いによって、さらにそれぞれ小分類することができます。したがって、厳密にはアクセスリストの種類は次の8つとなります。
| 1~99、1300~1999 | access-list(standard)コマンド | |
| 名前(文字列) | access-list standardコマンド | |
| 100~199、2000~2699 | access-list(extended)コマンド | |
| 名前(文字列) | access-list extendedコマンド | |
| 名前(文字列) | ipv6 access-list standardコマンド | |
| 3000~3699 | access-list(hardware ip)コマンド | |
| 4000~4699 | access-list(hardware mac)コマンド | |
| 名前(文字列) | ipv6 access-list(list)コマンド | |
コマンド形式(シーケンス番号対応)
アクセスリストのコマンドの形式には2種類あります。- 逐次指定
以下のように、設定対象のリストと個々のルールを毎回指定します。
access-list 1 deny 192.168.10.0 0.0.0.255 access-list 1 permit any
- サブモード指定(シーケンス番号対応)
最初にリスト指定を行いサブモードに入ったあと、個々のルールを指定します。また、ルール指定時にシーケンス番号を指定することで、リスト内の位置を指定できます。
access-list 1 10 deny 192.168.10.0 0.0.0.255 20 permit any
なお、ハードウェアアクセスリストでのサブモード指定は、LISTNAMEで作成した時のみ可能です。
アクセスリストの種類ごとに、以下のように、両方の形式のためのコマンドが用意されています。
| access-list(standard)コマンド | access-list(standard)(list)コマンド、access-list(standard)(seq entry)コマンド | |
| access-list standardコマンド | access-list standard(list)コマンド、access-list standard(seq entry)コマンド | |
| access-list(extended)コマンド | access-list(extended)(list)コマンド、access-list(extended)(seq entry)コマンド | |
| access-list extendedコマンド | access-list extended(list)コマンド、access-list extended(seq entry)コマンド | |
| ipv6 access-list standardコマンド | ipv6 access-list standard(list)コマンド、ipv6 access-list standard(seq entry)コマンド | |
| access-list(hardware ip)コマンド | access-list hardware(list)コマンド、access-list hardware(seq entry)コマンド | |
| access-list(hardware mac)コマンド | access-list hardware(list)コマンド、access-list hardware(seq entry)コマンド | |
| なし | ipv6 access-list(list)コマンド、ipv6 access-list(seq entry)コマンド | |
以下の説明では、逐次指定のコマンド形式を使用します。
アクセスリストの作成
以下では、アクセスリストの種類ごとに、その概要と作成方法について説明します。標準IPアクセスリスト
標準IPアクセスリストは、IPアドレスを1つだけ指定できるアクセスリストです。おもに、始点IPアドレスに基づいて、本装置上のサービス(SNMPなど)に対するアクセスを制御する場合に使用します。また、マルチキャスト関連機能において、設定対象のグループアドレスを範囲指定する場合にも使用します。
標準IPアクセスリストは複数のエントリーから構成されるリストで、検索はエントリーの追加順に行われます。検索時には、最初にマッチしたエントリーで処理(permitかdeny)が行われ、マッチした時点で検索は終了します。どのエントリーにもマッチしなかった場合はdenyとなります。
標準IPアクセスリストには、各リストを番号で識別するタイプと名前で識別するタイプがあり、それぞれ以下のコマンドで設定を行います。
- 番号で識別するタイプ:access-list(standard)コマンド
- 名前で識別するタイプ:access-list standardコマンド
両者は分類条件の指定方法が若干異なるだけで、アクセスリストを使用する各機能においてはどちらもほぼ同じように使用できます。ただし、機能によってはどちらか一方しか使えないものもありますので、詳細は各機能の解説編やコマンドリファレンス編で確認してください。
以下では、標準IPアクセスリストの作成方法について解説します。
標準IPアクセスリストを使って経路エントリーの分類・識別や制御を行う方法については、「IP」の「経路制御(フィルタリング)」をご覧ください。
番号付き標準IPアクセスリスト
番号で識別するタイプの標準IPアクセスリストを作成するには、access-list(standard)コマンドを使います。標準IPアクセスリストには、1~99、および、1300~1999の範囲の番号を使います。番号付き標準IPアクセスリストでは、通常始点IPアドレスに対してのみマッチングを行います。このとき、ワイルドカードマスク(リバースマスクまたはORマスクともいう)を使うことで、柔軟なアドレス指定が可能です。次にいくつか例を示します。
- 192.168.10.2と192.168.20.2にだけアクセスを許可する。
awplus(config)# access-list 1 permit host 192.168.10.2 awplus(config)# access-list 1 permit host 192.168.20.2
- 192.168.30.0/24からのアクセスを拒否し、その他は許可する。
awplus(config)# access-list 2 deny 192.168.30.0 0.0.0.255 awplus(config)# access-list 2 permit any
名前付き標準IPアクセスリスト
名前で識別するタイプの標準IPアクセスリストを作成するには、access-list standardコマンドを使います。名前付き標準IPアクセスリストでは、通常始点IPアドレスに対してのみマッチングを行います。このとき、マスク長(ANDマスクともいう)を使うことで、柔軟なアドレス指定が可能です。次にいくつか例を示します。
- 192.168.10.2と192.168.20.2にだけアクセスを許可する。
awplus(config)# access-list standard n1 permit 192.168.10.2/32 awplus(config)# access-list standard n1 permit 192.168.20.2/32
- 192.168.30.0/24からのアクセスを拒否し、その他は許可する。
awplus(config)# access-list standard n2 deny 192.168.30.0/24 awplus(config)# access-list standard n2 permit any
拡張IPアクセスリスト
拡張IPアクセスリストは、条件となるIPアドレスを2つ指定できるアクセスリストです。始点IPアドレスと終点IPアドレスに基づくアクセス制御やトラフィック分類が本来の用途ですが、本製品では、PIM-SMのランデブーポイントにおけるRegisterメッセージのフィルタリングと、MSDPにおけるSA(Source-Active)メッセージのフィルタリングにだけ拡張IPアクセスリストを使用します。
拡張IPアクセスリストは複数のエントリーから構成されるリストで、検索はエントリーの追加順に行われます。検索時には、最初にマッチしたエントリーで処理(permitかdeny)が行われ、マッチした時点で検索は終了します。どのエントリーにもマッチしなかった場合はdenyとなります。
拡張IPアクセスリストには、各リストを番号で識別するタイプと名前で識別するタイプがあり、それぞれ以下のコマンドで設定を行います。
- 番号で識別するタイプ:access-list(extended)コマンド
- 名前で識別するタイプ:access-list extendedコマンド
以下では、拡張IPアクセスリストの作成方法について解説します。
なお、拡張IPアクセスリストを使って経路エントリーの分類・識別や制御を行うことはできません。
番号付き拡張IPアクセスリスト
番号で識別するタイプの拡張IPアクセスリストを作成するには、access-list(extended)コマンドを使います。拡張IPアクセスリストには、100~199、および、2000~2699の範囲の番号を使います。番号付き拡張IPアクセスリストでは、通常始点IPアドレスと終点IPアドレスに対してマッチングを行います。このとき、ワイルドカードマスク(リバースマスクまたはORマスクともいう)を使うことで、柔軟なアドレス指定が可能です。次にいくつか例を示します。
- PIM-SMのランデブーポイント(RP)において、送信者172.16.10.100からのマルチキャストパケットを含むRegisterメッセージを拒否するための番号付き拡張IPアクセスリストを作成する。
awplus(config)# access-list 100 deny ip host 172.16.10.100 any awplus(config)# access-list 100 permit ip any any
名前付き拡張IPアクセスリスト
名前で識別するタイプの拡張IPアクセスリストを作成するには、access-list extendedコマンドを使います。名前付き拡張IPアクセスリストでは、通常始点IPアドレスと終点IPアドレスに対してマッチングを行います。このとき、マスク長(ANDマスクともいう)を使うことで、柔軟なアドレス指定が可能です。
- PIM-SMのランデブーポイント(RP)において、送信者172.16.10.5からのマルチキャストパケットを含むRegisterメッセージだけを許可するための名前付き拡張IPアクセスリスト「only105」を作成する。
awplus(config)# access-list extended only105 permit ip 172.16.10.5/32 any
標準IPv6アクセスリスト
標準IPv6アクセスリストは、IPv6アドレスを1つだけ指定できるアクセスリストです。標準IPアクセスリストのIPv6版と考えればよいでしょう。
標準IPv6アクセスリストは複数のエントリーから構成されるリストで、検索はエントリーの追加順に行われます。検索時には、最初にマッチしたエントリーで処理(permitかdeny)が行われ、マッチした時点で検索は終了します。どのエントリーにもマッチしなかった場合はdenyとなります。
標準IPv6アクセスリストは、標準IPアクセスリストと異なり、各リストを名前で識別するタイプしかありません。設定はipv6 access-list standardコマンドで行います。
以下では、標準IPv6アクセスリストの作成方法について解説します。
標準IPv6アクセスリストを使って経路エントリーの分類・識別や制御を行う方法については、「IP」の「経路制御(フィルタリング)」をご覧ください(「IP」の章ですが、共通のコマンドが多いため同章ではIPv6の経路フィルタリングについても触れています)。
名前付き標準IPv6アクセスリスト
名前で識別するタイプの標準IPv6アクセスリストを作成するには、ipv6 access-list standardコマンドを使います。名前付き標準IPv6アクセスリストでは、通常始点IPv6アドレスに対してのみマッチングを行います。このとき、マスク長(ANDマスクともいう)を使うことで、柔軟なアドレス指定が可能です。次にいくつか例を示します。
- マルチキャストグループアドレス「ff1e::d017」を拒否し、その他は許可する。
awplus(config)# ipv6 access-list standard gb deny ff1e::d017/128 awplus(config)# ipv6 access-list standard gb permit any
- マルチキャストグループアドレス「ff1e::bf:109f」と「ff1e::bf:110e」だけを許可する。
awplus(config)# ipv6 access-list standard gj permit ff1e::bf:109f/128 awplus(config)# ipv6 access-list standard gj permit ff1e::bf:110e/128
ハードウェアアクセスリスト
ハードウェアアクセスリストは、本製品のスイッチングチップ(ASIC)でパケットフィルタリングやトラフィック分類を行うためのアクセスリストです。ハードウェアアクセスリストでは、パケットヘッダー内の各種フィールドを検査してパケットを分類し、分類したパケットに対しては、許可、破棄だけでなく、パケットのコピーをミラーポートから出力するなどの各種処理を行うことができます。
ハードウェアアクセスリストは、これまで説明してきた他のアクセスリストとは違って、エントリーを1つしか持てません。すなわち、ハードウェアアクセスリストは「リスト」という名を持ってはいますが、実際にはリストではなく単一のエントリーということになります。したがって、ハードウェアアクセスリストには、他のアクセスリストにある「暗黙のdenyエントリー」は存在しません。
ハードウェアアクセスリストを用いてトラフィックの制御を行うときは、複数のハードウェアアクセスリスト(つまりエントリー)をスイッチポート(インターフェース・ハードウェアパケットフィルター)やスイッチ全体(グローバル・ハードウェアパケットフィルター)、あるいは、ポリシーマップ(QoSポリシー)に順序立てて関連付けることで、実際のリストを構成します。
ハードウェアアクセスリストには、IPヘッダー、IPv6ヘッダー以降をマッチング対象にするものと、Ethernetヘッダーだけをマッチング対象にするものがあり、それぞれ以下のコマンドで設定を行います。
- IPヘッダー以降を見るもの: access-list(hardware ip)コマンド
- IPv6ヘッダー以降を見るもの: ipv6 access-list(list)コマンド、ipv6 access-list(seq entry)コマンド
- Ethernetヘッダーだけを見るもの: access-list(hardware mac)コマンド
これらは使用できる分類条件が異なるだけで、トラフィックを制御する各機能においてはどちらもほぼ同じように、混在して使用できます。
以下では、ハードウェアアクセスリストを用いてトラフィックを分類する方法について解説します。
なお、ハードウェアアクセスリストを使って経路エントリーの分類・識別や制御を行うことはできません。
ハードウェアIPアクセスリスト
ハードウェアIPアクセスリストを作成するには、access-list(hardware ip)コマンドを使います。ハードウェアIPアクセスリストでは、通常始点IPアドレスと終点IPアドレスに対してマッチングを行います。このとき、マスク長(ANDマスクともいう)やワイルドカードマスク(リバースマスクまたはORマスクともいう)を使うことで、柔軟なアドレス指定が可能です。また、TCP/UDPパケットに対しては終点・始点のポート番号を、ICMPパケットに対してはメッセージタイプを指定することもできます。次にいくつか例を示します。
- 192.168.10.100から192.168.10.1へのIPパケットを拒否する。
awplus(config)# access-list 3000 deny ip 192.168.10.100/32 192.168.10.1/32
- 192.168.10.1のTCP80番ポートへのアクセスを拒否する。
awplus(config)# access-list 3001 deny tcp any 192.168.10.1/32 eq 80
- 192.168.20.0/24から192.168.10.1へのPingを拒否する。
awplus(config)# access-list 3002 deny icmp 192.168.20.0/24 192.168.10.1/32 icmp-type 8
ハードウェアIPv6アクセスリスト
ハードウェアIPv6アクセスリストを作成するには、ipv6 access-list(list)コマンドとipv6 access-list(seq entry)コマンドを使います。ハードウェアIPv6アクセスリストでは、通常始点IPv6アドレスと終点IPv6アドレスに対してマッチングを行います。このとき、マスク長(ANDマスクともいう)やワイルドカードマスク(リバースマスクまたはORマスクともいう)を使うことで、柔軟なアドレス指定が可能です。また、TCP/UDPパケットに対しては終点・始点のポート番号を、ICMPv6パケットに対してはメッセージタイプを指定することもできます。次にいくつか例を示します。
- 2001:db8:10:10::100から2001:db8:10:10::1へのIPv6パケットを拒否する。
awplus(config)# ipv6 access-list deny100to1 awplus(config-ipv6-hw-acl)# deny ipv6 2001:db8:10:10::100/128 2001:db8:10:10::1/128
- 2001:db8:10:10::1のTCP80番ポートへのアクセスを拒否する。
awplus(config)# ipv6 access-list deny1tcp80 awplus(config-ipv6-hw-acl)# deny tcp any 2001:db8:10:10::1/128 eq 80
- 2001:db8:10:20::/64から2001:db8:10:10::1へのPingを拒否する。
awplus(config)# ipv6 access-list deny1ping awplus(config-ipv6-hw-acl)# deny icmp 2001:db8:10:20::/64 2001:db8:10:10::1/128 icmp-type 128
ハードウェアMACアクセスリスト
ハードウェアMACアクセスリストを作成するには、access-list(hardware mac)コマンドを使います。ハードウェアMACアクセスリストでは、送信元MACアドレスと宛先MACアドレスに対してマッチングを行います。このとき、ワイルドカードマスク(リバースマスクまたはORマスクともいう)を使うことで、柔軟なアドレス指定が可能です。次にいくつか例を示します。
- MACアドレス00-0a-79-34-0b-33からのパケットを拒否する。
awplus(config)# access-list 4000 deny 000a.7934.0b33 0000.0000.0000 any
- MACアドレス00-11-22-33-44-55から00-0a-79-34-0b-33へのパケットを拒否する。
awplus(config)# access-list 4001 deny 0011.2233.4455 0000.0000.0000 000a.7934.0b33 0000.0000.0000
DENYログ
DENYログはハードウェアアクセスリスト(ハードウェアIPアクセスリスト、ハードウェアIPv6アクセスリスト)で破棄されたパケットをログに記録する機能です。DENYログには以下の制限があります。
- プロトコルタイプ59(No Next Header)を持つIPv6パケットはログに記録されない(破棄のみ行われる)。
- アクセスリストのlogオプションではパケットフローごとにログを記録するが、同じポート番号を持つTCPとUDPのパケットは同じフローと認識される。
- ログに記録されるのはルーティングパケットのみ。スイッチングパケットはログに記録されない(破棄のみ行われる)。
DENYログ機能を使うための基本的な設定を以下に示します。
- DENYログ機能を有効にします。
awplus(config)# access-list hardware-deny-log - DENYエントリーの登録時にlogオプションを指定します。
これにより該当エントリーにマッチして破棄されたパケットがログに記録されるようになります。
awplus(config)# access-list 3000 deny tcp 192.168.100.0/24 any eq 22 log
DENYログはaccess-list hardware-deny-logコマンドの指定により、informationalレベルかwarningsレベルで出力されます。
informationalレベルに設定している場合は、初期設定ではbufferedログに記録されないためログレベルの変更が必要になります。
ログは次のような形式で記録されます。
2023 Apr 25 21:59:25 local6.warning awplus ulogd[898]: HW-DENY> IN=vlan100 OUT= MAC=e0:1a:ea:50:51:fc:00:00:11:11:22:22:08:00 SRC=192.168.1.100 DST=192.170.1.1 LEN=46 TOS=00 PREC=0x00 TTL=64 ID=0 PROTO=UDP SPT=63 DPT=63 LEN=26 MARK=0x20138900
ACLグループ
ハードウェアアクセスリスト(シーケンス番号対応)とハードウェアIPv6アクセスリスト(シーケンス番号対応)では、ACLグループという仕組みを使うことで、頻繁に使用するIPアドレスやTCP/UDPポート番号の指定をグループ化して再利用可能とし、設定全体の見通しをよくすることができます。たとえば、次のアクセスリスト「sample1」では、始点IPアドレス3つ、終点TCPポート5つの組み合わせをすべて網羅するために15個のエントリーを使用しています。
access-list hardware sample1 deny tcp 10.1.1.1/32 any eq 10001 deny tcp 10.1.1.1/32 any eq 20001 deny tcp 10.1.1.1/32 any eq 30001 deny tcp 10.1.1.1/32 any eq 40001 deny tcp 10.1.1.1/32 any eq 50001 deny tcp 10.2.2.2/32 any eq 10001 deny tcp 10.2.2.2/32 any eq 20001 deny tcp 10.2.2.2/32 any eq 30001 deny tcp 10.2.2.2/32 any eq 40001 deny tcp 10.2.2.2/32 any eq 50001 deny tcp 10.3.3.3/32 any eq 10001 deny tcp 10.3.3.3/32 any eq 20001 deny tcp 10.3.3.3/32 any eq 30001 deny tcp 10.3.3.3/32 any eq 40001 deny tcp 10.3.3.3/32 any eq 50001
一方、ACLグループを使用する場合は、あらかじめIPアドレスやTCP/UDPポート番号の指定だけをホストグループ、ポートグループという形で定義しておき、アクセスリストのエントリー作成時にはアドレスやポート番号の代わりにホストグループ名やポートグループ名を指定します。
前述のアクセスリスト「sample1」をACLグループを利用して書き換えると次の「sample2」のようになります。
acl-group ip address HOST_GROUP ip 10.1.1.1/32 ip 10.2.2.2/32 ip 10.3.3.3/32 acl-group ip port PORT_GROUP eq 10001 eq 20001 eq 30001 eq 40001 eq 50001 access-list hardware sample2 deny tcp host-group HOST_GROUP any port-group PORT_GROUP事前にIPアドレス(IPホストグループHOST_GROUP)とポート番号(ポートグループPORT_GROUP)を定義する必要はありますが、アクセスリスト本体(エントリー)の記述はわずか一行で済んでいます。
また、アクセスリストにホストを追加したり、対象ポートを追加・変更する場合にもACLグループは威力を発揮します。
たとえば、前記「sample1」「sample2」に拒否対象ホストとして10.4.4.4/32を追加する場合、ACLグループを使わないsample1では、次のように5つのエントリーを追加する必要があります。
awplus(config)# access-list hardware sample1 awplus(config-ip-hw-acl)# deny tcp 10.4.4.4/32 any eq 10001 awplus(config-ip-hw-acl)# deny tcp 10.4.4.4/32 any eq 20001 awplus(config-ip-hw-acl)# deny tcp 10.4.4.4/32 any eq 30001 awplus(config-ip-hw-acl)# deny tcp 10.4.4.4/32 any eq 40001 awplus(config-ip-hw-acl)# deny tcp 10.4.4.4/32 any eq 50001一方、ACLグループを利用しているsample2では、次のようにホストグループにIPアドレスを1つ追加するだけで、アクセスリスト本体(エントリー)は変更する必要がありません。
awplus(config)# acl-group ip address HOST_GROUP awplus(config-ip-host-group)# ip 10.4.4.4/32対象ポートの追加も同様にポートグループを編集するだけで済みます(ACLグループを利用しない場合はホストの数だけアクセスリストにエントリーを追加する必要があります)。
awplus(config)# acl-group ip port PORT_GROUP awplus(config-ip-port-group)# eq 60001
ACLグループには次の種類があります。それぞれ下記のコマンドで作成、利用が可能です。
- ポートグループ - acl-group ip portコマンドで名前を付け、acl-group ip port(entry)コマンドで具体的なポート番号の条件を指定
awplus(config)# acl-group ip port MX awplus(config-ip-port-group)# eq 25 awplus(config-ip-port-group)# eq 465 awplus(config-ip-port-group)# eq 587
下記アクセスリスト内で始点ポート、終点ポートを指定するときに使用可能(ポート指定箇所で「port-group NAME」とする)
- ハードウェアアクセスリスト(シーケンス番号対応) - access-list hardware(seq entry)
- ハードウェアIPv6アクセスリスト(シーケンス番号対応) - ipv6 access-list(seq entry)
- ハードウェアアクセスリスト(シーケンス番号対応) - access-list hardware(seq entry)
- IPホストグループ - acl-group ip addressコマンドで名前を付け、acl-group ip address(entry)コマンドで具体的なアドレスを指定
awplus(config)# acl-group ip address BANNED awplus(config-ip-host-group)# ip 192.168.1.58 awplus(config-ip-host-group)# ip 10.133.2.0/24
下記アクセスリスト内で始点IPアドレス、終点IPアドレスを指定するときに使用可能(アドレス指定箇所で「host-group NAME」とする)
- ハードウェアアクセスリスト(シーケンス番号対応) - access-list hardware(seq entry)
- ハードウェアアクセスリスト(シーケンス番号対応) - access-list hardware(seq entry)
- IPv6ホストグループ - acl-group ipv6 addressコマンドで名前を付け、acl-group ipv6 address(entry)コマンドで具体的なアドレスを指定
awplus(config)# acl-group ipv6 address SERVERS awplus(config-ipv6-host-group)# ipv6 2001:db8:10:10::5 awplus(config-ipv6-host-group)# ipv6 2001:db8:20:10::8
下記アクセスリスト内で始点IPv6アドレス、終点IPv6アドレスを指定するときに使用可能(アドレス指定箇所で「host-group NAME」とする)
- ハードウェアIPv6アクセスリスト(シーケンス番号対応) - ipv6 access-list(seq entry)
- ハードウェアIPv6アクセスリスト(シーケンス番号対応) - ipv6 access-list(seq entry)
ハードウェアアクセスリスト(シーケンス番号対応)、ハードウェアIPv6アクセスリスト(シーケンス番号対応)のエントリーを作成するとき、IP/IPv6アドレスやTCP/UDPポート番号を直接指定する代わりに、IP/IPv6ホストグループやポートグループを指定することができます。
- ハードウェアアクセスリスト(access-list hardware(seq entry))では、IPアドレス指定部分(SRCIP、DSTIP)にIPホストグループ名を、TCP/UDPポート番号指定部分(SRCPORT、DSTPORT)にポートグループ名を、それぞれ「host-group NAME」、「port-group NAME」の形式で指定できます(NAMEはグループ名)。
awplus(config)# access-list hardware MYACL awplus(config-ip-hw-acl)# deny tcp host-group IPHOST0 any port-group PORT0
- IPv6ハードウェアアクセスリスト(ipv6 access-list(seq entry))では、IPv6アドレス指定部分(SRCIP、DSTIP)にIPv6ホストグループ名を、TCP/UDPポート番号指定部分(SRCPORT、DSTPORT)にポートグループ名を、それぞれ「host-group NAME」、「port-group NAME」の形式で指定できます(NAMEはグループ名)。
awplus(config)# ipv6 access-list MYACLV6 awplus(config-ipv6-hw-acl)# deny udp host-group IPV6HOST0 any port-group PORT0
ACLグループは、それを利用するアクセスリストが適用された状態でも、内容の変更(アドレス、ポート指定の追加、削除など)が可能です。
ただし、使用中のACLグループを削除することはできません。ACLグループを削除する場合は、あらかじめ使用中のアクセスリストから該当ACLグループを外すか、アクセスリスト自体を削除しておく必要があります。
ACLグループを利用した場合、アクセスリストのエントリー数はACLグループを使用しない場合に比べて少なくなりますが、フィルタリング用内部領域の消費量は利用するグループ内のエントリー数(IPアドレスやポート指定の数)をすべてかけたものになるため、ACLグループを使用しない場合と基本的に変わりません。
たとえば、次のACLグループが定義されていると仮定した場合、
- IPホストグループH1 - IPアドレス指定10個
- IPホストグループH2 - IPアドレス指定3個
- ポートグループP1 - ポート指定2個
- ポートグループP2 - ポート指定5個
次のアクセスリストエントリーは 10 (H1) × 5 (P2) = 50 個分のエントリーを使用します。
deny tcp host-group H1 any port-group P2
また次の例では3つACLグループを使用しているため、10 (H1) × 3 (H2) × 5 (P2) = 150 個分のエントリーを使用します。
deny tcp host-group H1 host-group H2 port-group P2
極端な例ですが、利用可能なすべての場所でACLグループを指定した場合、4つのACLグループを使用することになり、この例では 10 (H1) × 2 (P1) × 3 (H2) × 5 (P2) = 300 個分のエントリーを使用します。
deny tcp host-group H1 port-group P1 host-group H2 port-group P2
ACLグループを含むアクセスエントリーの適用によってフィルタリング用内部領域が足りなくなる場合、該当エントリーは適用されずにエラーとなります。
ACLグループの情報は、show acl-group ip port、show acl-group ip address、show acl-group ipv6 addressコマンドで確認できます。
アクセスリストの使用
作成したアクセスリストは、以下の機能/コマンドから使用できます。標準IPアクセスリスト
標準IPアクセスリストを利用したアクセス制御関連の機能としては、以下のものがあります。- SNMPコミュニティーへのアクセス制御:snmp-server communityコマンド
- IPv4による製品へのリモートアクセス(Telnet/SSH)の制御:vty access-classコマンド
- PIM-SM/PIM-DMにおける隣接関係の制御:ip pim neighbor-filterコマンド
- IGMPにおけるグループ参加のフィルタリング:ip igmp access-groupコマンド
また、各種アドレスの指定に標準IPアクセスリストを使う機能としては、以下のものがあります。
- IGMP即時脱退機能の対象グループ指定:ip igmp immediate-leaveコマンド
- IGMPにおける登録可能グループ数制限の除外対象指定:ip igmp limitコマンド、ip igmp limitコマンド
- PIM-SM Registerメッセージのチェックサム計算方式変更の対象グループ指定:ip pim cisco-register-checksumコマンド
- PIM-SMにおけるランデブーポイント(静的設定)の担当グループ指定:ip pim rp-addressコマンド
- PIM-SMにおけるランデブーポイント(動的設定)の担当グループ指定:ip pim rp-candidateコマンド
SNMPの詳細については、「運用・管理」の「SNMP」をご覧ください。
Telnet/SSHの詳細については、「運用・管理」の「Telnet」、「運用・管理」の「Secure Shell」をご覧ください。
PIM-SM/PIM-DMの詳細については、「IPマルチキャスト」の「PIM」をご覧ください。
IGMPの詳細については、「IPマルチキャスト」の「IGMP」をご覧ください。
拡張IPアクセスリスト
拡張IPアクセスリストを利用したアクセス制御関連の機能としては、以下のものがあります。- PIM-SMにおけるRegisterメッセージのフィルタリング:ip pim accept-register listコマンド
- MSDPにおけるSA(Source-Active)メッセージのフィルタリング:ip msdp peer rp-filterコマンド、ip msdp peer sg-filterコマンド
PIM-SMの詳細については、「IPマルチキャスト」の「PIM」をご覧ください。
MSDPの詳細については、「IPマルチキャスト」の「MSDP」をご覧ください。
標準IPv6アクセスリスト
標準IPv6アクセスリストを利用したアクセス制御関連の機能としては、以下のものがあります。- IPv6による製品へのリモートアクセス(Telnet/SSH)の制御:vty ipv6 access-classコマンド
- MLD/MLD Snoopingにおけるグループ参加のフィルタリング:ipv6 mld access-groupコマンド
- PIM-SMv6におけるRegisterメッセージのフィルタリング:ipv6 pim accept-register listコマンド
また、各種アドレスの指定に標準IPv6アクセスリストを使う機能としては、以下のものがあります。
- MLD/MLD Snoopingにおける登録可能グループ数制限の除外対象指定:ipv6 mld limitコマンド、ipv6 mld limitコマンド
- MLD即時脱退機能の対象グループ指定:ipv6 mld immediate-leaveコマンド
- PIM-SMv6 Registerメッセージのチェックサム計算方式変更の対象グループ指定:ipv6 pim cisco-register-checksumコマンド
- PIM-SMv6におけるランデブーポイント(静的設定)の担当グループ指定:ipv6 pim rp-addressコマンド
- PIM-SMv6におけるランデブーポイント(動的設定)の担当グループ指定:ipv6 pim rp-candidateコマンド
Telnet/SSHの詳細については、「運用・管理」の「Telnet」、「運用・管理」の「Secure Shell」をご覧ください。
PIM-SMv6の詳細については、「IPv6マルチキャスト」の「PIM」をご覧ください。
MLD/MLD Snoopingの詳細については、「IPv6マルチキャスト」の「MLD」、「IPv6マルチキャスト」の「MLD Snooping」をご覧ください。
ハードウェアアクセスリスト
ハードウェアアクセスリストは、次の機能で使用します。- 受信スイッチポートにおけるパケットフィルタリング(インターフェース・ハードウェアパケットフィルター):access-groupコマンド(インターフェースモード)、ipv6 traffic-filterコマンド(インターフェースモード)
- すべてのパケットを対象とするパケットフィルタリング(グローバル・ハードウェアパケットフィルター):access-groupコマンド(グローバルコンフィグモード)、ipv6 traffic-filterコマンド(グローバルコンフィグモード)
- 受信スイッチポートにおけるトラフィック分類(Quality of Service):match access-groupコマンド
ハードウェアパケットフィルターの詳細については、「トラフィック制御」の「ハードウェアパケットフィルター」をご覧ください。
Quality of Service(QoS)の詳細については、「トラフィック制御」の「Quality of Service」をご覧ください。