使い方
- 「IPアドレス」の欄に、192.168.1.10 のように入力する(192.168.1.10/24 の形でもよい)
- 「プレフィックス長」(/24 の24)か「サブネットマスク」(255.255.255.0)のどちらかを入力する。入れた方に合わせて、もう一方が表示される
- サブネット計算の結果として、ネットワークアドレス、ブロードキャストアドレス、ホストに使えるアドレスの範囲と数、ワイルドカードマスク、2進数表示、クラス、アドレスの種類がその場で表示される
- URLに条件を付けて開くと、その条件で最初から表示される(例:
/subnet/?ip=172.16.5.4&len=20で172.16.0.0/20、使えるホスト数4,094台)。サブネットマスクで渡すときはlenの代わりにmask(/subnet/?ip=172.16.5.4&mask=255.255.240.0)を使う。計算欄の下の「この条件のURLをコピー」でも同じ形のURLを作れる
プレフィックス長ごとのサブネットマスクとホスト数は?(早見表)
/24 のサブネットマスクは255.255.255.0で、使えるホスト数は254台です。下の表は/8〜/32を並べたものです。プレフィックス長をタップすると、192.168.1.10 をその長さで計算した結果が計算欄に開きます。
| プレフィックス長 | サブネットマスク | 使えるホスト数 |
|---|---|---|
| /8 | 255.0.0.0 | 16,777,214 |
| /9 | 255.128.0.0 | 8,388,606 |
| /10 | 255.192.0.0 | 4,194,302 |
| /11 | 255.224.0.0 | 2,097,150 |
| /12 | 255.240.0.0 | 1,048,574 |
| /13 | 255.248.0.0 | 524,286 |
| /14 | 255.252.0.0 | 262,142 |
| /15 | 255.254.0.0 | 131,070 |
| /16 | 255.255.0.0 | 65,534 |
| /17 | 255.255.128.0 | 32,766 |
| /18 | 255.255.192.0 | 16,382 |
| /19 | 255.255.224.0 | 8,190 |
| /20 | 255.255.240.0 | 4,094 |
| /21 | 255.255.248.0 | 2,046 |
| /22 | 255.255.252.0 | 1,022 |
| /23 | 255.255.254.0 | 510 |
| /24 | 255.255.255.0 | 254 |
| /25 | 255.255.255.128 | 126 |
| /26 | 255.255.255.192 | 62 |
| /27 | 255.255.255.224 | 30 |
| /28 | 255.255.255.240 | 14 |
| /29 | 255.255.255.248 | 6 |
| /30 | 255.255.255.252 | 2 |
| /31 | 255.255.255.254 | 2 |
| /32 | 255.255.255.255 | 1 |
たとえば、100台を同じネットワークに置くなら、使えるホスト数が100以上になる/25(126台)が最も長いプレフィックス長で、/26は62台です。表のホスト数は、/30までは「総アドレス数 − 2」(/30は2台)で、/31は2台(RFC 3021)、/32は1台です(/31と/32の扱いは下の「使えるホスト数はなぜ『2を引く』の?」にあります)。
サブネットマスクとは?
サブネットマスクは、IPアドレスの32ビットを、ネットワークを表す前半(ネットワーク部)と、その中の端末を表す後半(ホスト部)に分ける境目を示す値です。RFC 950は、この境目をマスクで示す方式を採っています。
マスクの1が続く部分がネットワーク部、0が続く部分がホスト部です。255.255.255.0は先頭の24ビットが1なので、プレフィックス長/24と同じ意味になります(RFC 4632の書き方)。192.168.1.10 を2進数で見ると、次のようになります。
ネットワークアドレスとブロードキャストアドレスはどう求める?
ネットワークアドレスは、IPアドレスとサブネットマスクをビットごとにAND(両方が1のときだけ1)した値で、ホスト部をすべて0にしたアドレスです。ブロードキャストアドレスは、ホスト部をすべて1にしたアドレスです(RFC 1122はこれを、そのサブネット宛てのブロードキャストと呼んでいます)。
192.168.1.10/24では、ホスト部の下位8ビットをすべて0にすると192.168.1.0、すべて1にすると192.168.1.255になります。ホストに使えるのは、その間の192.168.1.1〜192.168.1.254です。
使えるホスト数はなぜ「2を引く」の?
ホスト部がすべて0のアドレス(ネットワークアドレス)とすべて1のアドレス(ブロードキャストアドレス)は、特別な場合を除いて端末のアドレスに使えないためです。RFC 1122は、ホスト番号が0または全ビット1のアドレスを認めていません。
/24 ならホスト部は8ビットなので、2の8乗 − 2 = 256 − 2 = 254台です。
例外が2つあります。/31 は、ポイントツーポイント(2台をつなぐ)のリンクでは2つのアドレスとも端末に使えるとRFC 3021が定めているので、使えるホスト数を2として表示します。/32 は、RFC 4632の表で「host route」とされている、アドレス1つだけを指すプレフィックスなので、1として表示します。この2つでは、ブロードキャストアドレスは出しません。
IPアドレスのクラスA〜Eとは?
クラスは、IPアドレスの先頭ビットで分けた区分で、RFC 791がA・B・Cを、RFC 1112がD・Eを定めています。1番目の数で、どのクラスかが決まります。
| クラス | 1番目の数 | 先頭ビット | ネットワーク部 |
|---|---|---|---|
| クラスA | 0〜127 | 0 | 8ビット |
| クラスB | 128〜191 | 10 | 16ビット |
| クラスC | 192〜223 | 110 | 24ビット |
| クラスD | 224〜239 | 1110 | — |
| クラスE | 240〜255 | 1111 | — |
クラスA・B・Cは、ネットワーク部が8・16・24ビットの区分です。クラスDはマルチキャスト(グループ宛ての通信)用、クラスEは将来の用途のために予約された区分です(RFC 1112)。192.168.1.10 の1番目の数は192なので、クラスCです。
RFC 4632は、クラスA・B・Cの区分から、プレフィックス長でネットワーク部を示す方式(CIDR)へ移ったと説明しています。たとえば、クラスBの172.16.0.0(マスク255.255.0.0)は、172.16.0.0/16と書きます。
プライベートアドレスなどの範囲は?
RFC 1918は、次の3つの範囲を、組織の内部で使うプライベートアドレスとして定めています。
- 10.0.0.0/8(10.0.0.0〜10.255.255.255、16,777,216個)
- 172.16.0.0/12(172.16.0.0〜172.31.255.255、1,048,576個)
- 192.168.0.0/16(192.168.0.0〜192.168.255.255、65,536個)
これとは別に、このツールは次の範囲も判定します。
- ループバックアドレス: 127.0.0.0/8(127.0.0.0〜127.255.255.255)。RFC 1122は、この形のアドレスをホストの外に出してはならないと定めています
- リンクローカルアドレス: 169.254.0.0/16(169.254.0.0〜169.254.255.255)。RFC 3927が、機器が自動でアドレスを設定するための範囲として定めています。この範囲は分割しないと定められています
- 共有アドレス空間: 100.64.0.0/10(100.64.0.0〜100.127.255.255)。RFC 6598が、通信事業者のCGN機器のために定めた範囲で、RFC 1918のプライベートアドレスとは区別されています
ワイルドカードマスクとは?
ワイルドカードマスクは、サブネットマスクの0と1を入れ替えた値です。255.255.255.0なら0.0.0.255になります。
このツールは、ワイルドカードマスクを、サブネットマスクのビットを反転した値として表示します。/8は0.255.255.255、/16は0.0.255.255、/24は0.0.0.255、/30は0.0.0.3です。ブロードキャストアドレスは、ネットワークアドレスとワイルドカードマスクのORで求められます。
IPv6のサブネットはどう書く?
IPv6は、アドレスの先頭の何ビットをプレフィックスにするかを「アドレス/プレフィックス長」の形で書きます(RFC 4291)。たとえば2001:0DB8:0:CD30::/60は、先頭60ビットをプレフィックスとする書き方の例です。このツールが計算するのはIPv4だけです。
このツールの前提
- IPv4だけを計算します。IPv6、サブネットの分割(VLSM)、サブネット数、サブネットの一覧は計算していません
- IPアドレスは、0〜255の数4つをピリオドでつないだ形で、各数は先頭に0を付けない10進数だけを読みます(「010」のような書き方は、読まずにエラーにします)
- プレフィックス長は0〜32の整数で、先頭に0を付けない形だけを読みます。サブネットマスクは、1が左から続く形だけを扱い、続かないマスクは「サブネットマスクとして使えない値」としてエラーにします(RFC 4632は、マスクは左から連続していなければならないとしています。RFC 950は、連続していないマスクも許していますが、連続させるよう勧めています)
- 使えるホスト数は、/30 以下で「総アドレス数 − 2」、/31 で2、/32 で1です。/31 と /32 ではブロードキャストアドレスを出しません。クラウドサービスや機器が独自に予約するアドレスは数えていません
- クラスは、1番目の数(先頭ビット)で決まる区分を参考として表示するもので、計算にはプレフィックス長を使います
- アドレスの種類は、RFC 1918の3つの範囲、127.0.0.0/8、169.254.0.0/16、100.64.0.0/10の6つの範囲だけを調べます。ドキュメント用の範囲など、ほかの特別な範囲は調べていません。判定は入力したIPアドレスについてで、サブネット全体がその範囲に収まるかどうかは注記で示します
- 計算は、32ビットの整数のビット演算で行います。端数処理はありません
- 出典に挙げたRFCは、後から別のRFCで補われることがあります。このツールが使っているのは、出典に挙げた版の記述です
よくある質問
/24 とはどういう意味ですか?
サブネットマスクからプレフィックス長を求めるには?
255.0.255.0 のようなサブネットマスクは計算できますか?
ネットワークアドレスとブロードキャストアドレスは、端末のアドレスに使えますか?
/31 と /32 はどう計算していますか?
IPアドレスの欄に「192.168.1.10/24」と入れても計算できますか?
100台を同じネットワークに置くとき、プレフィックス長はいくつですか?
IPv6のサブネットマスクは計算できますか?
169.254 で始まるアドレスは何ですか?
100.64.0.0/10 はプライベートアドレスですか?
クラスとプレフィックス長はどう違いますか?
出典
アドレスの範囲・ホスト数の規則・プレフィックス長の書き方は、IETFが公開しているRFC(Request for Comments)の本文で確かめています。
- RFC 791「Internet Protocol(1981年9月)」: クラスA・B・Cの定義(アドレスの先頭ビットと、ネットワーク部の長さ)
- RFC 950「Internet Standard Subnetting Procedure(1985年8月)」: サブネットマスクでネットワーク部とホスト部を分ける方式
- RFC 4632「Classless Inter-domain Routing (CIDR): The Internet Address Assignment and Aggregation Plan(2006年8月)」: プレフィックス長の書き方(/24 など)、プレフィックス長ごとのアドレス数、マスクが連続していること
- RFC 1122「Requirements for Internet Hosts - Communication Layers(1989年10月)」: ホスト部がすべて0・すべて1のアドレスの扱い、ループバックアドレス
- RFC 1112「Host Extensions for IP Multicasting(1989年8月)」: クラスD・クラスE
- RFC 1918「Address Allocation for Private Internets(1996年2月)」: プライベートアドレスの3つの範囲
- RFC 3021「Using 31-Bit Prefixes on IPv4 Point-to-Point Links(2000年12月)」: /31 の扱い
- RFC 3927「Dynamic Configuration of IPv4 Link-Local Addresses(2005年5月)」: リンクローカルアドレス
- RFC 6598「IANA-Reserved IPv4 Prefix for Shared Address Space(2012年4月)」: 共有アドレス空間
- RFC 4291「IP Version 6 Addressing Architecture(2006年2月)」: IPv6のプレフィックスの書き方
当サイトは民間のサイトで、IETF・RFC Editor その他の標準化団体や、各RFCの著者が作成・監修したものではありません。RFCの規則にもとづいて計算し、表示するものです。
ご利用にあたって
サブネットKAZOERUは、RFCに書かれた規則にもとづいてIPv4アドレスのサブネットを計算するツールで、ネットワークの設計や機器の設定を指示するものではありません。実際のネットワーク設計や機器の設定は、機器のマニュアルや、ネットワークの管理者・専門家にご確認ください。