web-dev-qa-db-ja.com

サブネットマスクがIPアドレスと一致しないのはなぜですか?

マシンにクラス「B」のIPアドレス172.16.XXX.XXXがあります。私のサブネットマスクは255.255.255.XXXです。私は今ネットワーキングを勉強しています。だから今まで私はすべてについてマスキングすることを気にしませんでした。しかし、 Wikipedia から、クラス 'B'のサブネットマスクは255.255.0.0である必要があります。では、なぜ私のマシンは例外なのですか?

私のOSはWindows-7です。

マシンにクラス「B」のIPアドレス172.16.XXX.XXXがあります

しかし、ウィキペディアから、クラス「B」はサブネットマスクとして255.255.0.0を持つ必要があることがわかりました。

「クラスB」のIANA予約プライベートネットワークには、実際にはサブネットマスクがあります255.240.0.、255.255.0.0ではありません。

サブネットマスクがどのように機能するかについて、いくつかの説明をさせてください。

IPアドレスの有効化:

  • ネットワーク上の複数のシステムが相互に通信します。
  • また、あるネットワーク上のコンピューターが別のネットワーク上のコンピューターと通信するための基盤も提供します。

したがって、識別する必要があるのは、コンピューターとそれが存在するネットワークの2つです。左から始まるIPアドレスの一部(すべてではない)はネットワークを識別するために使用され、残りはコンピューター自体を識別します。

サブネットマスクは、この分割を行う場所を決定します。 IPアドレスとサブネットマスクは人間が読みやすいように10進数で記述されていますが、コンピューターはそれらを2進数で処理します。例として、10進数から2進数は次のように機能します。

    128 |  64 |  32 |  16 |   8 |   4 |   2 |   1 |
   -----+-----+-----+-----+-----+-----+-----+-----+
      1 |   0 |   0 |   0 |   0 |   0 |   0 |   1 | = 129 in decimal

もう一度見てください:

255.240.  0.  0 = 11111111 11110000 00000000 00000000
172. 16.  0.  1 = 10101100 00010000 00000000 00000001

サブネットマスクで1でカバーされているものはすべてネットワークに属し、その他はコンピューターに提供できます。 (すべての有効なサブネットマスクには1の数が連続して含まれ、残りは0であるため、サブネットマスクの1の数を表す単一の番号で参照するのが通常です。上記は次のようになります。/12、つまり172.16.0.1 /255.240.0.0ではなく172.16.0.1/12で表されます)


そのような背景から、サブネット化がどのように機能するかを理解できます。

したがって、ホームネットワークを運用していて、そこにあるすべてのシステムに172.16.0.0/24を使用することにしました。通常、その情報をDHCPサーバーに配置し、DHCPサーバーが残りのほとんどのシステムのセットアップを担当します。 DHCPサーバーに、172.16.0.0/12のアドレスの範囲(おそらく172.16.0.1から172.16.254.255)を提供し、残りをサーバーなどに残すように指示することができます。これらすべてのサブネットマスクは、255.240.0.0または/ 12に設定されます。これには最大1,048,576から2台のコンピューターを差し引いたものを使用できます(0は予約済みのままにする必要があり、最大は常にブロードキャストアドレスです)。

しかし、何かのために2番目のネットワークを使用したい場合は、おそらくDMZまたは、いくつかのマシンを分離したままにします。ここでサブネット化が役立ちます。

255.240.  0.  0 = 11111111 11110000 00000000 00000000 (/12)
172. 16.  0.  1 = 10101100 00010000 00000000 00000001

ここでネットワーク用に数ビットを予約して、複数のネットワークを自分の制御下に置くことができますが、それらの中にホストを少なくすることができます。

したがって、必要に応じて、DHCPサーバーにサブネットマスク255.255.0.0と、172.16.0.1から172.16.255.254のようなIPアドレスの範囲を配布するように指示できます。これはネットワーク0になります。

255.255.  0.  0 = 11111111 11111111 00000000 00000000 (/16)
                               XXXX   
172. 16.  0.  1 = 10101100 00010000 00000000 00000001

XXXXは、コンピューターではなく、ネットワークに割り当てるために予約しているビットです。

次に、172.17.0.1から172.17.255.254を処理する傾向があるかどうかを、2番目のルーターに伝えることができます。それらは分離されており、172.16.0.0/16(16 = 255.255.0.0)と172.17.0.0/16のコンピューターを接続するには別のルーターが必要です。

(これは、NATを考慮せず、これらのネットワークへのインターネット接続を取得しようとするため、事態が複雑になります。)

私はあなたがその考えを理解することを望みます。家庭環境では実際にはあまり多くのことをしませんが、ビジネス環境では間違いなくそうします。上記の理由により、255.255.0.0が172.16.XXX.XXXおよび255.240.0.0で機能することをお知らせするために、これらすべてについて説明します。

6
LawrenceC

クラスフルアドレス指定は、10年以上にわたって廃止されています。デフォルトのサブネットマスクについては、もう誰も気にしません。何らかの理由で試験がそれについて尋ね続けるので、あなたはそれを知る必要があるだけです。クラスBスペースの/ 16を/ 24に分割することは完全にルーチンです。

4
David Schwartz

クラスフルルーティングは [〜#〜] cidr [〜#〜] に置き換えられました。したがって、IPv4アドレスのネットワーク部分とホスト部分の間の分割はサブネットマスクによって決定され、アドレスが以前にどのクラスに分類されたかは関係ありません。したがって、あなたのマシンも例外ではありません。

4
mkalkov

以前にクラスCアドレスがあり、/ 24サブネットマスクが自動的に割り当てられたことが原因である可能性があります。また、IPをクラスBアドレスに変更した場合、デフォルトでは変更されないサブネットマスクは255.255.255.0のままでした。

Windowsマシンでは、IPが変更/編集されたときにサブネットマスクが自動割り当てされません。

172.16.x.y IPアドレスと255.255.255.zマスクを使用する場合、ホスト範囲は値「z」に依存します。 Check Range

When z= 0; Range 172.16.x.1 - 172.16.x.254
     z= 126; Range 1 - 126
     .
     .
     .
     z=252; Range 172.16.x.1 - 172.16.x.2
0
pulsarjune