◆ アクセスコントロールリストとは
アクセスコントロールリストとは、通信アクセスを制御するためのリストのことです。一般的には略して
ACLと呼ばれています。ネットワーク管理者は通信要件に従ってACL(Access Control List)を定義して
ルータを通過するパケットに対して、通過を許可するパケット、通過を拒否するパケットを決められます。
ルータに着信したパケットは、ACLの1行目から順番に条件に合致するかどうかを確認していき、最初に
合致した条件に従ってパケット通過が「許可」または「拒否」されます。条件に合致した後は以降のACL
の条件は適用されないので、ACLではその条件をどのような順番にし作成していくのかが重要となります。
また、ACLには暗黙の deny any というルールがあります。暗黙の deny any は作成したACLの最終行に
自動で追加される全てのパケットを拒否するというACLのことです。※この暗黙のdenyは表示されません。
上図では2行のACLを適用しています。3行目は設定していなくても自動的に暗黙のdenyが追加されます。
このACLをルータ(R1)のインターフェース(G0/1)のインバウンド(IN)で適用しています。つまり、
このACLは、R1のGi0/1に着信してくるパケットを対象にしてフィルタリングしていることを意味します。
ホストAからの着信パケットは送信元アドレスが「192.168.0.1」のため、ACL1行目に合致して拒否され
ホストBからの着信パケットは送信元アドレスが「192.168.0.2」のため、ACL1行目には合致しないので
ACLの2行目に合致して許可されます。ホストCからの着信パケットは、送信元アドレスが「192.168.0.3」
のため、ACLの1行目、2行目には合致せず、表示されない3行目の暗黙のdeny anyに合致し拒否されます。
◆ 標準ACLと拡張ACL
ACLには、標準ACLと拡張ACLの大きく2つの種類があります。標準ACLは、送信元IPアドレスをチェック
するACLです。拡張ACLは送信元IPアドレス、宛先IPアドレス、プロトコル番号、送信元ポート番号、宛先
ポート番号をチェックするACLです。柔軟で細かい制御ができる点で拡張ACLの方がよく使用されています。
◆ 標準ACLの制御例
○ 送信元IPアドレス「192.168.0.1」からのパケットを許可、拒否
○ 送信元IPアドレス「192.168.0.0/24」のネットワークからのパケットを許可、拒否
○ 全ての送信元IPアドレスからのパケットを許可、拒否
◆ 拡張ACLの制御例
○ 送信元IPアドレス「192.168.0.1」から宛先IPアドレス「10.1.1.1」へのパケットを許可、拒否
○ 送信元IPアドレス「192.168.0.0/24」から宛先IPアドレス「10.1.1.0/24」へのパケットを許可、拒否
○ 全ての送信元IPアドレスから宛先IPアドレス「10.1.1.0/24」へのパケットを許可、拒否
○ 送信元IPアドレス「192.168.0.1」から宛先IP「10.1.1.1」へWebアクセス(ポート80)を許可、拒否
○ 送信元IPアドレス「192.168.0.1」から宛先IP「10.1.1.1」へICMP通信(プロトコル番号1)を許可、拒否
◆ ACLの適用方向 ( インバウンドとアウトバウンド )
ACLは、インバウンド(IN)で適用するか、アウトバウンド(OUT)で適用するかで動作が異なります。
◆ インバウンド(IN)で適用した場合
1. インターフェースに着信してくるパケットにACLが適用される。
2. ACLで許可された場合はパケットがルーティングされる。拒否された場合はパケットは破棄される。
ACLのフィルタリングでパケットが破棄された場合、送信元デバイスにICMP Destination net Unreachableメッセージが返されます。
◆ アウトバウンド(OUT)で適用した場合
1. インターフェースに着信してくるパケットがルーティングテーブルに従ってルーティングされる。
2. インターフェースから発信していくパケットにACLが適用される
CCNAなどの資格試験のために初めてACLを学習する人にとっては、最初は理解して設定するのは難しい
かもしれませんが、実際に設定していくとだんだん慣れて理解できるようになってきます。かくいう私も
最初は非効率なACLの条件文を設定することもありましたが、経験を積んでいくことで上達していきました。
|