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

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 アドレスが予想されることを意味しています。