3. コマンドラインインタフェース
3.8 ACL(Access Control Lists)
3.8.1 IP ACL コマンド
コマンド 機能 モード ページ
access-list IP IP ACLの作成とconfiguration modeへの移行 GC P144
permit,deny ソースIPアドレスが一致するパケットのフィルタリ
ング
STD-ACL
P145
permit,deny
ソース又はディスティネーションIPアドレス、プロ トコルタイプ、TCP/UDPポート番号に基づくフィル タリング
EXT-ACL
P146
show ip access-list
設定済みIP ACLのルールの表示 PE P147
ip access-group IP ACLへのポートの追加 IC P148
show ip access-group IP ACLに指定したポートの表示 PE P149
ACL(Access Control Lists)
access-list ip
IP ACLを追加し、スタンダード又は拡張IP ACLの設定モードに移行します。"no"を前に置くこ
とで特定のACLを削除します。
文法
[no] access-list ip {standard | extended}
acl_name
• standard ― ソースIPアドレスに基づくフィルタリングを行うACL
• extended ― ソース又はディスティネーションIPアドレス、プロトコルタイプ、TCP/
UDPポート番号に基づくフィルタリングを行うACL
•
acl_name
― ACL名(最大16文字)初期設定
なしコマンドモード
Global Configurationコマンド解説
• 新しいACLを作成した場合や、既存のACLの設定モードに移行した場合、"permit"又
は"deny"コマンドを使用し、新しいルールを追加します。ACLを作成するには、最低
1つのルールを設定する必要があります。
• ルールを削除するには"no permit"又は"no deny"コマンドに続けて設定済みのルール を入力します。
• 1つのACLには最大32個のルールが設定可能です。
例
関連するコマンド
permit, deny (P145) ip access-group (P148) show ip access-list (P147)Console(config)#access-list ip standard david Console(config-std-acl)#
ACL(Access Control Lists)
permit,deny(Standard ACL)
スタンダードIP ACLルールを追加します。本ルールでは特定のソースIPアドレスからのパ ケットへのフィルタリングが行えます。"no"を前に置くことでルールを削除します。
文法
[no] {permit | deny} {any |
source bitmask
| hostsource
}• any ― すべてのIPアドレス
•
source
― ソースIPアドレス•
bitmask
― 一致するアドレスビットを表す10進数値• host ― 特定のIPアドレスを指定
初期設定
なしコマンドモード
Standard ACLコマンド解説
• 新しいルールはリストの最後に追加されます。
• アドレスビットマスクはサブネットマスクと似ており、4つの0-255の値で表示され、
それぞれがピリオド( . )により分割されています。2進数のビットが"1"の場合、一致 するビットであり、"0"の場合、拒否するビットとなります。ビットマスクはビット毎 に特定のIPアドレスと共に使用し、ACLが指定した入力IPパケットのアドレスと比 較されます。
例
本例では、10.1.1.21のソースアドレスへの許可(permit)ルールとビットマスクを使用した
168.92.16.x-168.92.31.xまでのソースアドレスへの許可(permit)ルールを設定しています。
関連するコマンド access-list ip (P144)
Console(config-std-acl)#permit host 10.1.1.21
Console(config-std-acl)#permit 168.92.16.0 255.255.240.0 Console(config-std-acl)#
ACL(Access Control Lists)
permit,deny(Extended ACL)
拡張IP ACLへのルールの追加を行います。ソース又はディスティネーションIPアドレス、
プロトコルタイプ、TCP/UDPポート番号、TCPコントロールコードに基づくフィルタリン グを行います。"no"を前に置くことでルールの削除を行います。
文法
[no] {permit | deny}
[protocol-number
| udp]{any |
source address-bitmask
| hostsource
}{any |
destination address-bitmask
| hostdestination
} [precedenceprecedence
] [tostos
] [dscpdscp
][source-port
sport
[bitmask
]] [destination-portdport
[port-bitmask
]][no] {permit | deny} tcp
{any |
source address-bitmask
| hostsource
}{any |
destination address-bitmask
| hostdestination
} [precedenceprecedence
] [tostos
] [dscpdscp
][source-port sport [
bitmask
]] [destination-portdport
[port-bitmask
]][control-flag
control-flags flag-bitmask
]•
protocol-number
― 特定のプロトコル番号(範囲:0-255)•
source
― ソースIPアドレス•
destination
― ディスティネーションIPアドレス•
address-bitmask
― アドレスビットマスク• host ― 特定のIPアドレスの指定
•
precedence
― Precedenceレベル(範囲:0-7)•
tos
― ToSレベル(範囲:0-7)•
dscp
― DSCPプライオリティレベル(0-63)•
sport
― プロトコル* ソースポート番号(範囲:0-65535)•
dscp
― DSCPプライオリティレベル(範囲:0-63)•
port-bitmask
―ポートビットマスク•
control-flags
―TCPヘッダの14バイト内フラッグビットを指定する10進数 (範囲:0-63)•
flag-bitmask
―フラッグビットマスク初期設定
ACL(Access Control Lists)
コマンド解説
• 新しいルールはリストの最後に追加されます。
• アドレスビットマスクはサブネットマスクと似ており、4つの0-255の値で表示され、
それぞれがピリオド( . )により分割されています。2進数のビットが"1"の場合、一致 するビットであり、"0"の場合、拒否するビットとなります。ビットマスクはビット毎 に特定のIPアドレスと共に使用し、ACLが指定した入力IPパケットのアドレスと比 較されます。
例
本例では、ソースアドレスがサブネット10.7.1.x内の場合、すべての入力パケットを許可し ます。
本例では、ディスティネーションTCPポート番号80のクラスCアドレス192.168.1.0か らすべてのディスティネーションアドレスへのTCPパケットを許可します。
関連するコマンド
access-list ip (P144)show ip access-list
設定済みのIP ACLのルールを表示します。
文法
show ip access-list {standard | extended} [
acl_name
]• standard ― スタンダードIP ACL
• extended ― 拡張IP ACL
•
acl_name
― ACL名(4文字以上15文字以内)コマンドモード Privileged Exec
例
Console(config-ext-acl)#permit 10.7.1.1 255.255.255.0 any Console(config-ext-acl)#
Console(config-ext-acl)#permit 192.168.1.0 255.255.255.0 any destination-port 80
Console(config-ext-acl)##
ACL(Access Control Lists)
ip access-group
IP ACLへのポートのバインドを行います。"no"を前に置くことでポートを外します。
文法
[no] ip access-group
acl_name
in•
acl_name
― (4文字以上15文字以内)• in ― 入力パケットへのリスト
初期設定
なし
コマンドモード
Interface Configuration (Ethernet)
コマンド解説
• 1つのポートは1つのACLのみ設定可能です。
• ポートがすでにACLを設定済みで、他のACLをバインドした場合、新しくバインド したACLが有効となります。
例
関連するコマンド
show ip access-list (P147)
Console(config)#int eth 1/25
Console(config-if)#ip access-group david in Console(config-if)#
ACL(Access Control Lists)
show ip access-group
IP ACLのポートの設定を表示します。
コマンドモード
Privileged Exec 例関連するコマンド
ip access-group (P148)Console#show ip access-group Interface ethernet 1/25 IP access-list david in Console#