私が造る Toolz.dev、そしてWordPressプラグインとLaravel APIと並んで、私はクラウドコンソールでVPCを切り開き、ファイアウォールルールを作成するのにかなりの時間を費やしました サブネット化は、理論がシンプルで算術が巧妙で、巧妙な部分がまさに間違いを隠すことを許可するセキュリティグループを出荷しました /16 私が意味したのは /24、私は私の頭の中でマスクの数学を行い、少し間違っていたので、意図したよりもはるかに広いネットワークを開く。 the IP サブネット 計算機 二度と手作業で起こらないように存在します。このガイドでは、計算内容、数値が計算方法として現れる理由、人々と彼らが信頼する素朴な計算機の両方をつまずかせるエッジケースについて説明します。
tl;dr: IPv4 サブネット計算機は、アドレスと CIDR プレフィックスを取得します
192.168.1.10/24、ネットワークアドレス、ブロードキャストアドレス、最初と最後の使用可能ホスト、サブネットマスク、ワイルドカードマスク、合計と使用可能アドレスのカウントを導出する これは、アドレスを32 ビット整数として扱い、ビット単位の演算でマスクを適用することで、重要な2 つのエッジケースを正しく処理し、a を扱います/31RFC 3021 および a による 2 ホストのポイントツーポイント リンクとして/32単一のホストとして、プレフィックスの代わりに点線のマスクを受け入れます。ブラウザ内で完全に実行されるため、入力したアドレスはアップロードされません。
サブネットとは何ですか、そしてプレフィックスはどういう意味ですか?
IPv4 アドレスは 32 ビットで、次のように 4 つの小数オクテットとして記述されます 192.168.1.10.サブネットは,同じ先頭のビットを共有するそれらのアドレスの連続したブロックである.CIDRプレフィックス,スラッシュの後の数字は,32 ビットのうち何ビットがネットワーク部分として固定されているかを示す.残りのビットは,自由に変化させ,個々のホストを識別できる.それで /24 最初の24 ビットを修正し、ホスト用に8 を残します、 /16 16 を修正して 16 を残します /30 30 を修正し、2 だけを残します.
ブロック内のアドレスの数は、ホストビットの2 乗です。 A /24 はホストビットが8 個なので、2 から8 番目まで、つまり256 個のアドレスです。 A /16 はホストビットが16 個あるので、65,536 個のアドレスである。 A /30 ホスト ビットが 2 つあるため、アドレスは 4 つあります。これは数学の基礎全体であり、一度 " を内部化すると、アドレスは 2 の 32 乗から接頭辞を引いた値に等しくなります。 " サブネット化の大部分は謎に包まれなくなります。
クラスレスドメイン間ルーティングの略である CIDR が導入されました RFC 4632 古いクラスフル システムを置き換えるには、アドレス & #39; s クラスが最初のオクテットによって固定されていました。クラスフル アドレス指定では、その間に何かが必要だった場合でも、クラス A、B、または C ブロック全体を取得する必要があったため、膨大な量のスペースが無駄になりました。 CIDR を使用すると、必要なものにネットワークのプレフィックスの長さとサイズを選択できます。クラスフル ラベル A、B、C は、私のものを含むツールにまだ表示されますが、現在は情報になっています。プレフィックスがネットワークの境界を決定します。
すべてのサブネットで 2 つのアドレスが使用できないのはなぜですか?
通常のサブネットでは最初と最後のアドレスは予約されており、ホストに割り当てることはできない。 、ホストビットをすべてゼロに設定した最初のアドレスはネットワークアドレスであり、サブネット自体に名前を付ける。 、ホストビットをすべて1 に設定した最後のアドレスはブロードキャストアドレスであり、それに送信されたパケットはサブネット上のすべてのホストに一度に届く。これら2 つは話されるため、使用可能なホスト数はアドレスの合計から2 を引いたものとなる。
だからこそ、a /24 合計 256 個のアドレスがありますが、使用可能なアドレスは 254 個だけです。その理由は次のとおりです /30、4 つのアドレスを持つ、ちょうど2 つの使用可能なホストを与える。 the /30 ポイントツーポイント リンクには正確に 2 つのアドレスが必要で、それ以上のアドレスは必要ないため、2 つのルーター間のリンクの古典的な選択です。計算機はネットワークを綴り、最初と最後の使用可能なホストとともにアドレスを明示的にブロードキャストするため、どのアドレスが立ち入り禁止であるかを判断する必要はありません。
電卓はどのように数値を計算しますか?
フードの下では 32 ビット整数上でビット演算を行います これは最も速く エラーの発生が少ない方法です アドレスは1 つの符号なし整数に詰め込まれます 各オクテットを所定の位置に移動することで 接頭辞のマスクは 1 の後にゼロが続く 連続であり シフトによって生成されます 0xFFFFFFFF によって左 32 minus the prefix.そこから、すべての値は1 つの演算である:
- ネットワーク アドレスは、ホスト ビットをゼロにするマスクがビット単位でAND化されたアドレスです。
- ブロードキャスト アドレスは、すべてのホスト ビットを設定するマスクの逆数を使用して処理されたネットワークです。
- ワイルドカード マスクは、単にサブネット マスクのビット単位の逆数です。
- 最初に利用可能なホストはネットワーク アドレス プラス 1、最後のホストはブロードキャスト マイナス 1 です。
このようにすると、人が手でバイナリ文字列に変換するときに忍び寄る間違いを回避できます。また、逆変換も簡単になります。点線のマスクを次のように回転させます 255.255.255.0 プレフィックスに戻ると、先頭の 1 ビットを数えます。スラッシュ表記ではなくマスクを入力すると、計算機がそれを行います。すべてが符号なしの 32 ビット整数として残ります。これは、負の数字が忍び込まないように符号なしの解釈を強制する必要があるため、JavaScript では重要です。ハイビットで。
ほとんどのツールが間違うエッジケースは何ですか?
2 つの接頭辞が単純な " から 2 つの " を引いたものを破ります。ルールを適用すると、驚くべき数の計算機がそれらを誤って処理します。
1 つ目は /31。 本来のルールの下では、a /31 アドレスが 2 つあり、両方とも予約されているため、使用可能なホストがゼロになりますが、これは役に立ちません。 RFC 3021 を許すことでこれを修正しました /31 ブロードキャストアドレスの必要がないので、その2 つのアドレスの両方が使用可能になるポイントツーポイントリンクで この計算機はaを報告します /31 ネットワークとブロードキャスト アドレスを持つ 2 つの使用可能なホストとして、2 つのホスト アドレスを兼ねています。これは、最新のルーターがシリアル インターフェイスとポイントツーポイント インターフェイスで行うことです。
2 つ目は /32。 あ /32 は単一のアドレス、ホストルートです.1 台のマシンを正確に表します. ループバックアドレス, ホスト固有のファイアウォールルール, 個々のルートはどのように表現されます. 計算機は, ネットワークアドレスがアドレス自体に等しく, 別々の範囲のない1 つの使用可能なホストとして報告します.2 つを盲目的に減算するツールは, これらの両方についてマイナスまたはゼロのホストを報告します. これはナンセンスです.そして, 私はこれがそうではないことを確認しました.
サブネット計算機の使い方
ステップ1: アドレスとプレフィックスを入力します
などの CIDR プレフィックスを持つ IPv4 アドレスを入力します 10.0.0.0/8 や 192.168.1.10/24.プレフィックスは0 から32 までです.プレフィックスのないアドレスを貼り付けると,ツールはaを想定します. /24、最も一般的なデフォルト、およびそこから調整できます。
ステップ2: または点線のサブネットマスクを使用します
プレフィックスではなくマスクがある場合は、次のようにスペースで区切ってアドレスとマスクを入力します 192.168.1.10 255.255.255.0。電卓はマスク内の先頭の 1 ビットをカウントし、それを一致するプレフィックスに変換し、マスクが連続していないマスクを拒否します。そのようなマスクは有効な CIDR マスクではないためです。
ステップ3:結果を読みます
ネットワークアドレス、ブロードキャストアドレス、使用可能なホスト範囲、サブネットマスク、ワイルドカードマスク、合計アドレス数と使用可能なアドレス数、クラスフル範囲、およびアドレスがRFC 1918 の下でプライベートであるかどうか、およびアドレスとマスクのバイナリビューもあり、ネットワーク境界がどこにあるかを正確に確認する最速の方法です。
ステップ4:必要なものをコピーします
各値にはコピー ボタンがあるため、再入力して転置オクテットの危険を冒すことなく、CIDR 表記をルート テーブルに、ホスト範囲をドキュメントに、またはワイルドカード マスクを Cisco アクセス リストに持ち上げることができます。
サブネットマスクとプレフィックス参照
これは私が何度も参照している表であり、計算機は数値が古くなることがないようにライブで生成します。
| CIDR | サブネットマスク | 総住所 | 使用可能なホスト |
|---|---|---|---|
| /24 に指定されています | 255.255.255.0 | 256 に所蔵されている | 254 に記載のものです |
| /25 に設定されています | 255.255.255.128 | 128 に所蔵されています | 126 に準拠して作成されています |
| /26 にご案内しております | 255.255.255.192 | 64 | 62 に記載しております |
| /27 に設定されています | 255.255.255.224 | 32 | 30 |
| /28 に設定されています | 255.255.255.240 | 16か | 14 に記載しております |
| /29 に掲載されています | 255.255.255.248 | 8です | 6か |
| /30 にあたる | 255.255.255.252 | 4です | 2です |
パターンは記憶する価値があります: プレフィックスの各ステップアップはブロックを半分にします A /25 は 半a /24、あ /26 は 4 分の 1 などです。ネットワークを分割する場合、その半分がメンタル モデルであり、計算機は正確な境界を確認するため、メンタル モデルだけを信頼する必要はありません。
1 つのネットワークをどのように小さなサブネットに分割しますか?
最も一般的な実際のタスクは、単一のサブネットを計算するのではなく、より大きなブロックをいくつかの小さなブロックに分割することであり、これは電卓がそのキープを獲得する場所を手渡されると言います 10.0.0.0/16 クラウドVPCの場合、パブリック層、プライベート層、データベース層のサブネットにカーブする必要があります。 prefixでステップアップするたびに、サブネットの数が2 倍になり、サイズが半分になるため、から移動します /16 にする /18 それぞれ 16,384 個のアドレスの 4 つの等しいブロックが得られます: 10.0.0.0/18、 10.0.64.0/18、 10.0.128.0/18、そして 10.0.192.0/18。電卓に貼り付けて、ネットワークとブロードキャスト アドレスがギャップや重複なく整列していることを確認することで、これらの境界をすべて確認できます。
ここでの罠は、サブネットが自然の境界上に落ちなければならないということです。 A /26 ブロックはどのアドレスでも開始できません。 64 は a のブロック サイズであるため、最後のオクテットでは 64 の倍数から開始する必要があります /26。 で始めようとすると、 .30、電卓が報告するネットワークアドレスは、あなたが入力したものと一致しない、これは間違いをキャッチするための最速の方法です。 VPCを計画するとき、私は順番に意図した各サブネットを貼り付けてネットワークアドレスを読み返します; ツールが私が定義するつもりだったものとは異なるネットワークアドレスを示している場合、私はそれを適用する前に私の境界が間違っていることを知っています。 router& #39; sの静的ルートとファイアウォールルールのために同じ規律が機能します。 、オフバウンダリブロックは、あなたが意図していないアドレスを静かにカバーします。
名前を付ける価値のある現実世界の微妙さもありますクラウドプロバイダーはネットワークとブロードキャストペアを超えて各サブネット内にいくつかのアドレスを予約します例えばAWSはサブネットごとに5 つのアドレスを予約し2 つではなく最初の4 つと最後の1 つを取ります計算機は厳密なRFCホスト範囲を報告するのでAWSでは表示されている使用可能なカウントからさらに3 つを引きますそれは標準の上に重ねられたプロバイダーの慣習であり、数学の欠陥ではありませんが、それはまさにあなたがそれを忘れた場合に2 つのホストを短くする種類のものです。
どの範囲がプライベートなのか、そしてなぜそれが重要なのでしょうか?
RFC 1918 プライベート使用のために3 つのブロックを予約します: 10.0.0.0/8、 172.16.0.0/12、そして 192.168.0.0/16これらはパブリック インターネットではルーティングできません。 、およびネットワーク アドレス変換を行うルーターの背後にほぼすべての家庭やオフィスのネットワークが使用する範囲です。計算機は、入力したアドレスがそのいずれかに該当するかどうかをフラグを立てます。これは、アドレス指定スキームを計画しているときに、パブリック インターネット上の他の誰かに属するアドレスを誤って使用するのではなく、プライベート スペース内で作業していることを確認したい場合に、すぐに正気を確認します。また、内部にあると予想されるアドレスに "public" フラグが表示されたときに便利です。これは、多くの場合、最初のオクテットで誤植を意味するためです。
サブネット計算機が他のすべてに適合する場所
ネットワーキング作業が単独で行われることはほとんどありません アプリケーションの背後にあるインフラストラクチャを構成しているときは、HTTPレスポンスのデバッグ、ユーザーエージェントの解析、内部サービスの資格情報の生成も行っています HTTP ステータス コードの参照 はアプリケーション層のコンパニオンです ユーザーエージェントパーサー サーバーに何がヒットしているかを把握するため 基本的なauthジェネレータ 内部エンドポイントを保護する認証情報の場合。 masks をバイナリで読みながら数値ベース間で変換する場合、 数ベースコンバータ 10 進数から 2 進数へのステップを直接処理します。そしてセキュリティ面では、 クレジットカードバリデータ は、今設計したネットワーク上で実行されるチェックアウトのフロントエンド フィルターです。
より広い視野では、 開発者の生産性向上ツール ラウンドアップでは、一日中タブで開いている傾向があるユーティリティをカバーします コーディング ツール ガイド サブネット計算機を完全な開発者ツールキットのコンテキストに置きます。 Toolz.dev のすべてのものと同様に、サブネット計算機も完全にブラウザーで実行されるため、計画しているアドレスはマシンから離れることはありません。
よくある質問
CIDRプレフィックスとはどういう意味ですか?
CIDR プレフィックスはスラッシュの後の番号で、アドレスの先頭ビットの何ビットがネットワークを識別するかをカウントします。 A /24 ネットワーク用の最初の24 ビットを修正し、ホスト用の8 ビットを残します。 、つまり、合計256 アドレスと254 使用可能なアドレスです。 小さなプレフィックスはより多くのアドレスをカバーし、大きいプレフィックスはより少ないアドレスをカバーします。
サブネットには使用可能なホストが何個ありますか?
の接頭辞の場合 /30 またはそれより小さい場合、最初のアドレスがネットワークであり、最後がブロードキャストであるため、使用可能なホスト数は合計アドレスから 2 を引いたものになります。 A /24 254 の使用可能なホストがあります /26 62 を持ち、a /30 2 を持っています.2 つの例外は, /31、2 つの使用可能なホストがある、および /32、これは1 を持つ.
ネットワークアドレスとブロードキャストアドレスの違いは何ですか?
ネットワークアドレスはブロック内の最初のアドレスで、すべてのホストビットをゼロに設定してサブネット自体を識別します ブロードキャストアドレスは最後のアドレスで、すべてのホストビットを1 に設定し、それに送信されたパケットは、サブネット上のすべてのホストに一度に送信されます どちらも、通常のサブネット内の個々のホストに割り当てることはできません。
サブネットマスクをCIDRプレフィックスに変換するにはどうすればよいですか?
マスク内の先頭の 1 ビットを数えます。 255.255.255.0 は 24 ワンビットなので、 /24; 255.255.240.0 は20 ビットなので、 /20。電卓は、接頭辞の代わりに点線のマスクを入力すると、この変換を自動的に実行し、マスクが連続していないマスクを拒否します。
ワイルドカードマスクは何に使用されますか?
ワイルドカード マスクはサブネット マスクのビット逆数であるためです /24 与えます 0.0.0.255。 ciscoのアクセス制御リストやospfネットワークステートメントで使用され、ゼロビットとはこのビットと正確に一致し、1ビットとは無視することを意味する。 subnet maskと混同しやすいため、電卓は両方を並べて表示します。
なぜ /31 は 2 つの使用可能なホストを表示するのですか?
RFC 3021 では次のことが許可されます /31 ポイントツーポイントリンク上では、ネットワークとブロードキャストアドレスが必要ないため、その2 つのアドレスの両方が利用可能なホストアドレスになります。 そのルールがなければ a /31 使用可能なホストがゼロになるため、役に立ちません。 A /32 は関連するエッジケースであり、ループバックやホストルートなどの単一のホストを表します。
どのIPv4 範囲がプライベートですか?
RFC 1918 の予備 10.0.0.0/8、 172.16.0.0/12、そして 192.168.0.0/16 プライベートネットワークの場合 これらはパブリックインターネット上でルーティングできず、ほとんどのホームネットワークとオフィスネットワークがNATを行うルーターの背後に使用する範囲です。電卓は、入力したアドレスがそのいずれかに該当するかどうかをフラグを立てます。
この計算機はIPv6 で動作しますか?
いいえ、このツールはIPv4 サブネットのみを計算します。 IPv6 は128 ビットアドレスと16 進数表記を使用するため、サブネットの動作は異なり、専用の計算機が必要です。 IPv4 プランニング、ファイアウォールルール、およびクラウドVPCサイジングの場合、これはほとんどの日常的なサブネット計算が行われる場所ですが、これは一般的なケースをカバーします。



