CCNAでACLを学習していると、「ワイルドカードマスク」という聞き慣れない言葉が登場します。
サブネットマスクと数字がよく似ているため、
- 何が違うの?
- どうやって求めるの?
- ACLではなぜ必要なの?
と混乱しやすいポイントです。
この記事では、ワイルドカードマスクの基本とサブネットマスクとの違いを初心者向けに解説します。
ワイルドカードマスクとは?
ワイルドカードマスクとは、ACLでIPアドレスを判定するために使う値です。
サブネットマスクを反転した数字になっていることが多く、
例えば
| サブネットマスク | ワイルドカードマスク |
|---|---|
| 255.255.255.0 | 0.0.0.255 |
| 255.255.0.0 | 0.0.255.255 |
| 255.0.0.0 | 0.255.255.255 |
となります。
CCNAではこの対応を覚えておくと設定がスムーズです。
サブネットマスクとの違い
見た目は似ていますが、役割は異なります。
サブネットマスク
IPアドレスの
- ネットワーク部
- ホスト部
を区別するために使用します。
つまり、
「どこまでがネットワークなのか」
を表す値です。
ワイルドカードマスク
ACLで
- 比較する部分
- 比較しない部分
を指定するために使用します。
つまり、
「どの部分をチェックするか」
を表す値です。
0と1の意味
ワイルドカードマスクでは、
0と1の意味が重要です。
| 値 | 意味 |
|---|---|
| 0 | 一致させる(チェックする) |
| 1 | 一致しなくてもよい(無視する) |
ワイルドカードマスクは2進数(0と1)で考えます。
例えば
0.0.0.255
を2進数にすると
00000000.00000000.00000000.11111111
になる。
つまり
00000000 → 全部0(全部チェック)
11111111 → 全部1(全部無視)
でも実際に設定するときは
0.0.0.255
と10進数で書くから、
「255ってどこから出てきた!?」となります。
が0と1は2進数で考えた場合のことです。
例えば
255.255.255.0
(サブネットマスク)
を反転すると
11111111 → 00000000
11111111 → 00000000
11111111 → 00000000
00000000 → 11111111
つまり
00000000.00000000.00000000.11111111
これを10進数に戻すと
0.0.0.255
になる。
だから実際には
0 = チェック
255 = 無視
と覚えてしまって大丈夫です。
10進数で考える
例えば
192.168.1.0 0.0.0.255
の場合、
IPアドレス
192.168.1.0
ワイルドカードマスク
0.0.0.255
をセットで見ています。
最初の3つ
192.168.1
は必ず一致し、
最後の
0~255
は何番でもOKという意味になります。
つまり、
192.168.1.1
192.168.1.50
192.168.1.100
192.168.1.254
はすべて一致します。
逆に
192.168.2.5
だったら?
192 ← 同じ
168 ← 同じ
2 ← 違う!!
5 ← 気にしない
3つ目が違うのでNGです。
ACLでの使用例
例えば、
access-list 1 permit 192.168.1.0 0.0.0.255
と設定すると、
192.168.1.0/24のネットワークからの通信を許可できます。
ここで使われている
0.0.0.255
がワイルドカードマスクです。
ACLではこの組み合わせを頻繁に使用するため、覚えておくと便利です。
覚え方のコツ
初心者におすすめなのは、
「サブネットマスクを反転する」と覚えることです。
例えば
255 → 0
0 → 255
なので、
255.255.255.0
なら
0.0.0.255
になります。
試験でもよく問われるので、まずはこの代表的な組み合わせを覚えておきましょう。
まとめ
ワイルドカードマスクは、ACLで通信を判定するために使われます。
今回のポイントは次の4つです。
- ワイルドカードマスクはACLで使用する
- サブネットマスクとは役割が異なる
- 0は「一致する」
- 1は「一致しなくてもよい(無視する)」
最初は少し分かりにくいですが、「サブネットマスクを反転したもの」と考えると理解しやすくなります。
次回はいよいよPacket Tracerを使って、実際にACLを設定してみましょう。


コメント