Solaris のシステム管理 (第 3 巻)

第 13 章 DHCP のリファレンス

この章では、DHCP に関する有益な情報を一覧表示します。ファイルと、それらのファイルを使用するコマンドとの間の関係は説明しますが、コマンドの使用方法は説明しません。コマンドはそれらのマニュアルページにリンクしているため、コマンドをクリックして、そのコマンドの関する情報を検索することができます。

DHCP のコマンド

表 13-1 では、ネットワーク上で DHCP を管理する際に役立つコマンドを一覧表示します。

表 13-1 DHCP で使用されるコマンド
 コマンドのマニュアルページ コマンドの説明
dhtadm(1M)

dhcptab ファイルのオプションとマクロを変更するために使用する。このコマンドは、DHCP 情報を自動的に変更するために作成するスクリプトで最も役立つ。データベース内で特定のオプション値を迅速に検索するには、dhtadm-P オプションを付けて使用し、それを grep コマンドに渡す

pntadm(1M)クライアント ID を IP アドレスに割り当て、場合によっては設定情報を IP アドレスに関連付ける DHCP ネットワークテーブルを変更するのに使用する
dhcpconfig(1M)DHCP サーバーと BOOTP リレーエージェントの設定と設定解除を実行するために使用する。dhcpconfig は、dhtadmpntadm を使用して、dhcptab と DHCP ネットワークテーブルを作成し、変更する
in.dhcpd(1M)DHCP サーバーデーモン。このコマンドは、DHCP サービスの起動と停止のスクリプトである /etc/init.d/dhcp で使用する。デバッグ用の -d のようなデフォルトでないオプションを使用して in.dhcpd を起動できる
dhcpmgr(1M)DHCP Manager。DHCP サービスの設定と管理を行うために使用されるグラフィカルツール。DHCP Manager は、推奨される Solaris DHCP 管理ツール
ifconfig(1M)システムの起動時に使用され、IP アドレスをネットワークインタフェースに割り当てたり、ネットワークインタフェースのパラメータを設定したりする。Solaris DHCP クライアントでは、ifconfig は DHCP を起動し、IP アドレスなどの、ネットワークインタフェースの設定に必要なパラメータを取得する
dhcpinfo(1)クライアントマシンのシステム起動スクリプトによって使用され、DHCP クライアントデーモン (dhcpagent) からホスト名などの情報を取得する。また、スクリプトやコマンド行で dhcpinfo を使用して、特定のパラメータ値を取得することもできる
snoop(1M)ネットワーク間でやり取りされるパケットの内容を取りこみ、表示するのに使用される。snoop は、DHCP サービスに伴う問題を障害追跡する際に役立つ
dhcpagent(1M)DHCP クライアントデーモン。DHCP プロトコルのクライアントサイドを実装している

DHCP のファイル

表 13-2 は、Solaris DHCP に関連するファイルを一覧表示します。

表 13-2 DHCP のデーモンとコマンドが使用するファイル

ファイルのマニュアルページ 

説明 

dhcptab(4)

割り当てられた値とともにオプションとして記録されている設定情報の表。これらの値はマクロにグループ化される。dhcptab ファイルの位置は、DHCP 情報について使用するデータ保存方法によって決まる

dhcp_network(4)

IP アドレスをクライアント ID と設定オプションに割り当てる。DHCP ネットワークテーブルは、172.21.32.0 のようなネットワークの IP アドレスに従って命名される。dhcp_network というファイルはありません。DHCP ネットワークテーブルの位置は、DHCP 情報について使用するデータ保存方法によって決まる

dhcp(4)

DHCP デーモンの起動オプションと、DHCP サービスで使用するデータ保存方法の位置とタイプを記録する。このファイルは、/etc/default ディレクトリに存在する

nsswitch.conf(4)

ネームサービスデータベースの位置と、さまざまな種類の情報を検索する際にデータベースを検索する順序を指定する。正確な設定情報を得るために DHCP サーバーを設定する際に、この nsswitch.conf ファイルが調べられる。このファイルは、/etc ディレクトリに存在する

resolv.conf(4)

DHS リゾルバが使用する情報が入っている。DHCP サーバーの設定中に、このファイルは、DNS ドメインと DNS サーバーに関する情報について調べられる。このファイルは、/etc ディレクトリに存在する

dhcp.interface

DHCP が、dhcp.qe0 のようにファイル名で指定されたクライアントのネットワークインタフェースで使用されることを示す。dhcp.interface ファイルには、クライアント上で DHCP を起動するために使用される ifconfig interface dhcp start option コマンドにオプションとして渡されるコマンドが含まれる場合がある。このファイルは、/etc ディレクトリに存在する

interface.dhc

一定のネットワークインタフェースについて、DHCP から取得される設定パラメータが含まれる。インタフェースの IP アドレスのリースがドロップされると、このクライアントは、/etc/dhcp/interface.dhc にある現在の設定情報をキャッシュする。DHCP が次にこのインタフェースで起動するときに、リースの有効期限内であれば、このクライアントはキャッシュされた情報を使用するように要求する。DHCP サーバーがこの要求を拒否すると、クライアントは標準 DHCP リースネゴシエーション手順を開始する

dhcpagent

dhcpagent クライアントデーモンに関するパラメータ値を設定する。このファイルへのパスは、/etc/default/dhcpagent。これらのパラメータの詳細については、このファイル自体か、デーモンの dhcpagent(1M) のマニュアルページを参照

dhcp_inittab(4)

データ型のような DHCP オプションコードの様相を定義し、ニーモニックラベルを割り当てる。dhcpinfo は、/etc/dhcp/inittab ファイルにある情報を使用して、さらに意味のある情報をユーザーに提供する。このファイルは、/etc/dhcp/dhcptags ファイルに代わる。この入れ替えの詳細については、「DHCP オプション情報」を参照

DHCP オプション情報

DHCP オプション情報は従来、サーバーの dhcptab ファイル、クライアントの dhcptags ファイル、in.dhcpdsnoopdhcpinfodhcpmgr の内部テーブルなど、Solaris DHCP 内の複数の場所に保管されていました。オプション情報を統合するため、Solaris 8 DHCP 製品に /etc/dhcp/inittab ファイルが導入されました。このファイルの詳細については、dhcp_inittab(4) を参照してください。

inittab ファイルは現在、dhcptags ファイルに代わるものとして Solaris DHCP クライアントで使用されています。dhcptags ファイルは、DHCP パケットで受信されたオプションコードに関する情報を取得するために使用されていました。現在、inittab ファイルがこの情報を提供します。将来のリリースでは、DHCP サーバーの in.dhcpdsnoopdhcpmgr のプログラムも、このファイルを使用するようになります。


注 -

Solaris DHCP を使用するサイトの多くは、この変更に影響されません。サイトが影響されるのは、Solaris 8 にアップグレードしようとしているが、以前に新しい DHCP オプションを作成して /etc/dhcp/dhcptags ファイルを変更していて、それらの変更を維持したい場合のみです。アップグレードするときに、dhcptags ファイルが変更されており inittab ファイルを変更する必要があることを、アップグレードログが通知します。


dhcptagsinittab の違い

inittab ファイルには、dhcptags ファイルよりも多くの情報が含まれており、使用する構文が違います。

dhcptags のエントリの例は次の通りです。

33 StaticRt - IPList Static_Routes

33 は DHCP パケットで伝えられる数値コードです。StaticRt はオプション名であり、IPList は期待されるデータが IP アドレスのリストであることを示しています。Static_Routes は、より説明的な名前です。

inittab ファイルは、各オプションを記述した 1 行のレコードから構成されています。そのフォーマットは、dhcptab でシンボルを定義するための形式と似ています。inittab の構文について、表 13-3 で説明します。

表 13-3 DHCP inittab の構文

オプション 

 説明

option-name

オプションの名前。オプション名は、そのオプションのカテゴリ内部で一意である必要がある。また、Standard、Site、Vendor のカテゴリにある、他のオプション名と重複できない。たとえば、同じ名前を持つ Site オプションを 2 つ持つことはできず、Standard のオプションと同じ名前の Site のオプションは作成できない 

category

オプションが所属する名前空間を特定する。Standard、Site、Vendor、Field、または Internal の 1 つにする必要がある 

code

オプションがネットワーク経由で送信されたときにそのオプションを特定する。多くの場合、カテゴリがなくてもコードはオプションを一意に特定する。ただし、Field や Internal のような内部カテゴリの場合は、コードが他の目的のために使用されていることがあるため、広域的に一意ではないことがある。コードは、オプションのカテゴリ内部では一意であることが必要で、Standard と Site のフィールドにあるコードと重複することはできない 

type

このオプションと関連するデータを記述する。有効なタイプは、IP、Ascii、Octet、Number、Bool、Unumber8、Unumber16、Unumber32、Snumber8、Snumber16、Snumber32。number に関しては、先頭に付いている「U」または「S」は、その number が符号付きまたは符号なしであることを表し、あとに続く数字は、ビット数を数字で示したもの 

granularity

このオプションの値全体を構成するデータの単位数を記述する。Number の場合、granularity はバイト数を数字で示したもの 

maximum

このオプションについて許容される値全体の数を記述する。0 は、無限大の数を表す 

consumers

この情報を使用できるプログラムを記述する。この値は s、d、m、i のいずれかにする。s、d、m、i は次のとおり

    s - snoop


    d - in.dhcpd


    m - dhcpmgr


    i - dhcpinfo


inittab のエントリの例は、次の通りです。

StaticRt Standard, 33, IP, 2, 0, sdmi

このエントリは、StaticRt という名前のオプションを記述しています。このオプションは、Standard カテゴリにあり、オプションコード 33 です。データ型が IP、最小値が 2、最大値が無限大 (0) であるため、期待される値は、潜在的には無限の IP アドレスの組です。このオプションを利用するのは sdmi: snoopin.dhcpddhcpmgrdhcpinfo です。

dhcptags エントリの inittab エントリへの変換

以前にエントリを dhcptags ファイルに追加している場合は、新しい inittab ファイルに対応するエントリを追加する必要があります。次の例では、dhcptags エントリの例を inittab フォーマットで表す方法を示しています。

ネットワークに接続されたファックスについて、次の dhcptags エントリを追加したと想定してください。

128 FaxMchn - IP Fax_Machine

コード 128 は、サイトカテゴリになければならないことを意味しており、オプション名は FaxMchn、データタイプは IP です。

対応する inittab エントリは次の通りです。

FaxMchn SITE, 128, IP, 1, 1, sdmi

最小値 1 と最大値 1 は、このオプションについて 1 つの IP アドレスが予想されることを意味しています。

ネットワークハードウェアの ARP 割り当て

ネットワークハードウェアの ARP (Address Resolution Protocol) 割り当ては、DHCP ネットワークテーブルにあるクライアント ID の先頭で指定されます。表 13-4 を使用して、クライアント ID で使用するコードの内容を判定してください。

コードは http://www.iana.com/numbers.html にある ARP registrations セクション内の Internet Assigned Numbers Authority (IANA) によって割り当てられています。

表 13-4 ARP タイプ

コード 

ハードウェアのタイプ 

Ethernet (10MB) 

実験用 Ethernet (3MB) 

Amateur Radio AX.25 

Proteon ProNET トークンリング 

Chaos 

IEEE 802 

ARCNET 

Hyperchannel 

Lanstar 

10 

Autonet Short Address 

11 

LocalTalk 

12 

LocalTalk (IBM PCNet または SYTEK LocalNET) 

13 

Ultra Link 

14 

SMDS 

15 

Frame Relay 

16 

ATM (Asynchronous Transmission Mode) 

17 

HDLC 

18 

Fibre Channel 

19 

ATM (Asynchronous Transmission Mode) 

20 

シリアル回線 

21 

ATM (Asynchronous Transmission Mode) 

22 

MIL-STD-188-220 

23 

Metricom 

24 

IEEE 1394.1995 

25 

MAPOS 

26 

Twinaxial 

27 

EUI-64 

28 

HIPARP