Provided by: isc-dhcp-common_4.1.ESV-R4-0ubuntu5_i386 bug

NetWare/IP サブオプション
       RFC2242  は、Novell の NetWare/IP クライアント用のカプセル化された オプ
       ションの組を定義しています。 DHCP  サーバにおいてこれらのオプションを使
       用するには、オプション空間名  "nwip" の後にピリオドをつけ、その後にオプ
       ション名を続けてください。 以下のオプションが指定できます:

       option nwip.nsq-broadcast flag;

         true であった場合、クライアントは、NetWare/IP サーバの位置を 探すのに
         NetWare  Nearest  Server  Query  を使うべきです。  本サブオプションが
         false であった場合、もしくは指定されなかった場合の Novell  クライアン
         トの動作は規定されていません。

       option nwip.preferred-dss ip-address [, ip-address... ];

         本サブオプションには、5 つまでの IP アドレスのリストを指定します。 そ
         れぞれのアドレスは、NetWare ドメイン SAP/RIP サーバ (DSS) の IP  アド
         レスです。

       option nwip.nearest-nwip-server ip-address
                                    [, ip-address...];

         本サブオプションには、5 つまでの IP アドレスのリストを指定します。 そ
         れぞれのアドレスは、近接の NetWare  IP  サーバ  (Nearest  NetWare  IP
         Server) の IP アドレスです。

       option nwip.autoretries uint8;

         起動時に、NetWare/IP クライアントが、与えられた DSS サーバと 何回通信
         を試みるべきかを指定します。

       option nwip.autoretry-secs uint8;

         起動時に、NetWare/IP クライアントが、与えられた DSS サーバと 通信を確
         立する時に、リトライの間何秒待つべきかを指定します。

       option nwip.nwip-1-1 uint8;

         true  であった場合、NetWare/IP  クライアントは  NetWare/IP バージョン
         1.1  をサポートしているべきです。  これは、クライアントが  NetWare/IP
         バージョン 1.1 のサーバと 通信する時のみ必要です。

       option nwip.primary-dss ip-address;

         NetWare/IP  ドメインのプライマリドメイン SAP/RIP サービスサーバ (DSS)
         の   IP   アドレスを指定します。   セカンダリ   DSS    サーバの設定時
         に、NetWare/IP 管理ユーティリティは、 この値をプライマリ DSS サーバと
         して使用します。

新規オプションの定義
       Internet Systems Consortium DHCP クライアントとサーバは、  新規オプショ
       ンを定義する機構も提供しています。 それぞれの DHCP オプションは、名前と
       コード、構造を持っています。 名前は、使用者がオプションを参照するのに使
       用されます。  コードは、DHCP サーバとクライアントがオプションを参照する
       のに 使用する番号です。  構造は、オプションの内容がどのようなものかを記
       述しています。

       新規オプションを定義するには、他のオプションでは使われていない名前を 選
       ぶ必要があります。 例えば、"host-name" と言う名前は使用できません。  と
       いうのも、このマニュアルページに出てきたように、  DHCP プロトコルが既に
       host-name オプションを定義しているからです。 このマニュアルページに出て
       きていないオプション名ならば 使っても構いませんが、将来出てくるオプショ
       ンと重ならないように、     オプション名の最初に独自の文字列をつけること
       は、多分いい考えでしょう。  例えば、公式の  DHCP オプションには "local"
       で始まるものがないので、 "local-host-name" と言う名前は、いくらか安心し
       て定義できるでしょう。

       名前を選択したら、次はコードを選ばねばなりません。   DHCP  オプションの
       128 から 256 までのコードは、  サイトローカルオプション用として予約され
       ているので、    この中のコードならどれでも選ぶことができます。   実際に
       は、プロトコルを少々あいまいに解釈しているベンダがあり、 128 より大きい
       値のオプションコードを使用しています。 この問題を本当に回避する方法はあ
       りませんが、 実際にはそう大きな問題を引き起こすものではないでしょう。

       オプションの構造とは、単にオプションのデータが表現されている形式です。
       現在  ISC DHCP サーバは、整数、ブール値、文字列そして IP アドレスといっ
       た、 いくつかの単純なデータ型をサポートしており、  また単一データ型の配
       列や固定順のデータ型列の配列を定義することもできます。

       新規オプションは、以下のように宣言されます:

       option new-name code new-code = definition ;

       new-namenew-code の値は、新規オプション用にあなたが選んだものです。
       definition は、オプションの構造の定義です。

       以下の単純なオプションの型定義がサポートされています:

       ブール値

       option new-name code new-code = boolean ;

       ブール型のオプションは、on または off (もしくは true か  false)  の値を
       持つフラグです。 ブール型の使用例は、以下のようになります:

       option use-zephyr code 180 = boolean;
       option use-zephyr on;

       整数

       option new-name code new-code = sign integer width ;

       sign  トークンは、空白、unsignedsigned  のいずれかです。  width は 8,
       16, 32 のいずれかで、整数の  bit  数を示します。  例えば、以下の  2  行
       は、sql-connection-max オプションの定義と 使用法を示します:

       option sql-connection-max code 192 = unsigned integer 16;
       option sql-connection-max 1536;

       IP アドレス

       option new-name code new-code = ip-address ;

       IP  アドレス型の構造を持つオプションは、ドメイン名もしくは ドット区切り
       の 4 整数で表現されます。 以下は、IP アドレス型の使用例です:

       option sql-server-address code 193 = ip-address;
       option sql-server-address sql.example.com;

       テキスト

       option new-name code new-code = text ;

       テキスト型のオプションは、ASCII テキスト文字列をエンコードします。 例え
       ば:

       option sql-default-connection-name code 194 = text;
       option sql-default-connection-name "PRODZA";

       データ文字列

       option new-name code new-code = string ;

       データ文字列型のオプションは、本質的には単なるバイトの集合体です。 テキ
       スト型のようにクオートされたテキストで指定されるか、 もしくはコロン区切
       りの  16 進数のリストで指定されます。 この時コロンで区切られた中身は、0
       から FF の間の値でなければなりません。 例えば:

       option sql-identification-token code 195 = string;
       option sql-identification-token 17:23:19:a6:42:ea:99:7c:22;

       カプセル化

       option new-name code new-code = encapsulate identifier ;

       カプセル化型のオプションは、identifier で指定された  オプション空間の中
       身をカプセル化します。 現在 DHCP プロトコルに存在するカプセル化オプショ
       ンの例は、  vendor-encapsulated-options  オプション、netware-suboptions
       オプション、 relay-agent-information オプションなどです。

       option space local;
       option local.demo code 1 = text;
       option local-encapsulation code 197 = encapsulate local;
       option local.demo "demo";

       配列

       オプションは、テキスト型とデータ文字列型以外の上述のいかなるデータ型の
       配列も含むことができます。 テキスト型とデータ文字列型は、現在配列ではサ
       ポートされていません。 配列定義の例は以下の通りです:

       option kerberos-servers code 200 = array of ip-address;
       option kerberos-servers 10.20.10.1, 10.20.11.1;

       レコード

       オプションは、データ型の列で構成されるデータ構造を含むこともできます。
       これはしばしばレコード型と呼ばれます。 例えば:

       option contrived-001 code 201 = { boolean, integer 32, text };
       option contrived-001 on 1772 "contrivance";

       またレコードの配列のオプションを持つこともできます。 例えば:

       option new-static-routes code 201 = array of {
            ip-address, ip-address, ip-address, integer 8 };
       option static-routes
            10.0.0.0 255.255.255.0 net-0-rtr.example.com 1,
            10.0.1.0 255.255.255.0 net-1-rtr.example.com 1,
            10.2.0.0 255.255.224.0 net-2-0-rtr.example.com 3;

ベンダカプセル化オプション
       DHCP プロトコルには、 vendor-encapsulated-options オプションが 定義され
       ています。   ベンダは、このオプションによって、ベンダ固有のオプションを
       標準    DHCP     オプションに含めて送出することができます。     vendor-
       encapsulated-options オプションの書式は、書式が規定されていない一連のバ
       イト列、 もしくは一連のオプション列です。  オプション列中のそれぞれのオ
       プションは、1  バイトのベンダ固有の  オプションコードの後に  1 バイトの
       データ長、 そしてそのデータ長で指定された大きさのデータが続いたもので構
       成されます    (データ長には、データ長自身やオプションコードは含まれませ
       ん)。

       本オプションの値は、2 つの方法のいずれかで設定されます。  1  番目の方法
       は、単にデータを直接指定するものです。 データの指定には、テキスト文字列
       かコロンで区切られた 16 進数値を用います。 例えば:

       option vendor-encapsulated-options
           2:4:AC:11:41:1:
           3:12:73:75:6e:64:68:63:70:2d:73:65:72:76:65:72:31:37:2d:31:
           4:12:2f:65:78:70:6f:72:74:2f:72:6f:6f:74:2f:69:38:36:70:63;

       本オプションを設定する 2 番目の方法は、DHCP サーバに ベンダ固有オプショ
       ンバッファを作成させるというものです。  これをするには、以下の 4 つのこ
       とをする必要があります:  オプション空間を定義し、そのオプション空間内に
       オプションを定義し、   それらへ値を割り振り、最後にそのオプション空間が
       vendor-encapsulated-options  オプションの生成に使用されることを指定しま
       す。

       ベンダオプションが格納されるオプション空間を新規に定義するには、 option
       space 文を使用します:

       option space name ;

       この文書にこれまで書かれているように、 この name は、オプション定義で使
       用することができます。 例えば:

       option space SUNW;
       option SUNW.server-address code 2 = ip-address;
       option SUNW.server-name code 3 = text;
       option SUNW.root-path code 4 = text;

       一度、オプション空間とオプションの書式を定義したら、 それらのオプション
       の値を定義するスコープを設定でき、 それらのオプションをいつ使うかを指定
       することができます。 例えば、2 つの異なるクラスのクライアントを扱いたい
       としましょう。 前述の例で示したオプション空間の定義を使って、以下のよう
       に、  クライアントから送られてきた vendor-class-identifier オプションに
       基づいて、 異なるオプションの値を異なるクライアントに送出することができ
       ます。

       class "vendor-classes" {
         match option vendor-class-identifier;
       }

       option SUNW.server-address 172.17.65.1;
       option SUNW.server-name "sundhcp-server17-1";

       subclass "vendor-classes" "SUNW.Ultra-5_10" {
         vendor-option-space SUNW;
         option SUNW.root-path "/export/root/sparc";
       }

       subclass "vendor-classes" "SUNW.i86pc" {
         vendor-option-space SUNW;
         option SUNW.root-path "/export/root/i86pc";
       }

       先の例で見たように、通常のスコープルールを適用することで、 グローバルな
       値をグローバルスコープ中に定義でき、 特定のクラスに固有の値だけをローカ
       ルスコープに定義できます。    vendor-option-space    宣言を使うことで、
       vendor-encapsulated-options オプションを構成するのに、SUNW オプション空
       間内のオプションを使うよう DHCP サーバに指示することができます。

関連項目
       dhclient.conf(5), dhcp-eval(5), dhclient(8), RFC2132, RFC2131

作者
       Internet Systems Consortium DHCP Distribution は、Vixie Labs との契約の
       もとで、Ted  Lemon  が記述しました。   本プロジェクトの資金は、Internet
       Systems  Consortium が提供しました。 Internet Systems Consortium に関す
       る情報は、 https://www.isc.org にあります。

                                                               dhcp-options(5)