DHCP データベース

db_file.dhcpo データベースは、クライアントとアドレスを追跡するため、また、アクセス制御 (例えば、あるネットワーク上の特定のクライアントにはアクセスを許可するがその他には許可しない場合や、特定のネットワーク上の BOOTP クライアントを使用不可にする場合) のために使用されます。

オプションも、検索用およびクライアントへの配布用に、このデータベースに格納されます。 このデータベースは、動的にロード可能なオブジェクトとしてインストールされ、これによって、サーバーのアップグレードと保守が容易になります。

このデータベースは、構成ファイル内の情報を使用して用意され、整合性を検査されます。 1 組のチェックポイント・ファイルがデータベースに対する更新を処理し、主記憶ファイルへの書き込みのオーバーヘッドを削減します。 また、このデータベースには、アドレスとオプションのプールが入っていますが、これらは静的なプールです。これについては、DHCP の構成 に説明があります。

主記憶ファイルとそのバックアップは、フラット ASCII ファイルで、編集することができます。 データベース主記憶ファイルのフォーマットは、以下のとおりです。

DF01
"CLIENT ID" "0.0.0.0" State LeaseTimeStart LeaseTimeDuration LeaseTimeEnd
  "Server IP Address" "Class ID" "Vendor ID" "Hostname" "Domain Name"
"CLIENT ID" "0.0.0.0" State LeaseTimeStart LeaseTimeDuration LeaseTimeEnd
  "Server IP Address" "Class ID" "Vendor ID" "Host Name" "Domain Name"
...

最初の行はこのファイルのバージョン ID である DF01c です。 その後の行は、クライアント・レコード定義行です。 サーバーは、この 2 行目からファイルの終わりまでを読み取ります。 (引用符で囲まれたパラメーターは、引用符で囲まれている必要があります。)

"CLIENT ID"
クライアントがサーバーにそれ自体を表すために使用する ID。
"0.0.0.0"
現在、DHCP サーバーに割り当てられている IP アドレス。 アドレスが割り当てられていない場合は、"0.0.0.0" となります。
State
クライアントの現在の状態。 DHCP プロトコル・エンジンには許容セットが含まれ、その状態は DHCP データベースで維持されます。 State の次の数字はその値を表します。 状態としては、次のものがあります。
(1) FREE (空き)
使用できるようにアドレスが空いていることを表す。 一般に、クライアントにアドレスが割り当てられている場合は、クライアントはこの状態にはなりません。 dadmin および lssrc からの出力は、この状態を「Free」と報告します。
(2) BOUND (バインド済み)
クライアントとアドレスが結合され、クライアントはこのアドレスにしばらく割り当てられていたことを示す。 dadmin および lssrc からの出力は、この状態を「Leased」と報告します。
(3) EXPIRED (有効期限切れ)
クライアントとアドレスが結合されているが、解放済みアドレスの場合と同様、情報目的だけであることを示す。 ただし、この有効期限切れ状態は、その貸出期間を期限切れにしたクライアントを表します。 有効期限切れアドレスは、新たに使用に回すことができ、すべての空いているアドレスが使用不能になった後で、解放済みアドレスが再度割り当てられる前に、再割り当てされます。 dadmin および lssrc からの出力は、この状態を「Expired」と報告します。
(4) RELEASED (解放済み)
クライアントとアドレスが情報目的でのみ結合されていることを示す。 DHCP プロトコルは、DHCP サーバーがサービスしたクライアントについての情報を将来の参照に備えて保持するように提案します (主な目的は、参照したときに以前そのアドレスに割り当てられていたクライアントに同じアドレスを与えるためです)。 この状態は、クライアントがそのアドレスを解放したことを示します。 このアドレスは、他に使用できるアドレスがない場合に、別のクライアントで使用することができます。 dadmin および lssrc からの出力は、この状態を「Released」と報告します。
(5) RESERVED (予約済み)
クライアントとアドレスがゆるやかに結合されていることを示す。 このクライアントは DHCP 検出メッセージを出しており、DHCP サーバーが応答したが、クライアントはそのアドレスに対する DHCP 要求でまだ応答していません。 dadmin および lssrc からの出力は、この状態を「Reserved」と報告します。
(6) BAD (正しくない)
ネットワークで使用されているが、DHCP サーバーによって分配されていないアドレスを表す。 この状態は、クライアントがリジェクトしたアドレスも表します。 この状態はクライアントには適用されません。 dadmin および lssrc からの出力は、この状態を「Used」および「Bad」と報告します。
LeaseTimeStart
現在の貸出時間の開始 (1970 年 1 月 1 日からの秒数)
LeaseTimeDuration
貸出時間の期間 (秒数)
LeaseTimeEnd
貸出時間の終了。フォーマットは LeaseTimeStart と同じ。 構成オプションで貸出時間の開始と終了にこれとは異なる値を指定した場合は、値は構成ファイル・オプションで上書きされます。 db_file データベースに対する DHCP サーバー・ファイルの構文を参照してください。
"Server IP Address"
このレコードを所有している DHCP サーバーの IP アドレス
"Class ID" "Vendor ID" "Host Name" "Domain Name"
サーバーに送信されるオプション (引用符付き文字列として格納されている) を判別するためにサーバーが使用する値。 これらのクライアントのために DHCP サーバーの始動時にオプション・リストが事前生成されるため、これらのパラメーターによりパフォーマンスが向上します。