この章では、コスト効率のよい整然とした方法でネットワークを構築するために解決しておく必要のある事柄について説明します。これらの事柄を解決後、ネットワークを設定し引き続き管理するための計画を立てることができます。以下の項目について説明します。
ネットワークのライフサイクルの最初の段階は、ネットワークの設計です。この段階では、まず、組織のニーズを満たす最適のネットワークの種類を決定することから始めます。計画段階で行う決定には、たとえば次のように、ネットワークハードウェアに関連したものがいくつかあります。
ネットワークがサポートするホストマシンの数
使用するネットワークメディアの種類。たとえば、Ethernet、トークンリング、FDDI など
ネットワークトポロジ、すなわちネットワークハードウェアの物理的なレイアウトと接続
ネットワークがサポートするホストの種類。スタンドアロン、データレス
これらの要因に基づいて、ローカルエリアネットワークのサイズを決定できます。
ネットワークハードウェアの計画については、本書では説明しません。詳細は、ハードウェアに付属しているマニュアルを参照してください。
ハードウェアの計画後は、次に、ソフトウェアに重点を置いたネットワーク計画に着手することができます。
この計画工程では次のような手順が必要になります。
ネットワーク番号を入手し、必要に応じてネットワークドメインを InterNIC に登録します。
IP ネットワーク番号を受け取ったら、ホストに適用する IP アドレス指定スキーマを考えます。
ネットワークを形成するすべてのマシンの IP アドレスとホスト名を含むリストを作成します。これは、ネットワークデータベースの構築の際に利用できます。
ネットワークでどのネームサービスを使用するかを決定します。使用できるのは、NIS、NIS+、DNS、または、ローカルな /etc ディレクトリにあるネットワークデータベースのどれかです。
必要に応じて、管理作業を分担するための区分を設定します。
ネットワークがルーターを必要とするような規模のものかどうかを判断し、必要なら、ルーターをサポートするようなネットワークトポロジを作成します。
必要に応じて、サブネットを設定します。
この章では、上記の要素を念頭に置きながらネットワークの計画を立てる方法について説明します。
サポートを予定しているマシンの数によって、このサイトでのネットワーク設定について、現段階で行ういくつかの決定事項が影響を受けます。組織によっては、1 つの階または 1 つのビルの中にある数十台のスタンドアロンマシンから成る小さいネットワークが必要な場合もあります。また、複数のビルに散在する 1000 以上のホストを持つネットワークの設定が必要な場合もあります。このような大きい配置の場合は、ネットワークをサブネットと呼ばれる小区分に分割することが必要になる場合もあります。予定されているネットワークのサイズは、次の事項に影響を与えます。
適用するネットワーククラス
受け取るネットワーク番号
ネットワークで使用する IP アドレス指定スキーマ
ネットワーク番号を入手し、IP アドレス指定スキーマを確立することは、ネットワーク管理の計画段階において、最も重要な作業の 1 つです。
所属している組織に複数のネットワーク番号が割り当てられているか、またはサブネットを使用している場合は、組織内でネットワーク番号を割り当てる総括責任者 (人または部門) を指名してください。この責任者が、割り当てられたネットワーク番号のプールを管理する権限を保持し、ネットワーク、サブネット、ホスト番号を必要に応じて割り当てます。問題の発生を避けるために、組織内に重複したネットワーク番号や無秩序なネットワーク番号が生じることのないように注意してください。IPv6 への移行を計画している場合は、第 15 章「IPv4 から IPv6 への移行」を参照してください。
ネットワーク番号を受け取ったら、IPv4 アドレスのホスト部をどのように割り当てるかについて、計画を立てることができます。
表 5-1 は、IPv4 アドレス空間がどのようにネットワークアドレス空間とホストアドレス空間に分かれるかを示しています。どのクラスについても、「範囲」の欄は、ネットワーク番号の最初のバイトの 10 進数値の範囲を示しています。「ネットワークアドレス」は、IPv4 アドレスの中でネットワーク部の働きをするバイト数を示し、xxx が 1 バイトを表しています。「ホストアドレス」は、アドレスのホスト部を表すバイト数を示します。たとえばクラス A ネットワークアドレスの場合は、最初の 1 バイトがネットワーク番号で、残りの 3 バイトがホスト番号です。クラス C ネットワークの場合は、この関係が逆になります。
表 5-1 IPv4 アドレス空間の区分
クラス |
範囲 |
ネットワークアドレス |
ホストアドレス |
---|---|---|---|
1 〜 127 |
xxx |
xxx.xxx.xxx |
|
128 〜 191 |
xxx.xxx |
xxx.xxx |
|
192 〜 223 |
xxx.xxx.xxx |
xxx |
IPv4 アドレスの最初のバイトの数値は、ネットワークがクラス A、B、C のどれであるかを示す値で、常に InterNIC が割り当てます。残りの 3 つのバイトの値の範囲は、どれも 0〜255 です。番号 0 と 255 は予約されています。ネットワーク管理者は、割り当てられているネットワーク番号に応じて、各バイトに 1〜254 の範囲内の番号を指定することができます。
表 5-2 は、IPv4 アドレスのどのバイトがインターネットから割り当てられ、ホストへの割り当てが可能な各バイトにどの範囲の値を指定できるかを示しています。
表 5-2 使用できる番号の範囲
ネットワーククラス |
バイト 1 の範囲 |
バイト 2 の範囲 |
バイト 3 の範囲 |
バイト 4 の範囲 |
---|---|---|---|---|
0 〜 127 |
1 〜 254 |
1 〜 254 |
1 〜 254 |
|
128 〜 191 |
インターネットにより事前割り当て |
1 〜 254 |
1 〜 254 |
|
192 〜 223 |
インターネットにより事前割り当て |
インターネットにより事前割り当て |
1 〜 254 |
「ネットワークインタフェース」 で説明しているように、ネットワークに接続するには、コンピュータは少なくとも 1 つはネットワークインタフェースを持っている必要があります。各ネットワークインタフェースは、それぞれ一意な IP アドレスを持っていなければなりません。管理者がホストに与えた IP アドレスはそのホストのネットワークインタフェースに割り当てられます。このインタフェースは、一次ネットワークインタフェースと呼ばれることがあります。あるマシンに第 2 のネットワークインタフェースを追加した場合は、それにも一意な IP アドレスが必要です。「ルーターの構成」で説明したように、第 2 のネットワークインタフェースを追加すると、マシンの機能がホストからルーターに変わります。ホストに第 2 のネットワークインタフェースを追加し、しかもルーティング機能を無効にした場合は、そのホストはマルチホームホストとみなされます。
/devices ディレクトリには、各ネットワークインタフェースのデバイス名、デバイスドライバ、関連のデバイスファイルが入っています。ネットワークインタフェースのデバイス名には、たとえば le0 または smc0 などがあります。これらは、よく使用される 2 つの Ethernet インタフェースのデバイス名です。
本書では、Ethernet ネットワークインタフェースを持つマシンを想定して説明を進めます。別のネットワークメディアを使用する予定の場合は、そのネットワークインタフェースのマニュアルの中の構成に関する情報を参照してください。
割り当てられたネットワーク番号を受け取り、ホストの IP アドレスを指定してしまったら、次に行う作業は、ホストに名前を割り当て、ネットワーク上のネームサービスをどのように扱うかを決めることです。これらの名前は、最初にネットワークを設定するときに使用するほか、後日ルーターや PPP を使用してネットワークを拡張するときにも使用します。
TCP/IP は、ネットワーク上の特定のマシンを見つけるときに、そのマシンの IP アドレスを使用します。しかし、人間にとっては、マシンに意味のある名前が付いている方が、識別しやすくて便利です。したがって、TCP/IP プロトコル (および Solaris オペレーティングシステム) では、マシンを一意なものとして識別するために、IP アドレスとホスト名の両方が必要です。
TCP/IP の視点から見れば、ネットワークは名前が付けられたエンティティの集合です。ホストは名前が付けられた 1 個のエンティティです。ルーターも名前が付けられた 1 個のエンティティです。さらに、ネットワークも名前が付けられた 1 個のエンティティです。ネットワークがインストールされているグループや部門にも、名前を付けることができます。部課、地区、会社も同様です。理論的には、ネットワークとそのマシンを識別するために使用できる名前の階層については、事実上まったく制限はありません。名前が付けられたこれらのエンティティを総称してドメインと呼びます。
多くのサイトでは、各ユーザーがそれぞれのマシンの名前を選定しています。サーバーにも少なくとも 1 つのホスト名が必要で、このホスト名は一次ネットワークインタフェースの IP アドレスに関連付けられます。
ネットワーク管理者は、自己の管轄ドメイン内のすべてのホスト名が一意なものであることを確認する必要があります。たとえば、ネットワーク内の "fred" というマシンが複数の IP アドレスを持っていてもかまいませんが、ネットワーク内に "fred" という名前を持つマシンが 2 つあってはなりません。
ネットワークの計画を立てるときは、IP アドレスとそれぞれのホスト名のリストを作って、設定工程中に各マシンに簡単にアクセスできるようにしてください。このリストは、すべてのホスト名が一意かどうかを検査するために役立ちます。
Solaris オペレーティングシステムでは、4 種類のネームサービスのどれでも任意に選択して使用できるようになっています。4 つのネームサービスとは、ローカルファイル、NIS、NIS+、DNS です。ネームサービスは、ネットワーク上のマシンに関する重要な情報、たとえばホスト名、IP アドレス、Ethernet アドレスなどを保持しています。
オペレーティングシステムをインストールするときに、その手順の一環として、サーバーマシン、クライアントマシン、スタンドアロンマシンのホスト名と IP アドレスを入力します。Solaris インストールプログラムは、hosts データベースと ipnodes データベースという 2 つのネットワークデータベースにこの情報を格納します。これらのデータベースは、ネットワーク上の TCP/IP の動作に必要な情報を格納しているネットワークデータベースセットの一部です。これらのデータベースは、管理者が自己のネットワーク用として選択したネームサービスにより読み取られます。
ネットワークデータベースの設定は、ネットワーク構成の重要な部分です。したがって、ネットワーク計画工程の一環として、どのネームサービスを使用するかを決定する必要があります。ネームサービスの使用の決定は、ネットワークを管理ドメインとして編成するかどうかにも影響を与えます。ネットワークデータベースのセットについては、「ネットワークデータベースと nsswitch.conf ファイル」に詳しい説明があります。
NIS、NIS+、DNS ネームサービスは、ネットワーク内のいくつかのサーバー上にネットワークデータベースを維持します。これらのネームサービスとそれぞれの設定方法については、『Solaris ネーミングの設定と構成』 に詳しい説明があります。「名前空間」と「管理ドメイン」の概念に関する説明も出ています。ネームサービスを NIS から NIS+ に変更する場合は、 『NIS+ への移行』を参照してください。これらのマニュアルは、ネットワークでこれらのネームサービスのどれを使用するかを決める際の参考として役立ちます。
NIS、NIS+、DNS のどれも実装しない場合は、ネットワークはローカルファイルを使用してネームサービスの機能を提供します。「ローカルファイル」とは、ネットワークデータベースが使用するためのものとして /etc ディレクトリに入っている一連のファイルのことです。本書に示す手順では、特に断らない限り、ネームサービスとしてローカルファイルを使用しているものとします。
ネットワーク用のネームサービスとしてローカルファイルを使用することに決めた場合、後日別のネームサービスを設定することもできます。
多くのネットワークでは、ホストとルーターが管理ドメインの階層の形で編成されます。NIS、NIS+、DNS のどれかのネームサービスを使用する場合は、所属組織のドメイン名として、全世界の中で一意な名前を選択する必要があります。ドメイン名が一意であることを確認するには、そのドメイン名を InterNIC に登録する必要があります。特に、DNS の使用を予定している場合は、この処置が重要です。
ドメイン名は階層構造になっています。一般に、新規のドメインは、既存の関連ドメインの下に配置されます。たとえば、子会社のドメイン名はその親会社のドメイン名の下に配置されます。特に他との関連性のない組織のドメイン名は、既存の最上位ドメインのいずれかの下に直接配置できます。
.com - 民間企業 (世界規模)
.edu - 教育機関 (世界規模)
.gov - アメリカ政府機関
.fr - フランス
組織を識別する名前は、一意なものであるという条件を満たしていれば、ネットワーク管理者が任意に選択できます。
管理作業の分化の目的は、サイズと制御に関する事項を解決することにあります。ネットワーク内のホストとサーバーの数が増えるに従って、管理作業はますます複雑になります。このような状況に対処するための方法としては、管理部門を増設することが考えられます。そのためには、特定のクラスのネットワークを増設するか、または既存のネットワークをサブネットに分割します。ネットワーク管理の作業を分化するかどうかを決める点には、次のものがあります。
ネットワークの規模
数百台のホストから成る単一のネットワークにおいて、すべてのホストが物理的に同じ場所にありしかも同じ管理サービスを必要とするものである場合は、1 つの管理部門だけで対処できるでしょう。これに対して、マシン数がもっと少ない場合でも、ネットワークが多数のサブネットに分割されていて、しかも地理的に広い範囲に散在しているとすれば、複数の管理部門を設立する方が効率的になります。
ネットワーク上のユーザーのニーズが共通しているかどうか
たとえば、1 つのビル内だけに限定され比較的少数のマシンをサポートするネットワークがあるとします。また、このネットワークのマシンがいくつかのサブネットワークに分割され、各サブネットワークがそれぞれ大幅にニーズの異なるユーザーのグループをサポートしているとします。このような場合は、各サブネットごとに管理部門を設けるとよいでしょう。
管理作業の分化についての詳細は、『Solaris ネーミングの管理』で説明しています。
Solaris ネットワーク上のマシンに IP アドレスを割り当てるには、その前に InterNIC からネットワーク番号を入手する必要があります。さらに、管理ドメインの使用を予定している場合は、管理ドメインを InterNIC に登録することも必要です。
InterNIC は、インターネットのユーザーに以下の情報を提供するための本部組織として、1993 年に創立されました。
インターネットの運営方針
インターネットへのアクセス方法。これには研修サービスも含まれる
インターネットのユーザーが利用できる資源。たとえば、匿名 FTP サーバー、Usenet ユーザーグループなど
InterNIC には、ユーザーが TCP/IP ネットワークを登録する InterNIC Registration Services という組織も含まれています。InterNIC Registration Services は、ネットワークを入手しドメインを登録するためのテンプレートを提供しています。登録については、次の 2 つの点に注意してください。
ネットワークを他の既存の TCP/IP ネットワークに接続する予定がなくても、勝手なネットワーク番号を割り当てることはしないでください。
サブネット番号は InterNIC が割り当てるものではありません。この番号は、割り当てられたネットワーク番号と、ネットワーク管理者が指定する番号を組み合わせたものとなります。これについては、「サブネット化とは」で説明します。
InterNIC Registration Services には次の方法で連絡できます。
郵便
Network Solutions Attn: InterNIC Registration Services 505 Huntmar Park Drive Herndon, Virginia 22070
電話
電話番号は、米国の 703-742-4777 です。電話サービスの利用可能時間は、米国東部標準時で午前 7 時から午後 7 時までです。
Gopher と WAIS インタフェースを使用した匿名 FTP または Telnet 照会
rs.internic.net に接続します (本書では、匿名 FTP と Telnet については説明しませんが、コンピュータ関係の書店にこれらの事項に関する書籍がそろっています)。
TCP/IP から見た場合、ネットワーク上に存在するのは、2 つの種類のエンティティ、つまりホストとルーターだけです。ホストはすべてのネットワークに必要がありますが、ルーターはすべてのネットワークに必要なわけではありません。ルーターを使用するかどうかは、ネットワークの物理的なトポロジによって異なります。この節では、ネットワークトポロジとルーティングの概念を紹介します。この概念は、既存のネットワークに別のネットワークを追加しようとするときに、重要な意味を持ちます。
ネットワークトポロジは、複数のネットワークの相互関係を示します。ルーターは、ネットワークを相互に接続するエンティティです。TCP/IP の視点から見れば、ルーターは複数のネットワークインタフェースを持つ任意のマシンです。しかし、マシンをルーターとして機能させるためには、「ルーターの構成」の説明に従って、そのルーターを正しく構成しておく必要があります。
複数のネットワークをルーターによって接続することで、より大きなインターネットワークを作ることができます。ルーターは、隣接する 2 つのネットワーク間でパケットの受け渡しをするように構成する必要があります。さらに、隣接するネットワークを越えた位置にあるネットワークに、パケットを渡す機能も備えられている必要があります。
図 5-1 に、ネットワークトポロジの基本部分を示します。最初の図は、2 つのネットワークを 1 台のルーターで接続した単純な構成です。2 番目の図は、3 つのネットワークを 2 台のルーターで相互接続した構成を示しています。最初の例では、ネットワーク 1 とネットワーク 2 がルーター R で連結されて、より大きなインターネットワークが作られています。2 番目の例では、ルーター R1 がネットワーク 1 とネットワーク 2 を接続し、ルーター R2 がネットワーク 2 とネットワーク 3 を接続して、ネットワーク 1、2、3 から成る 1 つのネットワークが作られています。
ルーターは、ネットワークを連結してインターネットワークを作り、宛先ネットワークのアドレスに基づいて、ネットワーク相互間でパケットをルーティングします。インターネットワークがより複雑になるにつれて、パケットをどこに送るかについての各ルーターでの決定の回数は増加します。
複雑さの度合の増加を示す例として、Failed Cross Reference Formatのような場合が考えられます。この例では、ネットワーク 1 とネットワーク 3 が、ルーター R3 により直接接続されています。このような冗長な方法を使用する目的は、信頼性にあります。ネットワーク 2 がダウンしても、ルーター R3 はネットワーク 1 と 3 の間のルートを提供することができます。すべてが同じネットワークプロトコルに従っていれば、ネットワークをいくつでも相互接続して、互いに通信させることができます。
ネットワーク上でのルーティングに関する決定は、パケットヘッダーに含まれている受信側 IP アドレスのネットワーク部に基づいて行われます。このアドレスにローカルネットワークのネットワーク番号が含まれている場合は、その IP アドレスを持つホストに直接パケットが送られます。ネットワーク番号がローカルネットワークではない場合は、パケットはローカルネットワーク上のルーターに送られます。
ルーターは、ルーティングテーブル内にルーティング情報を維持します。このテーブルには、ルーターが接続されているネットワーク上のホストとルーターの IP アドレスが含まれています。また、それらのネットワークを指すポインタも含まれています。ルーターは、パケットを受け取ると、ルーティングテーブルを調べて、ヘッダー内の宛先アドレスがテーブルにリストされているかどうかを確認します。テーブルにその宛先アドレスが含まれていない場合は、ルーターは、ルーティングテーブルにリストされている他のルーターにパケットを転送します。ルーターについての詳細は、 「ルーターの構成」を参照してください。
図 5-3 は、2 つのルーターにより接続された 3 つのネットワークのネットワークトポロジを示しています。
ルーター R1 は、ネットワーク 192.9.200 とネットワーク 192.9.201 と接続しています。ルーター R2 は、ネットワーク 192.9.201 とネットワーク 192.9.202 を接続しています。ネットワーク 192.9.200 のホスト A がネットワーク 192.9.202 のホスト B にメッセージを送るとすると、その操作は次の手順で行われます。
ホスト A は、ネットワーク 192.9.200 にパケットを送り出します。パケットヘッダーには、受信側ホスト B の IPv4 アドレスである 192.9.202.10 が含まれています。
ネットワーク 192.9.200 には、192.9.202.10 の IPv4 アドレスを持つマシンはありません。したがって、ルーター R1 がパケットを受け取ります。
ルーター R1 は自己のルーティングテーブルを調べます。ネットワーク 192.9.201 には、アドレスが 192.9.202.10 であるマシンはありません。ただし、ルーティングテーブルにはルーター R2 がリストされています。
R1 は「次のリレー」ルーターとして R2 を選択し、パケットを R2 に送ります。
R2 はネットワーク 192.9.201 を 192.9.202 に接続しているので、ホスト B に関するルーティング情報を保持しています。そこで、ルーター R2 はパケットをネットワーク 192.9.202 に転送し、ホスト B がそのパケットを受け取ります。