標準アクセスリスト設定
前回の記事では標準アクセスリストの概要とワイルドカードマスクについて紹介しました。
今回は、標準IPアクセスリストを作成し、それをインターフェイスに適用させ、パケットフィルタリングを実現させるまでの一連の手順を紹介します。
標準IPアクセスリストの作成
- 標準IPアクセスリスト書式
- (config)#access-list [番号(1~99)] [許可のステートメント(permit or deny)] [送信元IPアドレス] [ワイルドカードマスク]
access-listコマンドにより特定のトラフィックを抽出する条件をひとつずつ設定していきます。
ひとつ例を挙げてみます。
RouterA(config)#access-list 1 deny 192.168.0.10 0.0.0.0 RouterA(config)#access-list 1 permit 192.168.0.0 0.0.0.255
上記は「192.168.0.10」のIPアドレスが割り当てられたPCからのトラフィックを拒否し、それ以外は許可とするような標準IPアクセスリストを作成しています。
アクセスリストを作成するとき、コマンドの順番に注意する必要があります。
上記では、まず1行目のコマンドで「192.168.0.10」のIPアドレスが割り当てられたPCからのトラフィックを拒否とするというルールを作成しています。
そして2行目のコマンドで「192.168.0.0~192.168.0.255」のトラフィックを許可しています。
この場合の処理の流れは、まず1行目のルールに適合するかを判断し、もし適合したらトラフィックを拒否します。
適合しなければ、2行目のルールを判断することになります。
もし、2行目のルールを先に作成してしまうと、「192.168.0.10」のトラフィックもそのまま許可してしまうことになるため、アクセスリストの意味をなさなくなってしまいます。
このとき、ワイルドカードマスクを「0.0.0.0」と記述していますが、hostキーワードを使って記述することもできます。
RouterA(config)#access-list 1 deny host 192.168.0.10 RouterA(config)#access-list 1 permit 192.168.0.0 0.0.0.255
他にもワイルドカードマスクの特殊な書き方として、「255.255.255.255」(すべてのアドレス)をanyキーワードで表す方法があります。例えば、全てのトラフィックを許可する標準IPアクセスリストは次のように作成することができます。
RouterA(config)#access-list 2 permit 0.0.0.0 255.255.255.255
RouterA(config)#access-list 2 permit any
上記2つはまったく同じ意味となります。
※どのリストにも一致しなかった場合、そのトラフィックは拒否されます。これを「暗黙の拒否」と言います。
標準IPアクセスリストの適用
作成したアクセスリストをインターフェイスに適用することで、パケットフィルタリングとして機能するようになります。
インターフェイスへはインバウンド、アウトバウンドのどちらかに適用します。
両者の違いはアクセスリストによるパケット通過・拒否の判定を実施するタイミングです。
インバウンドに適用した場合は、ルータがパケットを受信したタイミングで判定を行います
アウトバウンドに適用した場合は、ルータがパケットを送信するタイミングで判定を行います。
パケットを送信するタイミングなので、すでにルーティング処理は完了しているということに着目してください。
インターフェイスへの適用はインターフェイスコンフィギュレーションモードからip access-groupコマンドを実行することで行えます。
- ip access-groupコマンド書式
- (config-if)# ip access-group [ACL番号] [in | out]
RouterA(config)#interface ethernet 0 RouterA(config-if)#ip access-group 1 in
上記では先ほど作成した標準IPアクセスリスト1をehternet0インターフェイスのインバウンドに適用させています。
以上で、標準IPアクセスリストを使用したパケットフィルタリングの設定は完了です。
この構成だと、「PC A」から「PC Z」への通信は可能で、「PC B」から「PC Z」への通信はできません。
標準IPアクセスリストの確認
ルータに作成されている標準IPアクセスリストの確認はshow ip access-listsコマンドを使用します。
RouterA#show ip access-lists Standard IP access list 1 10 deny 192.168.0.10 20 permit 192.168.0.0, wildcard bits 0.0.0.255 Standard IP access list 2 10 permit any
show ip access-listsコマンドは標準IPアクセスリストを確認するコマンドであり、どのインターフェイスに適用されているかまではわかりません。
インターフェイスに適用している標準IPアクセスリストを確認するにはshow ip interfaceコマンドを使用します。
RouterA#show ip interface ethernet 0 Ethernet0 is up, line protocol is down Internet address is 192.168.0.100/24 Broadcast address is 255.255.255.255 Address determined by non-volatile memory MTU is 1500 bytes Helper address is not set Directed broadcast forwarding is disabled Outgoing access list is not set Inbound access list is 1 Proxy ARP is enabled Local Proxy ARP is disabled Security level is default ~ 省略 ~
これらはshow running-configコマンドでも確認できます。