概要
本記事では、Windows Server上でPowerShellを使用してActive Directory(AD)を構築し、2台目のドメインコントローラー(DC)を追加するまでの手順を解説します。
変数表記について
本記事では、環境依存の値を以下のように表記しています。実際の構築環境に合わせて置き換えてください。
| 変数名 | 設定例 | 説明 |
|---|---|---|
<<DOMAIN_NAME>> |
example.local |
Active Directoryドメイン名 |
<<NETBIOS_NAME>> |
EXAMPLE |
NetBIOS名(大文字推奨) |
<<ADMIN_PASSWORD>> |
P@ssw0rd! |
DSRMモード(ディレクトリサービス復元モード)用パスワード |
<<DOMAIN_ADMIN>> |
Administrator |
ドメイン管理者アカウント |
<<DOMAIN_ADMIN_PASSWORD>> |
P@ssw0rd! |
ドメイン管理者パスワード(自動化で使用) |
<<INTERFACE_ALIAS>> |
Ethernet |
ネットワークアダプタ名(例:Ethernet、Ethernet0など) |
<<PRIMARY_DC_IP>> |
192.168.1.10 |
1号機(プライマリDC)のIPアドレス |
Step 1: 1号機にAD DS役割をインストール
まず、1号機にActive Directory Domain Services(AD DS)役割をインストールします。
Install-WindowsFeature AD-Domain-Services -IncludeManagementTools
Step 2: 新しいフォレストを作成しドメインコントローラーに昇格
PowerShellで新しいフォレストを作成し、1号機をプライマリドメインコントローラーとして昇格させます。
フォレスト/ドメイン機能レベル一覧
| 機能レベル | 列挙子名 |
|---|---|
| Windows Server 2008 | Window2008 |
| Windows Server 2008 R2 | Window2008R2 |
| Windows Server 2012 | Window2012 |
| Windows Server 2012 R2 | Window2012R2 |
| Windows Server 2016 | WinThreshold |
| Windows Server 2025 | Win2025 |
💡 この例では、フォレストおよびドメイン機能レベルとして Windows Server 2016(WinThreshold) を使用しています。
Install-ADDSForest `
-DomainName "<<DOMAIN_NAME>>" `
-DomainNetbiosName "<<NETBIOS_NAME>>" `
-SafeModeAdministratorPassword (ConvertTo-SecureString "<<ADMIN_PASSWORD>>" -AsPlainText -Force) `
-InstallDNS:$true `
-ForestMode WinThreshold `
-DomainMode WinThreshold `
-Force
⚠️ 再起動を求められた場合は次のコマンドで再起動します。
Restart-Computer
Step 3: 1号機のドメインコントローラーを確認
昇格後、ドメイン構成が正常に作成されたか確認します。
Get-ADDomain
Get-ADDomainController
Get-Service DNS
Step 4: 2号機にAD DS役割をインストール
次に、2号機にAD DSを追加インストールします。
Install-WindowsFeature AD-Domain-Services -IncludeManagementTools
Step 5: DNS設定の確認と構成
2号機をドメインコントローラーに昇格する前に、DNS設定を必ず確認します。
ドメイン参加およびレプリケーションには、既存の1号機(プライマリDC)のDNSが正しく参照できる必要があります。
# 現在のネットワーク設定を確認
Get-DnsClientServerAddress
# 1号機のIPアドレスを指定
Set-DnsClientServerAddress -InterfaceAlias "<<INTERFACE_ALIAS>>" -ServerAddresses "<<PRIMARY_DC_IP>>"
⚠️ 2号機のDNSが自己参照(自分自身のIP)になっていると、ドメイン昇格時にエラーが発生します。
必ず1号機(プライマリDC)を最初のDNSサーバーとして指定してください。
Step 6: 2号機を追加ドメインコントローラーとして昇格
# 資格情報
$User = "<<NETBIOS_NAME>>\<<DOMAIN_ADMIN>>"
$Pass = ConvertTo-SecureString "<<DOMAIN_ADMIN_PASSWORD>>" -AsPlainText -Force
$Cred = New-Object System.Management.Automation.PSCredential($User, $Pass)
Install-ADDSDomainController `
-DomainName "<<DOMAIN_NAME>>" `
-Credential $Cred `
-SafeModeAdministratorPassword (ConvertTo-SecureString "<<ADMIN_PASSWORD>>" -AsPlainText -Force) `
-InstallDNS:$true `
-Force
⚠️ 再起動を求められた場合は次のコマンドで再起動します。
Restart-Computer
Step 7: ドメインコントローラー構成を検証
両方のドメインコントローラーがレプリケーション対象として登録されているか確認します。
Get-ADDomainController -Filter *
レプリケーションの状態を詳細に確認するには以下を使用します。
repadmin /replsummary
repadmin /showrepl
Step 8: DNSと同期状態を確認(オプション)
ドメインコントローラーのDNSサービスや時刻同期を確認します。
Get-Service DNS
w32tm /query /status
結論
これらの手順を実行することで、PowerShellを使ってActive Directory環境を構築し、冗長性を確保したドメインコントローラー構成を迅速に展開できます。スクリプト化することで、将来的な環境再構築や複数拠点展開も容易になります。
