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

DHCP マクロについて

Oracle Solaris DHCP サービスにおける「マクロ」とは、ネットワーク構成オプションとそれらに割り当てられた値の集合をいいます。マクロは、オプションをグループ化し、特定のクライアントまたはクライアントタイプにオプションをまとめて渡すために作成します。たとえば、特定のサブネット上のすべてのクライアントを対象としたマクロには、サブネットマスク、ルーター IP アドレス、ブロードキャストアドレス、NIS+ ドメイン、およびリース期間のためのオプションと値のペアを含めることができます。

DHCP サーバーによるマクロ処理

DHCP サーバーがマクロを処理するときは、そのマクロに定義されているネットワークオプションと値を、クライアントへの DHCP メッセージに含めます。サーバーは、特定のタイプのクライアントに対し一部のマクロを自動的に処理します。

サーバーでマクロを自動的に処理するためには、マクロの名前が、次の表に示すカテゴリのいずれかに従っている必要があります。

表 12–3 自動処理のための DHCP マクロカテゴリ

マクロのカテゴリ 

説明 

クライアントクラス 

マクロ名は、クライアントマシンタイプ、オペレーティングシステム、またはその両方で表されるクライアントクラスと同じです。たとえば、あるサーバーに SUNW.Sun-Blade-100 という名前のマクロがあるとします。ハードウェア実装が SUNW,Sun-Blade-100 であるクライアントは、SUNW.Sun-Blade-100 マクロの値を自動的に受け取ります。

ネットワークアドレス 

マクロ名は、DHCP で管理されている IP アドレスと同じです。たとえば、サーバーのマクロの名前が 10.53.224.0 の場合、10.53.224.0 ネットワークに接続されているクライアントはいずれも自動的に 10.53.224.0 マクロ内の値を受け取ります。

クライアント ID 

マクロ名は、クライアントのある種の固有識別子と同じです。通常、Ethernet または MAC アドレスから得られます。たとえば、08002011DF32 という名前のマクロがサーバーに存在する場合、(Ethernet アドレス 8:0:20:11:DF:32 から得られる) クライアント ID 08002011DF:32 を持つクライアントは、08002011DF32 という名前のマクロにある値を自動的に受け取ります。

表 12–3 に記載されたどのカテゴリとも一致しない名前をもつマクロは、次の条件の 1 つが当てはまるときだけ処理されます。


注 –

サーバーを構成する場合、デフォルトでは、そのサーバーの名前と一致する名前の付いたマクロが作られます。このサーバーマクロは、自動処理が行われる名称タイプのいずれとも一致しないため、いずれのクライアントに対しても自動的に処理されません。あとでサーバー上で IP アドレスを作成する場合、その IP アドレスは、サーバーのデフォルトのマクロを使用するように割り当てられます。


マクロ処理の順序

    DHCP クライアントが DHCP サービスを要求するときは、DHCP サーバーはどのマクロがそのクライアントに一致するかを決定します。サーバーは、マクロを処理する際に、マクロカテゴリを使って処理の順序を決めます。最も一般的なカテゴリが最初に処理され、最も特定されるカテゴリが最後に処理されます。マクロは下記の順序で処理されます。

  1. クライアントクラスマクロ – 最も一般的なカテゴリ

  2. ネットワークアドレスマクロ – クライアントクラスよりは特定なマクロ

  3. IP アドレスに割り当てられたマクロ – ネットワークアドレスよりは特定されたマクロ

  4. クライアント ID マクロ – 1 クライアントだけに適用される最も特定されたカテゴリ

ほかのマクロに含まれているマクロはそのマクロの一部として処理されます。

複数のマクロに同じオプションが含まれている場合は、最も特定されたカテゴリのマクロ内のオプションに設定されている値が一番最後に処理されるため、その値が使用されます。たとえば、ネットワークアドレスに、24 時間の値を持つリース期間オプションが含まれていて、クライアント ID マクロに 8 時間の値を持つリース期間オプションが含まれている場合は、そのクライアントは 8 時間のリース期間を受け取ります。

DHCP マクロのサイズ限度

マクロのすべてのオプションに割り当てられている値の長さの合計は、オプションコードと長さ情報を含め 255 バイト以内でなければなりません。この制限は、DHCP プロトコルによるものです。

この制限による影響が最も大きいと思われるマクロは、Oracle Solaris インストールサーバー上のファイルへのパスを渡すためのマクロです。一般に、渡すベンダー情報は、必要最小限に留めるべきです。さらに、パス名を必要とするオプションでは、短いパス名を使用すべきです。長いパスへのシンボリックリンクを作成する場合は、短いこのリンク名を渡すことができます。