/48 をもらったけれど、/64 に切ると何個になるのか。 部署ごとに /56 を配るなら、何拠点ぶん取れるのか。 IPv4 の感覚で数えると、桁がずれてしまいそうです。 プレフィックスを入れるだけで、範囲とアドレス数、含まれる /64 の個数が出ます。分割先の長さを指定すれば、分割後のサブネット一覧と総数も見られます。
使い方
- 一番上の欄に「2001:db8::/48」のように、IPv6 アドレスとプレフィックス長を「/」でつなげて入力します。ネットワークアドレス、先頭・末尾アドレス、アドレス数、含まれる /64 の数が、その場で表示されます。
- 下の「分割先のプレフィックス長」に 56 などの数字を入れるか、/48・/56・/64 のボタンを押します。分割後のサブネットが一覧で出ます。
ここまでが基本の操作です。
- 一覧は先頭 64 件までです。分割後の総数は一覧の上に書かれます。「一覧をコピー」を押すと、表示されている行をまとめてコピーできます。
アドレスは「::」で省略した形でも、8ブロックの完全な形でも入力できます。末尾を ::ffff:192.0.2.1 のように IPv4 で書いた形も読めます。全角で貼り付けても半角に直して扱います。
ホスト部にビットが立った状態のアドレス(2001:db8:1234:5678:9abc:def0:1234:5678/64 など)を入れても大丈夫です。ホスト部を 0 にしたネットワークアドレスを求め、そのことを「補足」に書きます。
仕組み・計算式
IPv6 アドレスは 128 ビットの数です。「アドレス/プレフィックス長」の書き方と、先頭からプレフィックス長のビットがネットワーク部になる考え方は、RFC 4291(IPv6 アドレス体系)に書かれています。このツールは、アドレスを 128 ビットの整数(JavaScript の BigInt)として扱います。
ホスト部のビット数 = 128 − プレフィックス長
ネットワークアドレス = アドレスのホスト部を 0 にした値
末尾アドレス = ネットワークアドレスのホスト部をすべて 1 にした値
アドレス数 = 2 の(ホスト部のビット数)乗
含まれる /64 の数 = 2 の(64 − プレフィックス長)乗
分割後の個数 = 2 の(分割先の長さ − 元の長さ)乗
/64 の数は、プレフィックス長が 64 以下のときだけ数えます。/65 以上は /64 1 個より狭いので、0 個と表示します。
表示するアドレスの形は RFC 5952(テキスト表記の推奨)に合わせています。英字は小文字、各ブロックの先頭の 0 は省き、0 が連続する最長の部分を「::」にします。長さが同じ場合は左側を省略し、0 が 1 ブロックだけのときは「::」にしません。
サブネットの大きさについては、RFC 4291 が、先頭が 000 でないユニキャストアドレスのインターフェース ID を 64 ビットとしています。LAN の1セグメントを /64 にするのが標準的なのは、このためです。事業者から利用者への割り当てについては RFC 6177 が扱っていて、/48 一択とはせず、/48 から /64 の範囲で決めることを想定しています。
IPv4 の「ブロードキャストアドレス」に当たるものは、IPv6 にはありません。ここでの先頭・末尾は、範囲の両端の値です。
計算例
数字はすべて、このツールの script.js のロジックを node で実行して確かめました。
例1: 2001:db8::/48 を /56 に分割する
- ネットワークアドレス: 2001:db8::/48
- 末尾アドレス: 2001:db8:0:ffff:ffff:ffff:ffff:ffff
- アドレス数: 1,208,925,819,614,629,174,706,176(2 の 80 乗)
- 含まれる /64 の数: 65,536 個
65,536 個。多すぎると思いませんか。分割すると 256 個になり、最初の3つは 2001:db8::/56、2001:db8:0:100::/56、2001:db8:0:200::/56 です。256 個目に当たる 2001:db8:0:ff00::/56 は、先頭 64 件の外にあたるので一覧には出ません。64 件目は 2001:db8:0:3f00::/56 でした。
2001:db8::/48 は、RFC 3849 で文書の例示用に確保されたプレフィックスです。
例2: ホスト部が入ったアドレスを /64 で入れる
2001:db8:1234:5678:9abc:def0:1234:5678/64 を入れると、ネットワークアドレスは 2001:db8:1234:5678::/64、末尾は 2001:db8:1234:5678:ffff:ffff:ffff:ffff です。アドレス数は 18,446,744,073,709,551,616(2 の 64 乗)で、含まれる /64 は 1 個でした。
正直なところ、意外だったのは、/64 1個だけでも IPv4 全体(約43億個)の 40 億倍以上のアドレスを持つことでした。
例3: 境界値
- ::/0 は、全アドレス空間です。アドレス数は 340,282,366,920,938,463,463,374,607,431,768,211,456 で、/64 は 18,446,744,073,709,551,616 個になります。
- ::1/128 は、アドレス1個だけです。アドレス数は 1、含まれる /64 は 0 個と表示されます。
- ::ffff:192.0.2.1/96 を入れると、ネットワークアドレスは ::ffff:0.0.0.0/96、末尾は ::ffff:255.255.255.255 で、アドレス数は 4,294,967,296 でした。
よくある間違い
1. /64 より長いプレフィックスで LAN を切ってしまう
IPv4 の癖で、小さなセグメントに /120 や /112 を使う人がいます。まず、そのネットワークで使う機器やプロトコルが /64 を前提にしていないかを確認してください。RFC 4291 のとおり、インターフェース ID は 64 ビットが前提です。ツールで /64 の数を見ておけば、手持ちのプレフィックスから /64 を何本取れるかがすぐ分かります。
2. 「/48 を 256 分割」を「/56 に 256 個」と数えない
/48 を /56 に分けると 256 個、/64 に分けると 65,536 個です。分割先の長さの差が 8 なら 2 の 8 乗、16 なら 2 の 16 乗です。「あと何ビット使うか」で数えると、ずれません。拠点数や VLAN 数に合わせて、分割先の長さを変えながら総数を見てみてください。
3. 省略表記の「::」の位置を間違える
2001:db8:0:0:1:0:0:1 のように、0 の連続が複数あるときは、最も長い連続を「::」に直します。同じ長さなら左側です。2001:db8::1:0:0:1 が RFC 5952 の形です。2001:db8:0:0:1::1 も同じアドレスを指しますが、推奨の表記ではありません。「::」は1か所だけしか使えません。
よくある質問
Q. 先頭アドレスにホストを割り当ててもいいですか?
A. 避けたほうが安全です。ホスト部がすべて 0 のアドレスは、RFC 4291 でサブネットルーターエニーキャストアドレスとして予約されています。実際の設定では、::1 や ::2 のように 0 以外から使うのが一般的です。
Q. 一覧が 64 件しか出ないのはなぜですか?
A. /32 を /64 に分けると約43億個になるように、全件を表示するとブラウザが重くなるためです。総数は一覧の上に出ます。たとえば /48 を /56 に分けると 256 個と表示され、一覧には先頭 64 件が並びます。
Q. IPv4 の「ブロードキャスト」に当たるものはありますか?
A. ありません。末尾アドレスは、その範囲の最後の値というだけです。このツールが「末尾アドレス」と書いているのは、そのためです。
Q. 入力した内容はどこかに送信されますか?
A. 送信されません。計算はすべてブラウザの中で完結します。
関連ツール
最終更新・根拠の確認日: 2026-10-30 · カテゴリ: ネットワーク