hosts データベースには、ネットワーク上のシステムの IPv4 アドレスとホスト名が含まれています。NIS、DNS、または LDAP ネームサービスを使用している場合、hosts データベースは、ホスト情報用として指定されているデータベースに格納されます。たとえば、NIS を実行するネットワークでは、hosts データベースは hostsbyname ファイルに格納されます。
ネームサービス用にローカルファイルを使用する場合、hosts データベースは /etc/inet/hosts ファイルに格納されます。このファイルには、一次ネットワークインタフェースのホスト名と IPv4 アドレス、システムに備わっているほかのネットワークインタフェース、このシステムが検査する必要があるほかのネットワークアドレスが含まれています。
BSD ベースのオペレーティングシステムとの互換性を保つため、/etc/hosts ファイルは /etc/inet/hosts へのシンボリックリンクとなっています。
/etc/inet/hosts ファイルは、次のような基本的な構文を使用します。構文についての詳細は、hosts(4) のマニュアルページを参照してください。
IPv4-address hostname [nicknames] [#comment]
ローカルホストが認識する必要のある各インタフェースの IPv4 アドレスが含まれます。
設定時にシステムに割り当てたホスト名と、ローカルホストが認識しなければならない増設ネットワークインタフェースに割り当てたホスト名が含まれます。
ホストのニックネームが含まれます (省略可能)。
コメント用のフィールドです (省略可能)。
Oracle Solaris インストールプログラムをシステムで実行すると、このプログラムは初期 /etc/inet/hosts ファイルを構成します。このファイルには、ローカルホストにとって必要最小限のエントリが含まれています。エントリには、ループバックアドレス、ホストの IPv4 アドレス、ホスト名が入っています。
たとえば、図 5–1 のシステム tenere に対して、Oracle Solaris インストールプログラムは次のような /etc/inet/hosts ファイルを作成します。
127.0.0.1 localhost loghost #loopback address 192.168.200.3 tenere #host name |
例 10–1では、IPv4 アドレス 127.0.0.1 は「ループバックアドレス」です。ループバックアドレスは、ローカルシステムがプロセス間通信するために使用する予約済みネットワークインタフェースです。このアドレスを使用して、ホストは自分自身にパケットを送信できます。ifconfig コマンドは、ループバックアドレスを使用して、構成と検査を行います (「ifconfig コマンドによるインタフェース構成の監視」を参照)。TCP/IP ネットワークのシステムはすべて、ローカルホスト上での IPv4 ループバックに IP アドレス 127.0.0.1 を使用する必要があります。
IPv4 アドレス 192.168.200.1 と名前 tenere は、ローカルシステムのアドレスとホスト名です。これらは、システムの一次ネットワークインタフェースに割り当てられます。
システムには複数のネットワークインタフェースを持つものがあり、これらはルーターまたはマルチホームホストとなります。システムに接続されるネットワークインタフェースごとに、専用の IP アドレスとそれに割り当てる名前が必要です。インストール時には、一次ネットワークインタフェースを構成する必要があります。特定のシステムがインストール時に複数のインタフェースを持っている場合は、Oracle Solaris インストールプログラムも増設インタフェースに関するプロンプトを表示します。1 つ以上の増設インタフェースをこの時点で構成したり、あとで手動構成を行うことができます。
Oracle Solaris のインストール後、インタフェース情報をシステムの /etc/inet/hosts ファイルに追加することで、ルーターまたはマルチホームホストの増設インタフェースを構成できます。ルーターとマルチホームホストを構成する方法については、「IPv4 ルーターの構成」と 「マルチホームホストの構成」を参照してください。
例 10–2 は、図 5–1 のシステム timbuktu 用の /etc/inet/hosts ファイルを示しています。
127.0.0.1 localhost loghost 192.168.200.70 timbuktu #This is the local host name 192.168.201.10 timbuktu-201 #Interface to network 192.9.201 |
これらの 2 つのインタフェースを使用して、timbuktu はルーターとしてネットワーク 192.168.200 と 192.168.201 に接続します。
NIS と DNS ネームサービス、および LDAP ディレクトリサービスは、ホスト名とアドレスを 1 つまたは複数のサーバーに格納します。これらのサーバーは、各サーバーのネットワーク上のすべてのホストとルーター (もしあれば) に関する情報を含む hosts データベースを保持しています。これらのサービスの詳細については、『Solaris のシステム管理 (ネーミングとディレクトリサービス : DNS、NIS、LDAP 編)』を参照してください。
ローカルファイルをネームサービスに使用するネットワークでは、ローカルファイルモードで実行されるシステムは、そのネットワークのほかのシステムの IPv4 アドレスとホスト名を調べるときに、それぞれの /etc/inet/hosts ファイルを参照します。したがって、これらのシステムの /etc/inet/hosts ファイルには、次の情報が含まれている必要があります。
ループバックアドレス
ローカルシステム (一次ネットワークインタフェース) の IPv4 アドレスとホスト名
このシステムに接続している増設ネットワークインタフェース (もしあれば) の IPv4 アドレスとホスト名
ローカルネットワーク上のすべてのホストの IPv4 アドレスとホスト名
このシステムが認識する必要のあるルーター (もしあれば) の IPv4 アドレスとホスト名
このシステムでホスト名を使用して参照したいシステムの IPv4 アドレス
図 10–1 は、システム tenere の /etc/inet/hosts ファイルを示しています。このシステムはローカルファイルモードで実行されます。このファイルには、192.9.200 ネットワーク上のすべてのシステムの IPv4 アドレスとホスト名が含まれています。また、このファイルにはインタフェース名 timbuktu-201 とその IPv4 アドレスが含まれています。このインタフェースは 192.9.200 ネットワークを 192.9.201 ネットワークに接続しています。
ネットワーククライアントとして構成されたシステムは、そのループバックアドレスと IPv4 アドレス用にローカルの /etc/inet/hosts ファイルを使用します。