はじめに
AWS上の同じパブリックサブネット内にActive Directory(AD)兼DNSサーバーをWindows Serverで構築し、新しいWindows Serverを同じサブネットに構築してドメイン参加を試みた際に、以下のエラーが発生することがあります。
ドメインのアクティブディレクトリリード、メインコントローラーに接続できませんでした。ドメイン名が正しく入力されていることを確認してください。
このエラーが発生する原因と、その解決方法について詳しく解説します。
1. DNS設定の確認
Windows Serverがドメインコントローラー(DC)を見つけられない場合、最も多い原因はDNS設定の誤りです。
確認方法
コマンドプロンプトを開き、以下を実行します。
ipconfig /all
DNSサーバーのアドレスが、ADサーバーのプライベートIPになっているか確認してください。
修正方法
- コントロールパネル → 「ネットワークとインターネット」 → 「ネットワークと共有センター」 → 「アダプターの設定の変更」
- 使用しているネットワークアダプターを右クリック → 「プロパティ」
- 「インターネット プロトコル バージョン 4 (TCP/IPv4)」を選択 → 「プロパティ」
- 「優先DNSサーバー」に ADサーバーのプライベートIPアドレス を指定。
- 以下を実行してキャッシュをクリア。
ipconfig /flushdns
2. ドメイン名の確認
正しいドメイン名を使用しているか確認してください(例: example.local
)。
以下のコマンドを実行し、ドメインコントローラーのIPアドレスが返るか確認します。
nslookup example.local
3. ドメインコントローラーとの接続確認
以下のコマンドを実行し、通信ができるか確認します。
ping <ドメインコントローラーのIP>
通信できない場合、AWSの**セキュリティグループ(SG)やネットワークACL(NACL)**の設定を見直してください。
4. ポートが開いているか確認
Active Directoryのドメイン参加には、以下のポートが開いている必要があります。
プロトコル | ポート | 説明 |
---|---|---|
TCP | 53 | DNS |
UDP | 53 | DNS |
TCP | 88 | Kerberos認証 |
UDP | 88 | Kerberos認証 |
TCP | 135 | RPC |
TCP | 139 | NetBIOS |
UDP | 137-138 | NetBIOS |
TCP | 389 | LDAP |
UDP | 389 | LDAP |
TCP | 445 | SMB |
TCP | 464 | Kerberos変更・リセット |
UDP | 464 | Kerberos変更・リセット |
TCP | 636 | LDAPS |
TCP | 3268 | グローバルカタログ |
TCP | 3269 | グローバルカタログ(SSL) |
修正方法
- AWSのセキュリティグループを開き、上記のポートが許可されているか確認
- AWSのネットワークACLを確認し、ポートがブロックされていないかチェック
5. ドメインコントローラーのステータス確認
ドメインコントローラーが正常に動作しているか確認するために、以下のコマンドを実行します。
dcdiag /v
また、ADのNTDSサービスが稼働しているか確認。
Get-Service -Name NTDS
Running
になっているかをチェックしてください。
6. ドメイン参加時に netdom
を使う
GUIでの参加に失敗する場合、netdom
コマンドを試すと詳細なエラーメッセージが確認できます。
netdom join <ホスト名> /domain:<ドメイン名> /userd:<管理者アカウント> /passwordd:*
例:
netdom join WIN-SERVER01 /domain:example.local /userd:Administrator /passwordd:*
7. 一時的にWindowsファイアウォールを無効化(テスト用)
もしセキュリティグループやNACLを修正しても解決しない場合、Windowsのファイアウォールが原因の可能性があります。
一時的に無効化してテスト
netsh advfirewall set allprofiles state off
ドメイン参加後に有効化
netsh advfirewall set allprofiles state on
8. 時刻同期のズレをチェック
AWS環境では、時刻同期がズレるとKerberos認証が失敗し、ドメイン参加ができなくなることがあります。
時刻同期を確認
w32tm /query /status
もし時刻がズレている場合は、以下を実行して同期をリセット。
w32tm /resync
まとめ
チェック項目 | 内容 |
---|---|
✅ DNS設定 | ADサーバーのプライベートIPを指定 |
✅ ドメイン名 |
example.local で nslookup 確認 |
✅ 接続確認 |
ping でDCと通信できるかチェック |
✅ ポート開放 | AWS SG/NACL で必要ポートが開いているか確認 |
✅ ADステータス |
dcdiag /v でエラー確認 |
✅ netdom コマンド |
詳細エラーを取得しながら参加を試す |
✅ ファイアウォール | 一時的に無効化してテスト |
✅ 時刻同期 |
w32tm /query /status でズレ確認 |
これらを試しても解決しない場合、エラーメッセージの詳細を確認して対応を進めてみてください!
参考文献