本文へ移動
iseeu.cc

サブネット計算

IPv4・IPv6のネットワークをCIDR表記で、またはIPv4アドレスとドット区切りのサブネットマスクで入力すると、範囲、サイズ、マスク、アドレスの種類、逆引きDNSのゾーンがわかります。同じ大きさのサブネットに分割したり、別のアドレスが範囲内に入るかを確かめたりもできます。

入力すると、ここに結果が表示されます(例:192.168.10.37/22)。

要点

プレフィックス長がnのIPv4ネットワークには232−n個のアドレスがあります。通常のLANではネットワークアドレスとブロードキャストアドレスの2つがふさがるので、/24ならアドレスは256個、使えるホストは254台です。ポイントツーポイントリンクの/31は両方のアドレスを使い(RFC 3021)、/32は単一のホストを表します。IPv6でホストを置くサブネットは通常/64です(RFC 4291)。

調べ方

アドレスとプレフィックスを、32ビット(IPv4)または128ビット(IPv6)の数値に変換します。ネットワークアドレスはアドレスとマスクのAND、ブロードキャストはネットワークとワイルドカードのORで求めます。ワイルドカードはマスクを反転したものです。使えるホスト数は、/30までは総数−2、/31では2、/32では1です。分割はプレフィックスを右へずらすことで、/22を/24に分けると224−22 = 4個のサブネットになります。

例

192.168.10.37/22結果
ネットワーク192.168.8.0/22
サブネットマスク / ワイルドカード255.255.252.0 / 0.0.3.255
ブロードキャスト192.168.11.255
ホストの範囲192.168.8.1〜192.168.11.254
アドレス数 / 使えるホスト数1,024 / 1,022
種類プライベート(RFC 1918)

制限事項

  • ネットワークアドレスとブロードキャストの2つ以外にもアドレスを予約するネットワークがあります。たとえばゲートウェイ用のアドレスや、クラウドのサブネットで事業者が確保する複数のアドレスです。
  • IPv6にはブロードキャストアドレスがないため、ここではIPv6プレフィックス内のすべてのアドレスを使えるものとして数えます。
  • オクテットの境界で終わらないプレフィックスの逆引きには、クラスレスな逆引き委任(RFC 2317)が必要です。

出典

出典の確認日:。ページの最終更新日:。

計算できる項目

IPネットワークは、アドレスとプレフィックス長の組で表します。プレフィックス長は先頭から何ビットがネットワーク部として固定されているかを示し、残りのビットで個々のホストを区別します。この計算ツールはその組から導けるものをすべて求めるので、2進数の計算を手でする必要はありません。数値の処理は、すべて手元のブラウザ上で完了します。

IPv4のネットワークでは、ネットワークアドレスとブロードキャストアドレス、使える最初と最後のホスト、アドレスの総数と使えるホスト数、サブネットマスクとワイルドカード(反転)マスク、プレフィックス長、そしてアドレスとマスクをビット単位でそろえた2進表示がわかります。アドレスの種類として、プライベート(RFC 1918)、キャリアグレードNAT(100.64.0.0/10)、ループバック、リンクローカル、ドキュメント用、マルチキャスト、グローバルのいずれかを示し、逆引きDNSに使うin-addr.arpaのゾーン名も表示します。

IPv6のネットワークでは、ネットワークプレフィックス、範囲の最初と最後のアドレス、総数(正確な値と2のべき乗)、省略形と完全に展開した形、アドレスの種類(グローバルユニキャスト、ユニークローカルfc00::/7、リンクローカルfe80::/10、ドキュメント用2001:db8::/32、マルチキャスト、ループバック)、そしてip6.arpaの逆引きゾーンがわかります。

使い方

  1. 入力欄にネットワークを入力します。IPv4・IPv6のどちらもCIDR表記(192.168.10.37/22や2001:db8:abcd::/48など)で入力できるほか、IPv4ならアドレスの後にスペースを1つ空けてドット区切りのサブネットマスクを続ける形(10.1.2.3 255.255.255.0など)も使えます。
  2. 結果を確認します。192.168.10.37/22なら、ネットワーク192.168.8.0、ブロードキャスト192.168.11.255、使えるホストは192.168.8.1〜192.168.11.254、アドレス1,024個のうち1,022個が使用可能、サブネットマスク255.255.252.0、ワイルドカード0.0.3.255となります。
  3. ネットワークを分割するには、より長いプレフィックスを選びます。同じ/22を/24で分ければ4つ、/26で分ければ16のサブネットになります。それぞれの範囲が、最大256個まで一覧表示されます。
  4. 含まれるかどうかを確かめるには、「アドレスがこのネットワークに含まれるか」の欄に別のアドレスを入力します。そのアドレスが上のネットワーク内にあるかどうかが表示されます。

ホスト部が0である必要はありません。設定ファイルにあるインターフェースのアドレスをそのまま貼り付ければ、所属するネットワークを求めます。サブネットマスクでの入力はIPv4専用で、IPv6では常にプレフィックス長を指定します。

IPv4の2つのサイズには独自のルールがあります。/31のアドレスは2つで、RFC 3021により、ポイントツーポイントのリンクでは両方とも使えるものとして数えます。/32は単一のホストです。

こんな場面で使えます

  • ファイアウォールのルールの確認。ベンダーから172.16.40.0/21を許可するよう頼まれたとします。これを入力し、含まれるかどうかの欄で172.16.47.200を試すと、/21は172.16.40.0〜172.16.47.255なので、このアドレスは範囲内だとわかります。
  • 自宅ラボの区割り。192.168.50.0/24を、使えるホストが62台ずつの/26ネットワーク4つに分け、サーバー、仮想マシン、IoT機器、ゲスト用に1つずつ割り当てます。
  • クラウドのサブネットの見積もり。AWSはどのサブネットでも先頭の4つと末尾の1つ、計5つのアドレスを予約するため、/24でインスタンスに使えるのは254ではなく251です。ほかのクラウド事業者も、サブネットごとにいくつかのアドレスを確保しています。
  • ルーターのACLを書く。CiscoのアクセスリストやOSPFのnetworkコマンドでは、サブネットマスクの代わりにワイルドカードマスクを指定します。/20なら0.0.15.255であることが、暗算なしでわかります。
  • IPv6の委任を読み解く。プロバイダからルーターに/56が委任されたら、/64で分割してみましょう。VLANごとに1つずつ配れる、LAN向けサイズのサブネットが256個得られます。
  • キャリアグレードNATを見分ける。ルーターのWAN側アドレスが100.72.14.9のような値なら、この計算ツールはキャリアグレードNATと表示します。プロバイダが上流でもう一度アドレスを変換しているため、外からのポート転送はたいてい失敗します。

CIDRとサブネットマスクの読み方

IPv4アドレスは32ビットで、スラッシュの後の数字はそのうち何ビットがネットワーク部かを表します。/24ならホスト部は8ビットで、2^8 = 256個のアドレスです。プレフィックスが1短くなるごとにブロックは2倍になり(/23は512個、/22は1,024個)、1長くなるごとに半分になります(/25は128個、/30は4個)。通常のIPv4サブネットでは、ホスト部が全部0の値がネットワークを、全部1の値がブロードキャストを表すので、/24で使えるホストは254台、/30では2台です。

ドット区切りのサブネットマスクは、1が続いたあとに0が続くビット列と同じ情報を持っています。プレフィックス長に直すには、オクテットごとに1の数を数えます。255は8で、途中のオクテットは128 = 1、192 = 2、224 = 3、240 = 4、248 = 5、252 = 6、254 = 7です。

サブネットマスク  255.255.240.0
2進数             11111111.11111111.11110000.00000000
1の数             8 + 8 + 4 + 0 = 20   ->  /20
ワイルドカード    0.0.15.255   (255から各オクテットを引いた値)
サイズ            2^(32-20) = 4,096アドレス、うち4,094が使用可能

つまり10.1.2.3 255.255.240.0は10.1.2.3/20と同じ入力で、ネットワーク10.1.0.0〜10.1.15.255に属します。

サブネットのサイズと境界のそろえ方

各セグメントの大きさは、想定する台数から見積もり、余裕を持たせて2のべき乗に切り上げます。小さなオフィスなら、社員用のVLANにそれぞれ/24、ゲスト用Wi-Fiに/23、管理用ネットワークにホスト30台の/27、ルーター間のリンクにそれぞれ/31を割り当てる、といった具合です。大きなブロックから順に、それぞれ自分のサイズの境界にそろえて割り当てていけば、小さなブロックは重なることなく隙間に収まります。

境界のそろえ方は、経路を集約できるかどうかも左右します。10.20.4.0から10.20.7.0までの4つの/24は、4が4の倍数なので、10.20.4.0/22という1本の経路にまとめられます。10.20.2.0から10.20.5.0までの4つの/24は同じ広さですが、10.20.2.0/23と10.20.4.0/23の2本の経路が必要です。

IPv6では、ステートレスアドレス自動設定が64ビットのインターフェースIDを前提としているため、LANのセグメントは/64にします。1対多の通信にはマルチキャストを使うのでブロードキャストアドレスはなく、この計算ツールはIPv6のサイズを単純な総数で示します。逆引きゾーンはラベルの境界に従います。in-addr.arpaのラベルはオクテット単位なので/22は4つの/24ゾーンにまたがり、ip6.arpaのラベルは16進数1桁ずつなので、2001:db8:abcd::/48はd.c.b.a.8.b.d.0.1.0.0.2.ip6.arpaになります。

よくいただく質問

/24なのに、使えるホストが256ではなく254なのはなぜですか?

/24ではホスト部が8ビット残り、アドレスは256個になります。通常のIPv4サブネットでは、ホスト部のビットがすべて0のアドレスがネットワーク自体を表し、すべて1のアドレスがブロードキャストアドレスになるため、どちらも機器には割り当てません。残りが254です。この2つを差し引くルールは、/30までのすべてのIPv4プレフィックスに当てはまります。

/31はサブネットとして使えますか?

はい、ポイントツーポイントのリンクなら使えます。RFC 3021では、/31の2つのアドレスを両方ともホストに使うことを認めています。端がちょうど2つしかないリンクには、ネットワークアドレスもブロードキャストアドレスも要らないからです。4つのアドレスのうち2つを管理用に費やす/30と比べると、アドレス空間は半分で済みます。この計算ツールもこのルールに従い、/31の使えるホスト数を2と表示します。

IPv6では、使えるホスト数が表示されないのはなぜですか?

IPv6にはブロードキャストアドレスがないため、末尾のアドレスを除く必要がないからです。しかも範囲が非常に大きく、1つや2つ差し引いても実質的に何も変わりません。そこでこのツールは、代わりにアドレスの総数を、正確な値と2のべき乗の両方で表示します。たとえば/64には2^64、つまり18,446,744,073,709,551,616個のアドレスがあります。

IPv6のLANで、/64より長いプレフィックスを使ってもよいですか?

設定はできますが、ステートレスアドレス自動設定(SLAAC)は64ビットのインターフェースIDを前提としているため、それに頼るホストはそのセグメントでアドレスを作れません。一般のクライアントがいるネットワークは/64にしておきましょう。より長いプレフィックスが妥当なのは、RFC 6164が/127を推奨しているルーター間のリンクや、/128を割り当てるのが一般的なループバックアドレスです。

ワイルドカードマスクとは何ですか?

サブネットマスクの全ビットを反転したもので、255.255.255.0なら0.0.0.255になります。ワイルドカードの形式では、0のビットは「一致しなければならない」、1のビットは「何でもよい」を意味します。Cisco IOSのアクセスリストやOSPFのnetworkコマンドで使われます。255からサブネットマスクの各オクテットを引けば求められ、この計算ツールではサブネットマスクの隣に表示されます。

サブネットマスクをCIDRのプレフィックス長に換算するには?

サブネットマスクを2進数で書いたときの1の数が、プレフィックス長です。オクテットごとに数え、255は8、途中のオクテットは128 = 1、192 = 2、224 = 3、240 = 4、248 = 5、252 = 6、254 = 7として足します。たとえば255.255.240.0は8 + 8 + 4 + 0 = 20なので/20です。この計算ツールに「アドレス+スペース+サブネットマスク」の形で入力しても、同じ結果が得られます。

ルーターのWAN側アドレスが100.64.0.0〜100.127.255.255の範囲です。どういう意味ですか?

その範囲は100.64.0.0/10で、RFC 6598によりキャリアグレードNAT用に確保されています。プロバイダはルーターに共有の内部アドレスを割り当て、さらに上流で通信をグローバルIPに変換しています。外向きの接続は普通に使えますが、ゲームサーバーやカメラへのポート転送のように外から入ってくる接続は、プロバイダからグローバルIPを割り当ててもらわない限り、たいてい届きません。

計算はサーバーで行われるのですか?

いいえ、すべてお使いのブラウザの中で計算します。ブロードキャストアドレスからip6.arpaのゾーン、分割したサブネットの一覧まで、ページに出る結果はどれもページ自身がその場で求めたもので、答えを出すのにサーバーは使いません。それとは別に、iseeu.ccはIPアドレスや調べた内容のログも訪問者のデータベースも持たず、Cookieも広告も使いません。

計算は標準的なCIDRの規則に従っています。クラウド事業者やプロバイダ、一部のOSはサブネット内でさらにアドレスを予約するため、正確なホスト数に頼る前に、それぞれのドキュメントを確認してください。