Solaris のシステム管理 (IP サービス)

DHCP オプションを使用した作業 (作業マップ)

オプションは、DHCP サーバーがクライアントに渡すネットワーク構成パラメータのキーワードです。Oracle Solaris DHCP サービスでは、標準の DHCP オプションを作成、削除、または変更することはできません。標準オプションは DHCP プロトコルによって定義されたものだからです。つまり、作業の対象となるオプションは、サイト用に独自に作成したものだけです。そのため、初めて DHCP サービスを設定すると、サイト用のオプションを作成するまでは、DHCP マネージャの「オプション (Options)」タブは空です。

DHCP サーバー上でオプションを作成する場合、DHCP クライアント上でもそのオプションに関する情報を追加する必要があります。Oracle Solaris DHCP クライアントに対しては、/etc/dhcp/inittab ファイルを編集して、新しいオプションに関するエントリを追加する必要があります。このファイルについては、dhcp_inittab(4) のマニュアルページを参照してください。

Oracle Solaris クライアント以外の DHCP クライアントを使用している場合、オプションまたはシンボルを追加する方法については、使用しているクライアント用のマニュアルを参照してください。Oracle Solaris DHCP のオプションについての詳細は、「DHCP オプションについて」を参照してください。

DHCP マネージャまたは dhtadm コマンドを使用して、オプションを作成、変更、削除できます。


ヒント –

DHCP の文献では、オプションを「シンボル」と呼びます。dhtadm コマンドとそれに関連するマニュアルページでもオプションをシンボルと呼びます。


次の作業マップに、DHCP オプションを作成、変更、および削除するのに必要な作業を示します。作業マップには、それぞれの手順へのリンクが含まれています。

タスク 

説明 

説明 

DHCP オプションを作成します。 

標準的な DHCP オプションで扱わない情報に関する新しいオプションを追加します。 

「DHCP オプションを作成する方法 (DHCP マネージャ)」

「DHCP オプションを作成する方法 (dhtadm)」

「Oracle Solaris DHCP クライアントのオプション情報の変更」

DHCP オプションを変更します。 

作成済みの DHCP オプションの属性を変更します。 

「DHCP オプションの属性を変更する方法 (DHCP マネージャ)」

「DHCP オプションの属性を変更する方法 (dhtadm)」

DHCP オプションを削除します。 

作成済みの DHCP オプションを削除します。 

「DHCP オプションを削除する方法 (DHCP マネージャ)」

「DHCP オプションを削除する方法 (dhtadm)」

DHCP オプションを作成する前に、次の表に示すオプションの属性をよく理解しておく必要があります。

表 15–5 DHCP オプションの属性

オプションの属性 

説明 

カテゴリ 

オプションの「カテゴリ」は、次のいずれかにする必要があります。

  • ベンダー – クライアントのベンダーのプラットフォームに固有のオプションであり、ハードウェアかソフトウェアになります。

  • サイト – サイトに固有のオプション。

  • 拡張 – DHCP プロトコルに追加された比較的新しいオプションですが、まだ Oracle Solaris DHCP の標準オプションとして実装されていません。

コード 

コード」は、オプションに割り当てる一意の番号です。同じオプションカテゴリ内のほかのオプションで、同じコードを使用することはできません。オプションカテゴリに対して適切なコードにする必要があります。

  • ベンダー – ベンダークラスごとに 1 から 254 のコード値

  • サイト – 128 から 254 のコード値

  • 拡張 – 77 から 127 のコード値

データ型 

データ型」は、そのオプションの値として割り当てることができるデータの種類を指定します。有効なデータ型は次のとおりです。

  • ASCII – テキスト文字列値。

  • BOOLEAN – ブール型のデータ型に関連値はありません。このオプションが存在すれば条件は真となり、存在しなければ偽となります。たとえば、Hostname オプションはブール型です。マクロに Hostname が含まれていると、DHCP サーバーは、割り当てられたアドレスに関連するホスト名を検索します。

  • IP – ドットで区切られた 10 進法形式 (xxx.xxx.xxx.xxx) の 1 つまたは複数のアドレス。

  • OCTET – 2 進データを翻訳されない ASCII で表示したもの。たとえば、クライアント ID は、この 16 進形式のデータ型を使用します。有効な文字は 0 – 9、A – F、a – f です。8 ビットを表すには 2 つの ASCII 文字が必要です。

  • UNUMBER8, UNUMBER16, UNUMBER32, UNUMBER64, SNUMBER8, SNUMBER16, SNUMBER32, または SNUMBER64 の数値。初めの U や S は、数値が符号付きか符号なしかを表します。終わりの数字は、数値にいくつのビットが含まれているかを表します。

データの単位数 (Granularity) 

データの単位数」では、オプション値全体を表すために必要なデータ型の「インスタンス」の個数を指定します。たとえば、IP のデータ型でデータ単位数 2 の場合、オプション値には 2 つの IP アドレスが含まれる必要があります。

最大値 

オプションについて指定可能な値の最大個数。たとえば、最大値が 2、データの単位数が 2、データ型が IP だとします。この場合には、オプションの値に最大 2 つの IP アドレスペアを含めることができます。 

ベンダークライアントクラス 

このオプションは、オプションカテゴリがベンダーの場合のみ利用できます。ベンダークライアントクラスとは、そのベンダーオプションが関連付けられているクライアントクラスを識別するものです。このクラスは、クライアントのマシンタイプやオペレーティングシステムを表すASCII 文字列からなります。たとえば、Sun ワークステーションのあるモデルのクラス文字列は SUNW.Sun-Blade-100 です。このタイプのオプションで定義する構成パラメータは、同じクラスのすべてのクライアント (かつ、そのクラスのクライアントだけ) に渡されます。

複数のクライアントクラスを指定できます。指定するクラスと一致するクライアントクラス値の DHCP クライアントだけが、そのクラスに含まれるオプションを受け取ります。 

クライアントクラスは DHCP クライアントのベンダーによって決定されます。Oracle Solaris クライアント以外の DHCP クライアントの場合、クライアントクラスについては、DHCP クライアントのベンダーのマニュアルを参照してください。 

Oracle Solaris クライアントの場合、クライアント上で uname -i コマンドを入力すれば、 クライアントクラスを確認できます。ベンダークライアントクラスを指定するには、uname コマンドで返される文字列の中のすべてのカンマをピリオドに置き換えます。たとえば、uname -i コマンドから文字列 SUNW,Sun-Blade-100 が返される場合、ベンダークライアントクラスを SUNW.Sun-Blade-100 と指定します。

DHCP オプションの作成

渡す必要があるクライアント情報に対応するオプションが DHCP プロトコルにない場合は、オプションを作成できます。独自のオプションを作成する前に、Oracle Solaris DHCP にどのようなオプションが定義されているかを知りたい場合は、 dhcp_inittab(4) のマニュアルページを参照してください。

dhtadm -A -s コマンドまたは DHCP マネージャの「オプションの作成 (Create Option)」ダイアログボックスを使用して、新しいオプションを作成できます。

次に、DHCP マネージャの「オプションの作成 (Create Option)」ダイアログボックスを示します。

図 15–17 DHCP マネージャの「オプションの作成 (Create Option)」ダイアログボックス

ダイアログボックスには、新しいオプションの属性を定義する一連のフィールドが表示されています。さらに、「ベンダークライアントクラス (Vendor Client Classes)」領域と「(Notify DHCP server)」チェックボックスが表示されます。

ProcedureDHCP オプションを作成する方法 (DHCP マネージャ)

  1. DHCP マネージャの「オプション (Options)」タブを選択します。

    「DHCP マネージャを起動および停止する方法」を参照してください。

  2. 「編集 (Edit)」メニューから「作成 (Create)」を選択します。

    「オプションの作成 (Create Option)」ダイアログボックスが開きます。

  3. 新しいオプションの略式記述名を入力します。

    この名前には、128 文字までの英数字と空白文字を含めることができます。

  4. ダイアログボックスの各設定について、値を入力または選択します。

    各設定については、表 15–5 を参照するか、DHCP マネージャのヘルプを参照してください。

  5. オプションの作成が終わったら、「DHCP サーバーに変更を通知 (Notify DHCP Server of Change)」を選択します。

    この選択によって、DHCP サーバーは dhcptab テーブルを再読み込みし、「了解 (OK)」をクリックすると直ちに変更が適用されます。

  6. 「了解 (OK)」をクリックします。

    これでオプションをマクロに追加し、クライアントに渡すオプションに値を割り当てることができます。

ProcedureDHCP オプションを作成する方法 (dhtadm)

  1. スーパーユーザーになるか、DHCP 管理プロファイルに割り当てられている役割またはユーザー名になります。

    DHCP 管理プロファイルの詳細については、「DHCP コマンドへのユーザーアクセスの設定」を参照してください。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. 次の書式のコマンドを入力して DHCP オプションを作成します。


    # dhtadm -A -s option-name -d 'category,code,data-type,granularity,maximum' -g
    
    option-name

    128 文字以内の英数字文字列です。

    category

    次のうちの 1 つです。 SiteExtend、または Vendor=list-of-classeslist-of-classes は、オプションが適用されるベンダークライアントクラスを空白文字で区切ったものです。ベンダークライアントクラスを決定する方法については、表 15–5 を参照してください。

    code

    このオプションカテゴリに適した 1 つの数値です。表 15–5 の説明を参照してください。

    data-type

    このオプションで渡されるデータのタイプを示すキーワードを指定します。表 15–5 の説明を参照してください。

    granularity

    負ではない 1 桁の数を指定します。表 15–5 の説明を参照してください。

    maximum

    負ではない 1 桁の数です。表 15–5 の説明を参照してください。


例 15–3 dhtadm による DHCP オプションの作成

次のコマンドを実行すると、Site カテゴリに属する NewOpt というオプションが作成されます。このオプションのコードは 130 です。このオプションの値には、1 つの 8 ビット無符号整数が設定できます。

# dhtadm -A -s NewOpt -d 'Site,130,UNUMBER8,1,1' -g 

次のコマンドを実行すると、Vendor カテゴリオプションに属する NewServ というオプションが作成されます。このオプションは、マシンタイプが SUNW,Sun-Blade-100 または SUNW,Sun-Blade-1000 であるクライアントに適用されます。このオプションのコードは 200 です。このオプションの値には、1 つの IP アドレスが設定できます。

# dhtadm -A -s NewServ -d 'Vendor=SUNW.Sun-Blade-100 \ SUNW.Sun-Blade-1000,200,IP,1,1' -g

DHCP オプションの変更

DHCP サービス用のオプションをすでに作成している場合、そのオプションの属性は変更できます。オプションの変更には、dhtadm -M -s コマンドか、DHCP マネージャの「オプションの属性 (Option Properties)」ダイアログボックスを使用します。

Oracle Solaris DHCP クライアントのオプション情報を変更して、DHCP サービスに加えたのと同じ変更内容を反映する必要があります。「Oracle Solaris DHCP クライアントのオプション情報の変更」を参照してください。

次に、DHCP マネージャの「オプションの属性 (Option Properties)」ダイアログボックスを示します。

図 15–18 DHCP マネージャの「オプションの属性 (Option Properties)」ダイアログボックス

ダイアログボックスには、選択したオプションの現在の属性が表示されています。さらに、「ベンダークライアントクラス (Vendor Client Classes)」と「(Notify DHCP server)」チェックボックスが表示されます。

ProcedureDHCP オプションの属性を変更する方法 (DHCP マネージャ)

  1. DHCP マネージャの「オプション (Options)」タブを選択します。

    「DHCP マネージャを起動および停止する方法」を参照してください。

  2. 変更するオプションを選択します。

  3. 「編集 (Edit)」メニューから「属性 (Properties)」を選択します。

    「オプションの属性 (Option Properties)」ダイアログボックスが開きます。

  4. 必要に応じて属性を編集します。

    属性については、表 15–5 を参照するか、DHCP マネージャのヘルプを参照してください。

  5. オプションの処理が終了したら、「DHCP サーバーに変更を通知 (Notify DHCP Server of Change)」を選択します。

    変更は dhcptab テーブルに対して行われます。DHCP サーバーは、dhcptab テーブルを再読み込みして変更を有効にします。

  6. 「了解 (OK)」をクリックします。

ProcedureDHCP オプションの属性を変更する方法 (dhtadm)

  1. スーパーユーザーになるか、DHCP 管理プロファイルに割り当てられている役割またはユーザー名になります。

    DHCP 管理プロファイルの詳細については、「DHCP コマンドへのユーザーアクセスの設定」を参照してください。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. 次の書式のコマンドを入力してオプションを変更します。


    # dhtadm -M -s option-name -d 'category,code,data-type,granularity,maximum' -g
    
    option-name

    変更するオプションの名前を指定します。

    category

    SiteExtend、または Vendor=list-of-classes のうちの 1 つです。list-of-classes は、オプションが適用されるベンダークライアントクラスを空白文字で区切ったものです。たとえば、SUNW.Sun-Blade-100 SUNW.Ultra-80 SUNWi86pc

    code

    このオプションカテゴリに適した 1 つの数値を指定します。表 15–5 の説明を参照してください。

    data-type

    このオプションで渡されるデータのタイプを示すキーワードを指定します。表 15–5 の説明を参照してください。

    granularity

    負ではない 1 桁の数です。表 15–5 の説明を参照してください。

    maximum

    負ではない 1 桁の数です。表 15–5 の説明を参照してください。

    変更する属性だけでなく、DHCP オプション属性すべてを -d スイッチで指定する必要があります。


例 15–4 dhtadm による DHCP オプションの変更

次のコマンドでは、NewOpt というオプションを変更します。このオプションは Site カテゴリのオプションです。このオプションのコードは 135 です。このオプションの値には、1 つの 8 ビット無符号整数が設定できます。

# dhtadm -M -s NewOpt -d 'Site,135,UNUMBER8,1,1' 

次のコマンドでは、Vendor カテゴリに属する NewServ というオプションを変更します。その結果、このオプションは、マシンタイプが SUNW,Sun-Blade-100 または SUNW,i86pc であるクライアントに適用されます。このオプションのコードは 200 です。このオプションの値には、1 つの IP アドレスが設定できます。

# dhtadm -M -s NewServ -d 'Vendor=SUNW.Sun-Blade-100 \ SUNW.i86pc,200,IP,1,1' -g

DHCP オプションの削除

標準の DHCP オプションを削除することはできません。しかし、ユーザーが DHCP サービス用に定義したオプションは、DHCP マネージャか dhtadm コマンドを使って削除できます。

ProcedureDHCP オプションを削除する方法 (DHCP マネージャ)

  1. DHCP マネージャの「オプション (Options)」タブを選択します。

    「DHCP マネージャを起動および停止する方法」を参照してください。

  2. 削除したいオプションを選択します。

  3. 「編集 (Edit)」メニューから「削除 (Delete)」を選択します。

    「オプションの削除 (Delete Option)」ダイアログボックスが開きます。

  4. オプションの削除が終わったら、「DHCP サーバーに変更を通知 (Notify DHCP Server of Change)」を選択します。

    この選択によって、DHCP サーバーは dhcptab テーブルを再読み込みし、「了解 (OK)」をクリックすると直ちに変更が適用されます。

  5. 「了解 (OK)」をクリックします。

ProcedureDHCP オプションを削除する方法 (dhtadm)

  1. スーパーユーザーになるか、DHCP 管理プロファイルに割り当てられている役割またはユーザー名になります。

    DHCP 管理プロファイルの詳細については、「DHCP コマンドへのユーザーアクセスの設定」を参照してください。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. 次の書式のコマンドを入力して DHCP オプションを削除します。


    # dhtadm -D -s option-name -g
    

Oracle Solaris DHCP クライアントのオプション情報の変更

新しい DHCP オプションを DHCP サーバーに追加する場合、各 DHCP クライアントのオプション情報に、補足エントリを追加する必要があります。Oracle Solaris DHCP クライアント以外の DHCP クライアントを使用している場合、オプションまたはシンボルを追加する方法については、そのクライアントのマニュアルを参照してください。

Oracle Solaris DHCP クライアントでは、/etc/dhcp/inittab ファイルを編集して、DHCP サーバーに追加するオプションごとにエントリを追加する必要があります。後にそのオプションをサーバー上で変更する場合、クライアントの /etc/dhcp/inittab ファイルのエントリも変更する必要があります。

/etc/dhcp/inittab ファイルの構文については、dhcp_inittab(4) のマニュアルページを参照してください。


注 –

以前の Oracle Solaris リリースで dhcptags ファイルに DHCP オプションを追加していた場合、それらのオプションを /etc/dhcp/inittab ファイルに追加する必要があります。詳細は、「DHCP のオプション」を参照してください。