△ 図をクリックすると拡大されます
図1●コンピュータ名を大文字にするとDNSサーバーにもホスト名が大文字で登録される
Q

Active Directoryに所属するコンピュータの名前を大文字で設定したところ,Windows 2000 Server上に構築したDNSサーバーの登録ホスト名が大文字になってしまいました。その後,小文字の名前に修正したのですが,DNSサーバーの管理ツールで確認しても登録名は大文字のままです(図1 )。この管理ツールでレコードを消してから小文字で再登録しても,大文字になってしまいます。小文字にすることはできないのでしょうか。

A

Windows 2000やWindows XPでは,標準設定でDNSサーバーにコンピュータの名前を自動登録するようになっています。コンピュータ名を変更すると再度登録するのですが,Windows 2000のDNSサーバー側が大文字と小文字を区別しません。

 DNS名で使える文字は英数字およびハイフンとRFC(Request for Comments)で定められています。ここではアルファベットの大文字/小文字は区別するように規定していません。そのため,RFCに準拠したWindows 2000 ServerのDNSサーバーでは,大文字の「CLIENT」と小文字の「client」は同じ名前として認識され,特に区別して扱うことはありません。ただ,管理ツールでは大文字と小文字を区別して表示してしまうため,気になってしまうこともあるでしょう。

 ご質問のように,いったん大文字で登録した名前をDNS管理ツールから修正することはできませんが格納されているデータを直接編集することで,小文字に登録し直すことはできます。

 ただし,コンピュータの名前が登録されているゾーンの種類によって,修正する場所は異なります。ゾーンの種類はDNS管理ツールで該当のゾーンを選択しプロパティを開くことで確認できます。


△ 図をクリックすると拡大されます
図2●[Active Directory統合]ゾーンの場合はActive Directoryの情報を修正する

 ゾーンが「Active Directory統合」の場合は,管理ツールにある[Active Directory ユーザーとコンピュータ]を起動し,[表示]-[拡張機能]を有効にして,ドメインの下に表示される[System]の[MicrosoftDNS]でゾーンを選択します(図2)。すると,大文字となっているコンピュータ名を確認できるので,ここでF2キーか右クリックのメニューにある[名前の変更]で名前を修正できます。このオブジェクトをいったん削除してから,DNSサービスを再起動するか,該当レコードが消えるまでActive Directoryからの更新を待った後に,DNS管理ツールからホスト名を小文字で再登録することも可能です。


△ 図をクリックすると拡大されます
図3●[標準プライマリ/セカンダリ]ゾーンの場合はテキスト・ファイルを直接修正する

 ゾーンの種類が「標準プライマリ/セカンダリ」の場合は,テキスト・ファイルになっているゾーン・データベースのファイルを直接編集することになります。具体的には,DNS管理ツールで該当ゾーンのプロパティの[全般]タブに表示されるファイルが,%Systemroot%\system32\dnsフォルダの下にあるので,それをノートパッドなどのテキスト・エディタで開きます(図3)。そして,該当した大文字のホスト名を小文字に編集してからDNSサービスを再起動すれば小文字で表示されます。

 なお,ゾーンの種類がActive Directory統合でドメイン・コントローラが複数存在する場合は,オブジェクトの複製があるので,小文字に修正しても大文字に戻ってしまうこともありえます。そのため,すべてのドメイン・コントローラで同じ操作をした方がよいでしょう

永尾幸夫