ダミーのためのCIDR


46

CIDRが何であり、何に使用されるかは理解していますが、それを頭で計算する方法がまだわかりません。誰かが例について「ダミー」タイプの説明をすることはできますか?


3
完全なサブネット化の質問については、この質問も参照してください。
ゾレダチェ

回答:


78

CIDR(クラスレスドメイン間ルーティング、「キッド」または「サイダー」と発音-コメントに独自のローカルバリアントを追加!)は、IPアドレスのネットワーク部分を定義するシステムです(通常、これはサブネットマスクと考えられます) 。「クラスレス」である理由は、基本クラスよりも柔軟にIPネットワークを破壊する方法を可能にするためです。

IPネットワークが最初に定義されたとき、IPにはバイナリプレフィックスに基づいたクラスがありました。

Class    Binary Prefix    Range                       Network Bits
A        0*               0.0.0.0-127.255.255.255     8
B        10*              128.0.0.0-191.255.255.255   16
C        110*             192.0.0.0-223.255.255.255   24
D        1110*            224.0.0.0-239.255.255.255
E        1111*            240.0.0.0-255.255.255.255

(これは、/ 24を「クラスC」と呼ぶ人々のソースであることに注意してください。ただし、クラスCには特定のプレフィックスが必要なため、厳密な比較ではありません)

これらのバイナリプレフィックスは、IPスペースの大きなチャンクをルーティングするために使用されました。これは、必ずしも必要ではない組織に大きなブロックが割り当てられるため、またクラスCは24ビット単位でしか割り当てられないため、複数のクラスCがルーティングされるとルーティングテーブルが不必要に大きくなるため、非効率的でした。同じ場所。

CIDRは、可変長サブネットマスク(VLSM)をネットワークに適用できるように定義されました。名前が適用されると、アドレスグループまたはネットワークは、所属する自然の「クラス」と直接関係のないグループに分類できます。

VLSMの基本的な前提は、ネットワーク内のネットワークビット数のカウントを提供することです。IPv4アドレスは32ビット整数であるため、VLSMは常に0〜32になります(ただし、長さ0のマスクがあるかどうかはわかりません)。

頭の中でVLSM / CIDRの計算を開始する最も簡単な方法は、「自然な」8ビット境界を理解することです。

CIDR    Dotted Quad
/8      255.0.0.0
/16     255.255.0.0
/24     255.255.255.0
/32     255.255.255.255

(ちなみに、/ 32マスクを使用することは完全に合法であり、ACLではかなり一般的です。これは、単に単一のIPを参照していることを意味します)

それらを把握したら、ホストの数を取得するために上下に移動するのは単純なバイナリ演算です。たとえば、/ 24に256個のIPがある場合(ここではネットワークアドレスとブロードキャストアドレスを省略します。これは別のネットワーク理論の質問です)、サブネットを1ビット(/ 25に)増やすと、ホストスペースが1ビット( 7)、128個のIPがあることを意味します。

これが最後のオクテットの表です。このテーブルを任意のオクテットにシフトして、同等のドット付きクワッドを取得できます。

CIDR    Dotted Quad
/24     255.255.255.0
/25     255.255.255.128
/26     255.255.255.192
/27     255.255.255.224
/28     255.255.255.240
/29     255.255.255.248
/30     255.255.255.252
/31     255.255.255.254
/32     255.255.255.255

これらを別のオクテットにシフトする例として、/ 18(/ 26マイナス8ビットなので、オクテットをシフト)は255.255.192.0になります。


2
奇数、私は通常それが「サイダー」と発音されるのを聞きます
スクラソン2009年

私はそれが地域/組織だと確信しています。...私は誰か呼び出しCIDR「キダー」を聞いた場合、私はわからないんだけど、CDR機能は、多分私はそこからそれを拾った、私の教授による「キダー」と呼ばれていた前に私はLISPプログラミング年かかったとき、私は知っている
jj33

追加のデータポイントと同様に、「サイダー」と聞いただけで、CDRは「カダー」であると教えられました。それぞれに、私は推測する。:-)
ルーク

SaveTheRbtzのおかげで、クラスBの終了範囲を191.255.255.255に変更し、クラスCの開始範囲を192.255.255.255に変更しました。奇妙なことに、バイナリプレフィックスを正しく取得し、計算を行ったことを覚えています。それを見つけてくれてありがとう!
jj33 09年

2
可能であれば、これを+10にします。CIDR / VLSMの素晴らしい説明です。
ジェームズバーネット

8

各オクテットは8の価値があります。

  • 255.0.0.0 / 8
  • 255.255.0.0 / 16
  • 255.255.255.0 / 24
  • 255.255.255.255 / 32

そのため、サブネットをすばやく絞り込めば、最後の8ビットが心配になります。

128, 192, 224, 240, 248, 252, 254, 255

+1  , +2 , +3 , +4 , +5 , +6 , +7 , +8
  • 255.128.0.0 = / 9
  • 255.192.0.0 = / 10
  • 255.224.0.0 = / 11
  • 255.240.0.0 = / 12
  • 255.248.0.0 = / 13
  • 255.252.0.0 = / 14
  • 255.254.0.0 = / 15

それが十分に明確であることを願っています


6

1日遅れで、できれば1ドルも足りません。CIDRは、最上位ビットから始まるIPv4マスク内の連続する1ビットの数(32ビット)です。

10000000 00000000 00000000 00000000 1 =最上位ビット

共通のマスクは/ 8、/ 16、/ 24で、すべて8ビット(オクテット)境界にあります。

11111111 00000000 00000000 00000000 = / 8 = 255.0.0.0

11111111 11111111 00000000 00000000 = / 16 = 255.255.0.0

11111111 11111111 11111111 00000000 = / 24 = 255.255.255.0

オクテットに揃えられていない場合はそれほど難しくありませんが、オクテットが何であるかについての簡単な数学と理解が必要です。

11111111 11111111 11100000 00000000 = / 19

マスクの最初の2オクテットは255.255(/ 16は/ 19未満)です。最後のオクテットは0です(/ 19は/ 24未満です)。これまでのところ

11111111 11111111 11100000 00000000 = / 19 = 255.255.?.0

各オクテットを見るとき、8ビット値、0〜255であることを思い出してください。

0 0 0 0 0 0 0 0 
1
2 6 3 1
8 4 2 6 8 4 2 1

したがって、3番目のオクテット(?)11100000は128 + 64 + 32 = 224です。

11111111 11111111 11100000 00000000 = / 19 = 255.255.224.0


4

自明でないネットワークを手作業で計算することは非常に誤りがちです。代わりにCIDR Calculatorを試してください。


2
誰がこれを投票しましたか?!たとえば、/ 23から255.255.254.0に変換するときに、頭の中のCIDR範囲を誤って計算するのは非常に簡単です。Debianで 'ipcalc'パッケージを使用して手伝います。
マイクポウ

2
私はより良い選択だipcalcと思いますsipcalcが、とにかく+1
SaveTheRbtz

2

それどころか、CIDRを完全に理解し、脳内で計算を行えるのは良いことだと思いますが、計算を再確認したい場合もあります。PHP Subnet Calculatorを使用したい:http : //share-foo.com/SubnetCalc.php

代替テキスト


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.