TCP/IP アドレスの割り当てとサブネット化に関する基礎知識

文書翻訳 文書翻訳
文書番号: 164015 - 対象製品
この記事は、以前は次の ID で公開されていました: JP164015
すべて展開する | すべて折りたたむ

目次

はじめに

Microsoft Windows コンピューターで TCP/IP プロトコルを構成するときには、TCP/IP の構成設定として、IP アドレス、サブネット マスク、および通常はデフォルト ゲートウェイが必要になります。

TCP/IP を正しく構成するためには、TCP/IP ネットワークでどのようにアドレスが割り当てられ、どのように複数のネットワークとサブネットワークに分割されるのかを理解する必要があります。この資料では、IP ネットワークとサブネット化の概要について説明します。この資料の最後には、用語集も掲載しています。

詳細

インターネットのネットワーク プロトコルとして TCP/IP が普及した大きな理由は、異なる規模のネットワークや異なる種類のシステムを互いに接続できる点にあります。これらのネットワークは、定義済みのサイズを持った 3 つの主要なクラス (およびその他の少数のクラス) に分類されます。システム管理者は、各ネットワークをより小規模なサブネットワークに分割することもできます。IP アドレスは、サブネット マスクを使用して 2 つの部分に分けられます。一方はホスト (コンピューター) を識別し、もう一方はそのホストが所属するネットワークを識別します。ここでは、IP アドレスとサブネット マスクの機能をよりよく理解するために、IP (インターネット プロトコル) アドレスに着目し、それがどのように構成されているかを見ていきます。

IP アドレス: ネットワークとホスト

IP アドレスとは、TCP/IP ネットワーク上で 1 つのホスト (コンピューター、またはプリンターやルーターなどのデバイス) を一意に識別する 32 ビットの数値です。

通常、IP アドレスはドット区切りの 10 進形式で表現され、ピリオドで区切られた 4 つの数値で構成されます (192.168.123.132 など)。ホスト、ネットワーク、およびサブネットワークの識別に、どのようにサブネット マスクが使用されるかを理解するため、IP アドレスを 2 進表記にして調べます。

たとえば、ドット区切り 10 進形式の IP アドレス 192.168.123.132 は、2 進表記で 110000000101000111101110000100 という 32 ビットの数値です。この数値のままではわかりにくいので、4 つの 8 桁の 2 進数に分割します。

これらの 8 ビットの各部分は、オクテットと呼ばれます。前の例の IP アドレスを分割すると、11000000.10101000.01111011.10000100 になります。この数値も、わかりにくいという点ではあまり変わりません。そこで、2 進表記のアドレスをドット区切りの 10 進形式 (192.168.123.132) に変換します。ピリオドで区切られた 10 進数は、各オクテットを 2 進表記から 10 進表記に変換したものです。

複数のネットワークが集合した TCP/IP ワイド エリア ネットワーク (WAN) では、ネットワーク間でのデータ パケットの送受信はルーターによって行われます。効率を高めるため、ルーターは、情報パケットに指定された宛先ホストの正確な位置には関知しないようになっています。ルーターが認識するのは、宛先ホストが属しているネットワークだけです。ルーターは、ルート テーブルに格納されている情報を使用して、宛先ホストのネットワークにパケットを到達させる方法を決定します。パケットは、宛先のネットワークに配信された後、適切なホストに配信されます。

このような処理を実現するために、IP アドレスには 2 つの部分が含まれています。IP アドレスの最初の部分はネットワーク アドレスとして使用され、残りの部分はホスト アドレスとして使用されます。例として、192.168.123.132 を 2 つの部分に分割すると次のようになります。
192.168.123.    ネットワーク
           .132 ホスト
				
または
192.168.123.0 - ネットワーク アドレス
0.0.0.132     - ホスト アドレス
				

サブネット マスク

TCP/IP の動作に必要なもう 1 つの項目として、サブネット マスクがあります。TCP/IP プロトコルでは、ホストがローカル サブネット上に存在するか、リモート ネットワーク上に存在するかを判別するために、サブネット マスクが使用されます。

TCP/IP では、ネットワーク アドレスおよびホスト アドレスとして使用される IP アドレスの部分は固定ではありません。したがって、前の例のネットワーク アドレスとホスト アドレスは、より詳細な情報がなければ決定できません。この情報は、サブネット マスクと呼ばれる別の 32 ビットの数値によって与えられます。この例では、サブネット マスクが 255.255.255.0 であるとします。この数値の意味を理解するためには、255 の 2 進表記が 11111111 であることを知っておく必要があります。つまり、このサブネット マスクは次のように表現できます。
   11111111.11111111.11111111.0000000
				
IP アドレスとサブネット マスクを並べて比較すると、アドレスのネットワーク部分とホスト部分を分離できます。
11000000.10101000.01111011.10000100 -- IP アドレス (192.168.123.132)
11111111.11111111.11111111.00000000 -- サブネット マスク (255.255.255.0)
				
最初の 24 ビット (サブネット マスクの数値が 1 の部分) は、ネットワーク アドレスとして識別されます。最後の 8 ビット (サブネット マスクの数値が 0 の部分) は、ホスト アドレスを示します。つまり、前の例は次のように解釈されます。
11000000.10101000.01111011.00000000 -- ネットワーク アドレス (192.168.123.0)
00000000.00000000.00000000.10000100 -- ホスト アドレス (000.000.000.132)
				
この例では、255.255.255.0 というサブネット マスクから、ネットワーク ID が 192.168.123.0、ホスト アドレスが 0.0.0.132 であることがわかりました。192.168.123.0 サブネットに (ローカル サブネットまたはリモート ネットワークから) パケットが到達し、その宛先アドレスが 192.168.123.132 の場合は、このコンピューターがネットワークからパケットを受信して処理することになります。

ほとんどの 10 進数のサブネット マスクは、左側がすべて 1 で右側がすべて 0 の 2 進数に変換されます。他によく使われるサブネット マスクとして、次のようなものがあります。
10 進                   2 進
   255.255.255.192         1111111.11111111.1111111.11000000
   255.255.255.224         1111111.11111111.1111111.11100000
				
TCP/IP ネットワークで使用できる有効なサブネットおよびサブネット マスクについては、インターネット RFC 1878 (http://www.nic.ad.jp/ja/translation/rfc/1878.html で参照可能) に記載されています。

ネットワーク クラス

インターネット アドレスは、インターネットの管理組織である JPNIC (http://www.nic.ad.jp) によって割り当てられます。これらの IP アドレスは複数のクラスに分けられています。最も一般的なものは、クラス A、クラス B、およびクラス C です。クラス D とクラス E も存在しますが、通常はエンド ユーザーが使用することはありません。各アドレス クラスには、別々の既定のサブネット マスクが割り当てられています。IP アドレスのクラスは、そのアドレスの最初のオクテットを調べることによって識別できます。クラス A、クラス B、およびクラス C のインターネット アドレスの範囲と例を以下に示します。
  • クラス A のネットワークでは、既定のサブネット マスクとして 255.0.0.0 が使用され、最初のオクテットは 0 〜 127 になります。10.52.36.11 はクラス A アドレスです。最初のオクテットは 10 で、1 〜 126 の範囲内にあります。
  • クラス B のネットワークでは、既定のサブネット マスクとして 255.255.0.0 が使用され、最初のオクテットは 128 〜 191 になります。172.16.52.63 はクラス B アドレスです。最初のオクテットは 172 で、128 〜 191 の範囲内にあります。
  • クラス C のネットワークでは、既定のサブネット マスクとして 255.255.255.0 が使用され、最初のオクテットは 192 〜 223 になります。192.168.123.132 はクラス C アドレスです。最初のオクテットは 192 で、192 〜 223 の範囲内にあります。
状況によっては、ネットワークの物理的なトポロジのために既定のサブネット マスクの値が組織のニーズに合わなかったり、ネットワーク (またはホスト) の数が既定のサブネット マスクの制限を超えていたりすることがあります。次の「サブネット化」では、サブネット マスクを使用したネットワークの分割について説明します。

サブネット化

クラス A、クラス B、またはクラス C の TCP/IP ネットワークは、システム管理者によってさらに分割されることがあります。これをサブネット化と呼びます。この手法は、インターネット (IP アドレスとサブネットで構成される抽象的な空間) の論理アドレス スキームを実環境の物理ネットワークに適用するときに必要となります。

IP アドレスのブロックが割り当てられても、運用中のネットワークの構成がこれらのアドレスにうまく適合するとは限りません。たとえば、150 台のホストが存在するワイド エリア ネットワークがあり、互いに離れた場所に位置する 3 つのネットワークが TCP/IP ルーターによって接続されているとします。3 つのネットワークには、それぞれ 50 台のホストが含まれています。このような状況で、クラス C のネットワーク 192.168.123.0 が割り当てられたとします (このアドレスは説明のために使用するもので、実際にはインターネット上には割り当てられない範囲に含まれています)。つまり、192.168.123.1 から 192.168.123.254 までのアドレスを 150 台のホストで使用できます。

2 進表記でホスト部分がすべて 1 または 0 になるアドレスは無効なため、この例では 192.168.123.0 と 192.168.123.255 の 2 つのアドレスは使用できません。0 のアドレスは、ホストを明示せずにネットワークを指定するために使用されます。255 のアドレス (2 進表記でホスト アドレスがすべて 1 になるアドレス) は、ネットワーク上のすべてのホストにメッセージをブロードキャストするために使用されます。つまり、どのようなネットワークでもサブネットでも、最初と最後のアドレスを特定のホストに割り当てることはできないということです。

この点を考慮すると、IP アドレスを割り当てることのできるホストは 254 台になります。150 台のコンピューターがすべて単一のネットワーク上に存在する場合は、これで十分です。しかし、この例の 150 台のコンピューターは、分離された 3 つの物理ネットワーク上に存在しています。そこで、ネットワークごとにアドレス ブロックを追加で要求する代わりに、ネットワークをサブネットに分割し、1 つのアドレス ブロックを複数の物理ネットワークで使用できるようにします。

ここでは、ネットワークを 4 つのサブネットに分割します。そのためには、より広範囲のネットワーク アドレスをマスクし、ホスト アドレスとして使用できる範囲を狭めたサブネット マスクを使用します。言い換えると、通常はホスト アドレスとして使用されるいくつかのビットを "流用" し、アドレスのネットワーク部分として使用するわけです。サブネット マスクを 255.255.255.192 とすると、それぞれに 62 台のホストを含む 4 つのネットワークを定義できます。255.255.255.192 は 2 進表記で 1111111.11111111.1111111.11000000 となるため、有効なサブネット マスクです。最後のオクテットの先頭 2 桁がネットワーク アドレスとなり、この部分によって 00000000 (0)、01000000 (64)、10000000 (128)、および 11000000 (192) という追加のネットワークが使用できます (管理者によっては、サブネット マスクとして 255.255.255.192 を使うサブネットワークを 2 つだけ使用することもあります。この詳細については、RFC 1878 を参照してください)。これら 4 つのネットワークでは、2 進数の最後の 6 桁をホスト アドレスとして使用できます。

サブネット マスク 255.255.255.192 を使用すると、192.168.123.0 というネットワークは、192.168.123.0、192.168.123.64、192.168.123.128、および 192.168.123.192 の 4 つのネットワークに分割されます。これら 4 つのネットワークでは、次のアドレスが有効なホスト アドレスになります。
   192.168.123.1-62
   192.168.123.65-126
   192.168.123.129-190
   192.168.123.193-254
				
既に説明したとおり、2 進表記ですべて 1 または 0 となるホスト アドレスは無効なため、最後のオクテットが 0、63、64、127、128、191、192、または 255 のアドレスは使用できません。

この構成がどのように動作するかを理解するために、192.168.123.71 および 192.168.123.133 という 2 つのホスト アドレスについて考えます。既定のクラス C サブネット マスク 255.255.255.0 を使用した場合は、どちらのアドレスも 192.168.123.0 ネットワーク上に存在することになります。しかし、サブネット マスク 255.255.255.192 を使用すると、これらは別々のネットワーク上に存在することになります。つまり、192.168.123.71 は 192.168.123.64 ネットワーク上に、192.168.123.133 は 192.168.123.128 ネットワーク上に存在します。

デフォルト ゲートウェイ

ある TCP/IP コンピューターが別のネットワーク上のホストと通信する必要がある場合、通常はルーターというデバイスを介して通信が行われます。ホストのサブネットを他のネットワークにリンクするルーターは、TCP/IP の用語でデフォルト ゲートウェイと呼ばれます。デフォルト ゲートウェイはホストで指定されます。ここでは、ネットワーク上の他のコンピューターやデバイスに到達するために、パケットをデフォルト ゲートウェイに送信する必要があるかどうかを TCP/IP が判別するしくみについて説明します。

ホストが TCP/IP を使用して他のデバイスと通信するとき、そのホストでは、宛先の IP アドレスおよびホスト IP アドレスのそれぞれに定義されたサブネット マスクを論理積して、ネットワーク アドレスの比較が行われます。この比較の結果から、宛先がローカル ホストであるか、それともリモート ホストであるかが判別されます。

比較処理の結果、宛先がローカル ホストであると判明した場合は、コンピューターからローカル サブネットにパケットが送信されます。宛先がリモート ホストであると判明した場合は、コンピューターの TCP/IP のプロパティで定義されたデフォルト ゲートウェイにパケットが転送されます。そのパケットを適切なサブネットに転送するのは、ルーターの役割です。

トラブルシューティング

TCP/IP ネットワークの問題は、多くの場合、コンピューターの TCP/IP のプロパティで 3 つの主なエントリが正しく構成されていないために発生します。不適切な TCP/IP 構成がネットワーク操作に与える影響を理解すると、多くの一般的な TCP/IP の問題を解決できます。

サブネット マスクが正しくない: ネットワークで使用しているサブネット マスクがアドレス クラスの既定のマスクとは異なる場合、アドレス クラスの既定のサブネット マスクを使用して構成されているクライアントでは、遠隔地のネットワークとは通信できても、近隣のネットワークとの通信に失敗します。たとえば、サブネット化の例と同様に 4 つのサブネットを作成したとします。しかし、TCP/IP の構成で 255.255.255.0 という間違ったサブネット マスクを使用すると、そのホストは、一部のコンピューターが他のサブネット上に存在するということを判別できなくなります。この場合、同一のクラス C アドレスの一部である別の物理ネットワーク上のホストにパケットを送信しても、そのパケットはデフォルト ゲートウェイに送信されず、配信されません。この問題を示す一般的な現象として、コンピューターからローカル ネットワーク上のホストには通信でき、ほとんどのリモート ネットワークとも通信できますが、同一のクラス A、クラス B、またはクラス C アドレスを持つ近隣のリモート ネットワークとの通信が不可能になります。この問題を修正するには、問題のあるホストの TCP/IP の構成で正しいサブネット マスクを入力します。

IP アドレスが正しくない: 互いにローカル ネットワーク上の別々のサブネットに存在するはずの IP アドレスをコンピューターに設定すると、それらのコンピューター間では通信を行うことができなくなります。各コンピューターはルーターを介してパケットを相互に送信しようとしますが、ルーターはパケットを正しく転送できません。リモート ネットワーク上のホストとは通信できても、ローカル ネットワーク上の一部またはすべてのコンピューターと通信できない場合は、この問題が発生しています。この問題を修正するには、同一の物理ネットワーク上のすべてのコンピューターに、同一の IP サブネットの IP アドレスが設定されていることを確認します。1 つのネットワーク セグメントの IP アドレスを使い果たしてしまった場合は、この資料で扱う範囲からは外れますが、いくつかの解決策があります。

デフォルト ゲートウェイが正しくない: 不適切なデフォルト ゲートウェイを指定して構成されたコンピューターでは、そのコンピューターが存在しているネットワーク セグメント上のホストとは通信できても、一部またはすべてのリモート ネットワーク上のホストと通信できなくなります。単一の物理ネットワークに複数のルーターがある場合に、間違ったルーターがデフォルト ゲートウェイとして構成されていると、一部のリモート ネットワークとは通信でき、その他とは通信できないという現象が発生します。この問題は、内部 TCP/IP ネットワークへのルーターと、インターネットに接続された別のルーターが組織に設置されている場合によく発生します。

関連情報

TCP/IP に関する有名な参考文献として、次の 2 つがあります。

『詳解 TCP/IP Vol.1 プロトコル』 W・リチャード・スティーヴンス著、ピアソン・エデュケーション

『TCP/IP によるネットワーク構築 Vol.I 原理・プロトコル・アーキテクチャ』 Douglas E. Comer 著、共立出版

TCP/IP ネットワークのシステム管理者には、これらの参考文献を最低 1 つは入手することを強くお勧めします。

用語集

ブロードキャスト アドレス -- ホスト部分がすべて 1 の IP アドレス。

ホスト -- TCP/IP ネットワーク上のコンピューターまたはその他のデバイス。

インターネット -- ネットワークの世界規模の集合。各ネットワークは相互に接続され、共通の範囲の IP アドレスを共有します。

JPNIC -- インターネット上の IP アドレスの日本国内の管理を行う組織。

IP -- TCP/IP ネットワークまたはインターネットを介してネットワーク パケットを送信するためのネットワーク プロトコル。

IP アドレス -- TCP/IP ネットワークまたはインターネットワーク上のホストに割り当てられる一意の 32 ビット アドレス。

ネットワーク -- この資料では、ネットワークという用語を 2 つの意味で使用しています。単一の物理的なネットワーク セグメントに存在するコンピューターのグループを示す場合と、システム管理者によって割り当てられる IP ネットワーク アドレスの範囲を示す場合があります。

ネットワーク アドレス -- ホスト部分がすべて 1 の IP アドレス。

オクテット -- 8 ビットの数値。32 ビットの IP アドレスは 4 つのオクテットで構成されます。各オクテットの範囲は 00000000 〜 11111111 で、10 進数の 0 〜 255 に相当します。

パケット - TCP/IP ネットワークまたはワイド エリア ネットワークを介して受け渡されるひとかたまりのデータ。

RFC (Request for Comment) -- インターネットの標準仕様を定める文書。

ルーター -- 異なる IP ネットワーク間でネットワーク トラフィックを送受信するデバイス。

サブネット マスク -- IP アドレスのネットワーク部分とホスト部分を識別するために使われる 32 ビットの数値。

サブネット、サブネットワーク -- 大規模なネットワークを等分して作成された小規模なネットワーク。

TCP/IP -- インターネットや大規模なネットワークで広く使用されているプロトコル、標準仕様、およびユーティリティのセット。

ワイド エリア ネットワーク (WAN) -- ルーターで分離される小規模なネットワークが集合した大規模なネットワーク。インターネットは、きわめて大規模な WAN の実例です。
注意 : これは、マイクロソフトのサポート組織内で直接作成された "緊急公開" の資料です。 この資料には、確認中の問題に関する現状ベースの情報が記載されています。 情報提供のスピードを優先するため、資料には誤植が含まれる可能性があり、予告なしに随時改定される場合があります。 その他の考慮事項については、使用条件を参照してください。

プロパティ

文書番号: 164015 - 最終更新日: 2013年3月29日 - リビジョン: 1.0
この資料は以下の製品について記述したものです。
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Workstation 3.1
  • Microsoft Windows NT Workstation 3.5
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Advanced Server 3.1
  • Microsoft Windows 95
キーワード:?
kbnetwork kbusage KB164015
Microsoft Knowledge Base の免責: Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com