◆ ワイルドカードマスクとは
Cisco IOSではACLの条件文のなかでIPアドレスの範囲を指定する時に、ワイルドカードマスクを使用します。
ワイルドカードマスクは、指定したIPアドレスのどの部分を読み取る必要があるのかを指定するための情報。
ワイルドカードマスクは32ビットの数値で1オクテットごとにドット( . )で区切り10進数表記。ルールは2つ。
1. ワイルドカードマスクの「0」は、指定したIPアドレスのビットをチェック (合致確認) することを示す。
2. ワイルドカードマスクの「1」は、指定したIPアドレスのビットをチェックしないことを示す。
具体的に確認してみましょう。例えばACLの条件文で「172.16.1.0/24」のネットワークを指定したい場合は
ACLの条件文では「172.16.1.0 0.0.0.255」と入力。「172.16.1.」まではチェックをしたいので、ワイルド
カードマスクではその部分を「0.0.0.」として、第4オクテットはチェックしたくはないので、ワイルドカード
マスクのビットを全て 1 にします。第4オクテットのビットを全て「1」にすると10進数では 255 になります。
もう1つ例を見てみましょう。ACLの条件文で「172.16.0.0/16」のネットワークを示したい場合、ACLは
「172.16.0.0 0.0.255.255」と入力。これによって「172.16.0.0 〜 172.16.255.255」範囲を示します。
サブネットマスクでは、ネットワーク部を「1」、ホスト部を「0」のビットで表現しています。したがって
サブネットマスクを示すビットの「1」と「0」を反転すると、そのサブネットアドレスを指定するワイルド
カードマスクになります。つまり、ワイルドカードマスクの意味が分からなくても、特定のネットワークを
指定したいACLの条件文は「255.255.255.255 - サブネットマスク」でワイルドカードマスクが分かります。
◆ ワイルドカードマスク - 特定のホストの指定
先ほどは、ワイルドカードマスクで1つのネットワークを指定しましたが、今度はワイルドカードマスクで
1つのホストを指定する設定例を見ます。ACLの条件文で「172.16.1.1」の特定ホストを指定するためには
ACLの条件文では「 172.16.1.1 0.0.0.0 」と入力すれば良いことが、先ほどの説明から分かると思います。
※「172.16.1.1 0.0.0.0」の省略形としてhostキーワードを指定し「host 172.16.1.1」とも入力できます。
◆ ワイルドカードマスク - 全てのIPアドレスの指定
全てのIPアドレスを指定するためには「全てのビットをチェックしない」とすればいいので、ワイルドカード
マスクのビットを全て「1」にすればOKなので、ワイルドカードマスクは「255.255.255.255」となります。
この際にどのようなIPアドレスを指定しても問題ないですが、通常はIPアドレスに「0.0.0.0」を指定すること
から全てのIPアドレスを指定するためには「0.0.0.0 255.255.255.255」とします。この省略形は any です。
◆ ワイルドカードマスク - 特定の範囲を指定したい場合
例えば「172.16.0.0/24」から「172.16.3.0/24」の4つのサブネットを指定する条件文を入力したい場合も
「255.255.255.255 - サブネットマスク」という数式で、ワイルドカードマスクを算出することができます。
一般的には「172.16.0.0/24」から「172.16.3.0/24」の4つのサブネットを指定する条件文を設定する場合
「172.16.0.0 0.0.3.255」と入力するのではなく、分かりやすさという点で以下4行を設定した方が良いです。
1行目 172.16.0.0 0.0.0.255
2行目 172.16.1.0 0.0.0.255
3行目 172.16.2.0 0.0.0.255
4行目 172.16.3.0 0.0.0.255
確かにスマートな書き方は「172.16.0.0 0.0.3.255 」かもしれませんが、実際のネットワークエンジニアの
仕事では「分かりやすさ、運用のしやすさ」という点に重きを置くことが多いことも認識しておきましょう。
|