DHCPサーバからのDNS連携

以下では「DHCP-DDNS」と称することにする。DHCPサーバの設定項目に、DNSを動的更新するかどうかの選択がある。

(Windows2000で「実はここで動的更新を有効にすると、DNSサーバが動的更新を受けつける設定になっていなくても更新される」という情報があったが、少なくとも2003ではDNSサーバ側の設定は必須である。)

設定項目は以下のとおり

fig03

「以下の設定に基づいて、DNS動的更新を有効にする」
このチェックを入れるとDNS連携が行われる。

その下の更新タイミングのオプションについてだが、この違いについては KB816592 に記載されている。
Windows2000以降のOSでは、DHCPクライアントが追加 DHCP オプションである FQDN オプション
 (オプション 81) を使用してどのように動的更新するかクライアントが指定することができる。

フラグ 0 : クライアントが "A" (ホスト) レコードを登録。
フラグ 1 : クライアントが DHCP に "A" (ホスト) レコードを登録させる。
フラグ 3 : クライアントの要求にかかわらず、DHCP が "A" (ホスト) レコードを登録
デフォルトはフラグ0のようである(出典:MS Technet Library 「クライアントの DNS 動的更新を有効にする」)。フラグ 0 の場合、PTRレコードについてはDHCPサーバがDNSサーバに対して更新要求することになる。

一方、「DNSのAおよびPTRレコードを常に更新する」を選択した場合、FQDNオプションが指定されていようがいまいが、DHCPサーバがDNSサーバに対してAとPTRの更新を行うことになる。Windowsクライアント以外にDHCPクライアントが存在する場合にはこちらを選択すべきだ。

必要なレコードがDNSに登録されないというトラブルを避けるためには、「常に」の方が望ましいが、若干DNSサーバへのリクエストが増える傾向にあることは間違いない。

このオプションはDHCPサーバ全体でも定義可能で基本はその設定が各スコープに継承されるが特定のスコープに特定のオプションを指定することも可能で、netsh を使ったオプションの確認方法が KB945397 に掲載されている。オプションID 81 の記載がなければデフォルトのままということになる。

次に「リースが削除されたときに、A および PTR レコードを廃棄する」のオプションについてだが、チェックを外すとDHCPリース切れが発生した場合、PTRレコードのみ廃棄要求を行うことになっている。OSデフォルトではチェックONの状態である。

最後に「更新を要求しない DHCP クライアント (例 : Windows NT 4.0 を実行しているクライアント) の DNS の A および PTR レコードを動的に更新する」のチェックは、前述のDHCP FQDNオプションを使用できないクライアントの更新をDHCPサーバが肩代わりする設定で、Windowsクライアント以外にDHCPクライアントがいる場合は実質的に必須になる。
(注)あえて蛇足を承知で書くが、「更新を要求しない DHCP クライアント」という日本語が、まるで リース期限に達しようとしているにも関わらずDHCPサーバにリース延長を申し立てないクライアントがいるかの如く 読めるが、RFC2131 Sec4.4.5 を読めばそのような実装は認められていないことが分かる。日本語訳はたとえばここ。 ただし実装としては問題なくても、クライアント機器のOSがおかしくなってリース延長しないケースは (障害ではあるものの)あり得る。その場合には機器を再起動しないと DNS レコードが清掃によって消されるリスクがある。
そして、詳細設定タブの内容だが。

fig04

検出の試行回数は必ず1以上にするのが望ましい。特にDHCPサーバの冗長化をしている場合は必須である。バックアップパスは「自動バックアップ」のパスのこと(参考)。DNS動的登録資格情報については7項「AD連携を行う上でのセキュリティ」で述べる。

戻る