Windowsドメインコントローラのサーバ名変更についての検証です。
いままで怖くて一度も実施したことが無いのですがちょっと気になることがあり勉強のつもりで検証してみました。
DC(FSMO)サーバのIPアドレス/ホスト名の変更について – Microsoft
https://social.technet.microsoft.com/Forums/windows/ja-JP/48915ac6-2a3f-44d5-9deb-ab96833b2a27/dcfsmoip?forum=activedirectoryja
こちらのフォーラムを読むとGUIで一気に変更するとトラブルに遭遇する可能性があり、netdom.exeで代替名を設定する方法がよさそうです。
マイクロソフトのサイト
Renaming a Domain Controller
Applies To: Windows Server 2008, Windows Server 2008 R2
https://technet.microsoft.com/en-us/library/cc794951(v=ws.10).aspx
Rename a domain controller
Applies To: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1, Windows Server 2003 with SP2
https://technet.microsoft.com/en-us/library/cc782761(v=ws.10).aspx
検証環境
- Windows Server 2012 R2
- Windows Server 2008 R2
ドメインコントローラー(server02.domain.local)
FSMO
ドメイン機能レベル:Windows Server 2008 R2
フォレスト機能レベル:Windows Server 2008 R2
OS バージョン:6.3.9600 N/A ビルド 9600
ドメインコントローラー(server01.domain.local)
OS バージョン:6.1.7600 N/A ビルド 7600
今回はServer01.domain.localをserver03.domain.localに変更します。
- 代替名の設定
- プライマリ名の設定
- サーバ再起動
- server01.domain.localの削除
- サーバ再起動
Server01.domain.localに代替名server03.domain.localを設定します。
設定はFQDNで指定します。
1 2 3 4 5 |
C:\>netdom computername server01.domain.local /add:server03.domain.local server03.domain.local をコンピューターの代替名として 正常に追加しました。 コマンドは正しく完了しました。 |
代替名server03.domain.localをプライマリに指定します。これでserver01.domain.localが代替名になるのかな。
1 2 3 4 5 6 7 8 9 10 11 |
C:\>netdom computername server01.domain.local /makeprimary:server03.domain.local server03.domain.local をコンピューターのプライマリ名として正常に設定しました。 この名前の変更を有効にするには、コンピューターを再起動する必要があります。再起動す るまでは、このコンピューターでユーザーや他のコンピューターを認証することはできませ ん。 また、フォレストの他のコンピューターによっても認証されない可能性があります。指定さ れた新しい名前は、コンピューターの代替名一覧から削除されました。コンピューターのプ ライマリ名は、再起動後、指定された新しい名前に設定されます。 コマンドは正しく完了しました。 |
server03.domain.localを再起動します。
1 |
C:\>shutdown /r /t 0 |
代替名server01.domain.localを削除します。
1 2 3 4 5 |
C:\>netdom computername server03.domain.local /remove:server01.domain.local server01.domain.local をコンピューターの代替名として 正常に削除しました。 コマンドは正しく完了しました。 |
念の為にserver03.domain.localを再度再起動しました。
1 |
C:\>shutdown /r /t 0 |
作業そのものは意外と簡単ですが、この後の動作確認が大変だと思います。
思いつく所で
- イベントログの確認
- DNSレコードの確認
- dcdiag.exe
- repadmin.exe
- クライアントログインの確認
環境に応じてログインスクリプトや共有フォルダ等の変更も必要になると思います。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
C:\>netdom computername /? このコマンドの構文は次のとおりです。 NETDOM COMPUTERNAME コンピューター [/UserO:ユーザー] [/PasswordO:[パスワード | *]][/UserD:ユーザー] [/PasswordD:[パスワード | *]][/SecurePasswordPrompt] /Add:<新しい代替 DNS 名> | /Remove:<代替 DNS 名> | /MakePrimary:<コンピューター DNS 名> | /Enumerate[:{AlternateNames | PrimaryName | AllNames}] | /Verify NETDOM COMPUTERNAME は、コンピューターのプライマリ名と代替名を管理するコマンド です。このコマンドでは、ドメイン コントローラーやサーバーの名前を安全に変更できます。 コンピューター 名前を管理するコンピューターの名前です。 /UserO 管理するコンピューターへの接続に使用するユーザー アカウントです。 /PasswordO /UserO で指定したユーザー アカウントのパスワードです。* を指定す るとパスワードの入力を求めることができます。 /UserD 管理するコンピューターのドメインへの接続に使用するユーザー アカ ウントです。 /PasswordD /UserD で指定したユーザー アカウントのパスワードです。* を指定す るとパスワードの入力を求めることができます。 /Add 新しい代替名を追加することを指定します。新しい名前は完全修飾 DNS 名 (FQDN - コンピューター名 + プライマリ DNS サフィックス、 例: comp1.example.com) にする必要があります。 /REMove 既存の代替名を削除することを指定します。削除する名前は完全修飾 DNS 名 (FQDN - コンピューター名 + プライマリ DNS サフィックス、 例: comp1.example.com) にする必要があります。 /MakePrimary 既存の代替名をプライマリ名にすることを指定します。プライマリ名に する名前は完全修飾 DNS 名 (FQDN - コンピューター名 + プライマリ DNS サフィックス、例: comp1.example.com) にする必要があります。 /ENUMerate 指定した名前を一覧にします。既定値は AllNames です。 /Verify 各コンピューター名に DNS A レコードと SPN があるかどうかを確認 します。 /SecurePasswordPrompt 資格情報の指定に、セキュリティで保護された資格情報ポップアップ を使用します。このオプションは、スマート カードの資格情報を指定 する必要がある場合に使用します。このオプションは、パスワード値を * と指定した場合のみ有効です。 NETDOM HELP コマンド | MORE ではヘルプ画面が 1 ページずつ表示されます。 コマンドは正しく完了しました。 |