はじめに
ネットワーク機器の設定やアクセス制御リスト(ACL)を扱う際、ワイルドカードマスクに遭遇することがあります。
サブネットマスクとは異なるこの概念は、混乱の元となることが少なくありません。
本記事では、IPアドレスの基本を振り返りながら、ワイルドカードマスクの仕組みと実践的な使用方法について解説します。
ACL設定などで実務で必要となる知識を身につけることを目標とします。
IPアドレスの基礎知識
IPアドレスとは
IPアドレスは、ネットワーク上の機器を識別するための32ビットの数値です。
通常は、8ビットずつ4つのオクテットに分けて、10進数で表記します。
192.168.1.100 | 第1オクテット | 第2オクテット | 第3オクテット | 第4オクテット |
---|---|---|---|---|
10進数 | 192 | 168 | 1 | 100 |
2進数 | 11000000 | 10101000 | 00000001 | 01100100 |
サブネットマスクの役割
サブネットマスクは、どの部分がネットワーク部で、どの部分がホスト部かを示します。
IPアドレス | 192.168.1.100 |
---|---|
サブネットマスク | 255.255.255.0(/24) |
ネットワーク部 | 192.168.1.(24bit) |
ホスト部 | 100(8bit) |
ワイルドカードマスクとは
ワイルドカードマスクはIPアドレス範囲を指定する際に使用される32ビットのマスクです。
主にACLやルーティングプロトコルなどの設定で使用されます。
サブネットマスクとの違い
ワイルドカードマスクは、サブネットマスクとは逆の考え方をします。
- サブネットマスク:1のビットが「固定(一致必須)」、0のビットが「可変」
- ワイルドカードマスク:0のビットが「固定(一致必須)」、1のビットが「可変(無視)」
変換方法
サブネットマスクからワイルドカードマスクへの変換は、255.255.255.255から
引き算することで求められます。
サブネットマスク | 255.255.255.0 |
---|---|
計算 | 255.255.255.255 - 255.255.255.0 |
ワイルドカードマスク | 0.0.0.255 |
ワイルドカードマスクの仕組み
ビット単位での動作
ワイルドカードマスクは、各ビット位置で以下のように動作します。
- ワイルドカードビット = 0:対応するIPアドレスのビットと完全一致が必要
- ワイルドカードビット = 1:対応するIPアドレスのビットは任意の値でよい
【具体例での理解】
192.168.1.0 0.0.0.255 という指定を考えてみましょう。
IPアドレス: 192.168.1.0 = 11000000.10101000.00000001.00000000
ワイルドカード: 0.0.0.255 = 00000000.00000000.00000000.11111111
結果:最初の24ビットは固定、最後の8ビットは任意
マッチする範囲:192.168.1.0 ~ 192.168.1.255
実践的な使用例
1. 基本的なネットワーク範囲の指定
単一のサブネット全体を指定する場合:
access-list 10 permit 192.168.1.0 0.0.0.255
2. 特定のホストの指定
単一のホストを指定する場合:
access-list 20 permit 192.168.1.100 0.0.0.0
access-list 20 permit host 192.168.1.100
3. 複数サブネットの同時指定
偶数番号のサブネットをまとめて指定する場合:
3番目のオクテットの最下位ビットが0のネットワーク
access-list 30 permit 192.168.0.0 0.0.1.255
192.168.0.0 = 11000000.10101000.00000000.00000000
0.0.1.255 = 00000000.00000000.00000001.11111111
マッチする範囲:
- 192.168.0.0 ~ 192.168.0.255
- 192.168.2.0 ~ 192.168.2.255
- 192.168.4.0 ~ 192.168.4.255
(以下、偶数番号のサブネットが続く)
4. OSPFでの使用例
OSPFでネットワークを宣言する際にもワイルドカードマスクを使用します
router ospf 1
192.168.1.0/24のネットワークをarea 0に追加
network 192.168.1.0 0.0.0.255 area 0
10.0.0.0/8の全体をarea 1に追加
network 10.0.0.0 0.255.255.255 area 1
5. 不連続な範囲の指定
ワイルドカードマスクの強力な点は、不連続な範囲も指定できることです
最下位ビットが1のホストアドレス
access-list 40 permit 192.168.1.1 0.0.0.254
よくある間違いと注意点
1. サブネットマスクとの混同
間違い:サブネットマスクを使用
access-list 50 permit 192.168.1.0 255.255.255.0
正しい:ワイルドカードマスクを使用
access-list 50 permit 192.168.1.0 0.0.0.255
2. 計算ミス
特定の範囲を指定する際の計算ミスに注意が必要です
192.168.1.0~192.168.1.127を指定したい場合
間違い:0.0.0.127では192.168.1.128も含まれてしまう
access-list 60 permit 192.168.1.0 0.0.0.127
正しい:/25のネットワークとして指定
access-list 60 permit 192.168.1.0 0.0.0.127
3. any キーワードの活用
すべてのIPアドレスを指定する場合は、anyキーワードを使用します:
冗長な書き方
access-list 70 permit 0.0.0.0 255.255.255.255
推奨される書き方
access-list 70 permit any
まとめ
ワイルドカードマスクは最初は理解しにくい概念ですが、「0が固定、1が可変」という
基本原則を押さえれば、さまざまな場面で活用できます。
重要なポイント:
ワイルドカードマスクはサブネットマスクの逆の考え方
255.255.255.255から引き算で変換可能
ACLやOSPFの設定で頻繁に使用される
不連続な範囲の指定も可能
実際の設定では対象となるIPアドレスの範囲を明確にし、ワイルドカードマスクを計算することが重要です。
本記事で紹介した基本的な考え方と計算方法を理解すれば、より複雑なネットワーク設定に
対応できるようになるでしょう。