逆サブネットマスクとは?
逆サブネットマスクは「ワイルドカードマスク」とも呼ばれ、通常のサブネットマスクのビットをすべて反転させたものです。サブネットマスクではビット「1」がIPアドレスのネットワーク部を示しますが、ワイルドカードマスクでは「0」が一致させたいビット、「1」が任意でよいビットを表します。ワイルドカードマスクはネットワークの現場で頻繁に使われ、特にCiscoのアクセスコントロールリスト(ACL)やOSPFの設定では、通常のマスクではなくワイルドカードマスクを指定する必要があります。
このツールでは、サブネットマスク(例:255.255.255.0)を1つ入力するだけで、対応するワイルドカードマスクに加え、関連する便利な値もすぐに表示します。具体的には、CIDRプレフィックス長、総ホスト数、利用可能なホスト数です。
使い方
- サブネットマスク:変換したいマスクをドット区切りの10進数で入力します(例:
255.255.255.192)。 - 送信すると、逆マスク(ワイルドカードマスク)、CIDR表記、総ホスト数、利用可能なホスト数が表示されます。
計算の仕組み
このツールは、次の4つのシンプルな計算を行います。
$$\text{Wildcard Mask} = 255.255.255.255 - \text{Subnet Mask}$$- ワイルドカードマスク:各オクテットを255から引きます(\(255 - \text{オクテット値}\))。
- CIDRプレフィックス:マスクを2進数に変換し、「1」のビット数を数えます。
- 総ホスト数:\(2^{(32 - \text{CIDR})}\)。
- 利用可能なホスト数:総ホスト数から2を引いた値(ネットワークアドレス分とブロードキャストアドレス分)。マイナスにはならず、最小値は0です。
計算例
たとえば 255.255.255.0 を入力した場合:
- ワイルドカードマスク:\(255-255\)、\(255-255\)、\(255-255\)、\(255-0\) =
0.0.0.255 - CIDR:2進数にすると「1」が24個なので、プレフィックスは /24
- 総ホスト数:$$2^{(32 - 24)} = 2^{8} = 256$$
- 利用可能なホスト数:\(256 - 2 = 254\)
よくある質問
なぜ /24 のワイルドカードは 0.0.0.255 になるのですか? ワイルドカードはマスクをそのまま反転させたものだからです。マスクが固定するビット(ネットワーク部)は0になり、ホスト部のビットは1になります。この例では、最後のオクテットの256アドレス分がすべて1(変動可)になります。
ワイルドカードマスクは実際どこで使うのですか? 最もよく使われるのは、Cisco IOSのアクセスリストやOSPFのnetwork文です。これらは通常のサブネットマスクではなく、ワイルドカードマスクを指定する必要があります。
なぜ利用可能なホスト数では2を引くのですか? サブネット内の最初のアドレスはネットワークアドレス、最後のアドレスはブロードキャストアドレスとして予約されており、どちらも機器に割り当てることができないためです。