bind
の開発にも参加している) Internet Software Consortium は DHCP サーバの主開発者です。彼らの開発した DHCP サーバを含む Debian パッケージは isc-dhcp-server です。
/etc/dhcp/dhcpd.conf
) で最初に編集する必要がある場所はドメイン名と DNS サーバです。DHCP サーバがローカルネットワーク (ブロードキャストが届く範囲として定義されます) に 1 台しかない場合、authoritative
指示文を有効化しなければいけません (コメントを外さなければいけません)。また、subnet
セクションを作成し、そこに通知先のローカルネットワークと設定情報を記述する必要があります。以下は 192.168.0.1
にゲートウェイを担当しているルータが存在する 192.168.0.0/24
ローカルネットワーク用の設定例です。配布される IP アドレスは 192.168.0.128
から 192.168.0.254
までの範囲です。
例 10.15 /etc/dhcp/dhcpd.conf
の抜粋
# # Debian の ISC dhcpd 用設定ファイルの見本 # # ddns-update-style パラメータは IP アドレスのリースが確認されたら # このサーバが DNS 更新を試行するか否かを制御します。 # デフォルト設定値はバージョン 2 パッケージの挙動です # ('none'。なぜなら DHCP v2 は DDNS をサポートしていなかったからです)。 ddns-update-style interim; # すべてのネットワークに共通のオプションを定義します。 option domain-name "internal.falcot.com"; option domain-name-servers ns.internal.falcot.com; default-lease-time 600; max-lease-time 7200; # この DHCP サーバがローカルネットワークの公式 DHCP サーバならば、 # authoritative 指示文を有効化するべきです。 authoritative; # dhcp ログメッセージを別のログファイルへ送信するには以下の設定を使います # (これを正しく動作させるには syslog.conf の設定も必要です)。 log-facility local7; # 自分のサブネット subnet 192.168.0.0 netmask 255.255.255.0 { option routers 192.168.0.1; option broadcast-address 192.168.0.255; range 192.168.0.128 192.168.0.254; ddns-domainname "internal.falcot.com"; }
machine-192-168-0-131.internal.falcot.com
などの匿名性のある名前を使ってアクセスすることになります)。自動登録機能を使うには、DHCP サーバから internal.falcot.com
DNS ゾーンの更新を受け入れるように DNS サーバを設定して、各クライアントの登録情報の更新を DNS サーバに送信するように DHCP サーバを設定します。
bind
の場合、DHCP サーバから更新を受け入れる各ゾーンに allow-update
指示文を追加する必要があります (internal.falcot.com
ドメインと逆引きゾーンの両方に追加する必要があります)。allow-update
指示文は更新を受け入れる IP アドレスをリストします。つまり、考え得る DHCP サーバの全アドレスを列挙します (必要に応じて、ローカルアドレスと公開アドレスの両方を指定します)。
allow-update { 127.0.0.1 192.168.0.1 212.94.201.10 !any };
bind
により変更され、設定ファイルは定期的に上書きされます。この自動手続きにより作成されるファイルは手作業で書かれたものよりも人間にとって読みづらいため、Falcot の管理者は権限委譲された DNS サーバを使って internal.falcot.com
ドメインを管理しています。これは falcot.com
ゾーンファイルは手作業で管理されることを意味します。
ddns-update-style interim;
とサブネットを表すブロック中の ddns-domain-name "internal.falcot.com";
です。