dhcpd.leases(5) dhcpd.leases(5)
名前
dhcpd.leases - DHCP クライアントへの貸し出しデータベース
説明
Internet Software Consortium DHCP サーバは、割り当てたアドレスの貸し出
し記録を永続的なデータベースに保持しています。このデータベースはフリ ー
フ ォームの ASCII ファイルで、一連の貸し出し宣言 (declaration) からなり
ます。貸し出しが要求・更新・破棄されると、その新しい値がこの貸し出し フ
ァ イルの末尾に記録されます。よって、ひとつの貸し出しに対して複数の宣言
があった場合は、ファイルの後ろの方にあるものが現在のものになります。
最初に dhcpd がインストールされたときは、貸し出しデータベースは存在して
いません。しかし dhcpd は、貸し出しデータベースが存在していないと起動し
ません。この目的の初期データベースには 、 /var/state/dhcp/dhcpd.leases
という空のファイルを作るだけでかまいません。
貸 し出しデータベースが際限なく大きくなるのを防ぐため、このファイルは時
々書き換えられます。まず一時的な貸し出しデータベースが作成され、現在 わ
か っている貸し出し記録がすべてそこにダンプされます。次に、古い貸し出し
データベースが /var/state/dhcp/dhcpd.leases~ という名前に変更されます。
最 後に、新たに書き出された貸し出しデータベースが適切な場所に移動されま
す。
古い貸し出しデータベースの名前が変更された後、新しいデータベースが適 切
な 場所に移動される前には間隔があるので、この間に dhcpd プロセスが kill
されたりシステムがクラッシュすると、 /var/state/dhcp/dhcpd.leases が 存
在しなくなる危険性があります。この場合 dhcpd は起動しなくなり、手動での
修復が必要になります。このとき新しい貸し出しファイルを単純に作成して は
い けません。こうすると、古い割り当てはすべて失われ、混乱が生じることに
な り ま す 。 そ う で は な く 、/var/state/dhcp/dhcpd.leases~ を
/var/state/dhcp/dhcpd.leases にリネーム、すなわち正しい古い貸し出しファ
イルを元に戻してから、 dhcpd を起動してください。このようにすれば、正し
い貸し出しファイルに復元できます。
フォーマット
貸 し 出 し 宣 言 が 保 存 さ れ る フ ォ ーマットは、 dhcpd.conf(5) や
dhclient.conf(5) ファイルの読み込みに用いられるのと同じ再帰パーサによっ
て解釈されます。
lease ip-address { statements... }
各 貸し出し宣言には、クライアントに貸し出されている IP アドレスがひとつ
含まれます。括弧の内部の文は、貸し出しの有効期間と割り当て先とを定義 し
ます。
貸し出しの開始時刻と終了時刻は、それぞれ ‘‘starts’’ および ‘‘end’’ 文に
よって記録されます。
starts date;
ends date;
日付は次のように指定されます。
weekday year/month/day hour:minute:second
曜日 (weekday) は、貸し出しの期限切れを人間にわかりやすくするために書か
れ ています。番号 0 から 6 で指定され、0 が日曜日に対応しています。曜日
は入力では無視されます。年 (year) は世紀の部分とともに指定され、よっ て
通 常 は (ものすごく長い貸し出しでない限り) 4 桁になります。月 (month)
は 1 から始まり、1 が 1 月に対応します。月内日 (day) も同じく 1 から 始
ま ります。時 (hour) は 0 から 23 の数値で、分 (minute) は 0 から 59 の
数値で、秒 (second) も同じく 0 から 59 の数値で、それぞれ指定します。
貸し出し期間の両時刻はグリニッジ平均時 (GMT) で指定され、ローカルのタイ
ム ゾーンではありません。実はグリニッジは年内のある期間サマータイムにな
るので、貸し出しの時刻が常に壁時計時刻と同じになるところは、世界中の ど
こにも存在しません。 Unix マシンでは、GMT での現時刻は date -u と入力す
ればわかります。
貸し出しを要求したネットワークインターフェースの MAC アドレスは、 hard-
ware 文で記録されます。
hardware hardware-type mac-address;
MAC アドレスは、コロンで区切られた 16 進のオクテットで指定されます。
ク ライアントがアドレス要求時にクライアント識別子を用いた場合は、そのク
ライアント識別子が uid 文で記録されます。
uid client-identifier;
クライアント識別子は 16 進のオクテットで指定されます。これはクライア ン
ト が ASCII 文字列を利用したか、あるいは新しい「ハードウェア形式/MAC ア
ドレス」形式を利用したかによりません。
クライアントが (DHCP-DNS Interaction ドラフトのある版で指定されているよ
う に) Client Hostname オプションでホスト名を送ってきた場合には、そのホ
スト名は client-hostname 文で記録されます。
client-hostname "hostname";
クライアントが (Windows 95 などでのように) Hostname オプションで自分 の
ホ スト名を送ってきた場合には、そのホスト名は hostname 文で記録されます
。
hostname "hostname";
DHCP サーバは、ある貸し出しが (なんらかの意味で) 誤用された、と指定する
ことがあります。割り当てを受けたクライアントがその割り当てを NAK した場
合とか、サーバがあるアドレスを割り当てる際にそれが利用中であるかを調 べ
た ところ、実はそのアドレスがすでに使われていた場合などがこれに該当しま
す。このような場合には abandoned 文が用いられ、その貸し出しは破棄し、再
割り当てするな、ということを示します。
abandoned;
破 棄された貸し出しは、自動的に再生されます。クライアントが新しいアドレ
スを要求したときに、割り当てるべき新しいアドレスがなかった場合には、 サ
ー バは破棄されたアドレスがないかどうか調べ、もっとも前に破棄された貸し
出しアドレスを割り当てます。貸し出しアドレスが衝突していないかを調べ る
際 には、標準的なチェック機構が用いられます。従って破棄された貸し出しの
IP アドレスがまだ利用されていた場合は,、そのアドレスは再び破棄される こ
とになります。
ク ライアントが破棄されたアドレスを要求した場合は、サーバはそのアドレス
が破棄された理由を、貸し出しファイルが壊れたためであるとみなし、また そ
の クライアントは貸し出しを調査したときに反応したマシンであり、そのため
にそのアドレスが破棄扱いになったのだとみなします。この場合には、その ア
ドレスは直ちにそのクライアントに割り当てられます。
ファイル
/var/state/dhcp/dhcpd.leases
関連項目
dhcpd(8), dhcp-options(5), dhcpd.conf(5), RFC2132, RFC2131.
著者
dhcpd(8) は Ted Lemon
コロナウイルスの日ごとの感染者数・死者数をグラフ化してみました。どの国が増加傾向にあり、どの国が終息に向かっているかを視覚化しています。
Copyright(C) linux-cmd.com All Rights Reserved. Author Takayuki Yukawa