Active Directory 복제를 방해할 수 있는 DNS(도메인 이름 시스템) 설정을 확인하려면 먼저 DNS가 도메인에 대해 제대로 작동하는지 확인하는 기본 테스트를 실행하면 됩니다. 기본 테스트를 실행한 후 리소스 레코드 등록 및 동적 업데이트를 포함하여 DNS 기능의 다른 측면을 테스트할 수 있습니다.
모든 도메인 컨트롤러에서 이 기본 DNS 기능 테스트를 실행할 수 있지만 일반적으로 복제 문제가 발생할 수 있다고 생각되는 도메인 컨트롤러에서 이 테스트를 실행합니다(예: 이벤트 뷰어 Directory Service DNS 로그에서 이벤트 ID 1844, 1925, 2087 또는 2088을 보고하는 도메인 컨트롤러).
도메인 컨트롤러 기본 DNS 테스트 실행
기본 DNS 테스트는 DNS 기능의 다음 측면을 확인합니다:
-
연결성: 도메인 컨트롤러가 DNS에 등록되어 있고
ping
명령으로 연결할 수 있으며, 경량 디렉터리 액세스 프로토콜/원격 프로시저 호출(LDAP/RPC) 연결이 있는지 여부를 확인합니다. 도메인 컨트롤러에서 연결 테스트가 실패하면 해당 도메인 컨트롤러에 대해 다른 테스트가 실행되지 않습니다. 연결 테스트는 다른 DNS 테스트를 실행하기 전에 자동으로 수행됩니다. - 필수 서비스: 테스트는 DNS 클라이언트 서비스, Net Logon 서비스, KDC(키 배포 센터) 서비스 및 DNS 서버 서비스(DNS가 도메인 컨트롤러에 설치된 경우)와 같은 서비스가 실행 중이며 테스트된 도메인 컨트롤러에서 사용할 수 있는지 확인합니다.
- DNS 클라이언트 구성: 테스트는 DNS 클라이언트 컴퓨터의 모든 네트워크 어댑터에 있는 DNS 서버에 연결할 수 있는지 확인합니다.
- 리소스 레코드 등록: 테스트는 각 도메인 컨트롤러의 호스트(A) 리소스 레코드가 클라이언트 컴퓨터에 구성된 DNS 서버 중 하나 이상에 등록되어 있는지 확인합니다.
- SOA(권한 영역 및 시작): 도메인 컨트롤러가 DNS 서버 서비스를 실행하는 경우 테스트는 Active Directory 도메인 영역에 대한 Active Directory 도메인 영역 및 SOA(권한 시작) 리소스 레코드가 있는지 확인합니다.
- 루트 영역: 루트(.) 영역이 있는지 여부를 확인합니다.
이 절차를 완료하려면 최소한 Enterprise Admins 또는 이와 동등한 자격이 필요합니다.
다음 절차를 사용하여 기본 DNS 기능을 확인할 수 있습니다.
기본 DNS 기능을 확인하려면 다음을 수행합니다:
테스트하려는 도메인 컨트롤러 또는 AD DS(Active Directory Domain Services) 도구가 설치된 도메인 구성원 컴퓨터에서 관리자 권한으로 명령 프롬프트를 엽니다. 관리자 권한으로 명령 프롬프트를 열려면 시작을 클릭합니다.
검색 시작에 명령 프롬프트를 입력합니다.
시작 메뉴 위쪽에서 명령 프롬프트를 마우스 오른쪽 단추로 클릭한 다음 관리자 권한으로 실행을 클릭합니다. 사용자 계정 컨트롤 대화 상자가 나타나면 표시되는 작업이 원하는 작업인지 확인한 다음 계속을 클릭합니다.
명령 프롬프트에서 다음 명령을 입력한 다음 Enter 키를 누릅니다.
dcdiag /test:dns /v /s:<DCName> /DnsBasic /f:dcdiagreport.txt
도메인 컨트롤러의 실제 고유 이름, NetBIOS 이름 또는 DNS 이름을 <DCName>으로 바꿉니다. 또는 /s: 대신 /e를 입력하여 포리스트의 모든 도메인 컨트롤러를 테스트할 수 있습니다. /f 스위치는 이전 명령에서 dcdiagreport.txt 파일 이름을 지정합니다. 현재 작업 디렉터리가 아닌 다른 위치에 파일을 배치하려는 경우 /f:c:reportsdcdiagreport.txt 같은 파일 경로를 지정할 수 있습니다.메모장 또는 유사한 텍스트 편집기에서 dcdiagreport.txt 파일을 엽니다. 메모장에서 파일을 열려면 명령 프롬프트에서 메모장 dcdiagreport.txt 입력한 다음 Enter 키를 누릅니다. 파일을 다른 작업 디렉터리에 배치한 경우 파일 경로를 포함합니다. 예를 들어 c:reports에 파일을 배치한 경우 메모장 c:reportsdcdiagreport.txt 입력한 다음 Enter 키를 누릅니다.
파일 아래쪽 근처의 요약 테이블로 스크롤합니다.
요약 표에서 "경고" 또는 "실패" 상태를 보고하는 모든 도메인 컨트롤러의 이름을 확인합니다. “DC: DCName” 문자열을 검색하여 자세한 브레이크아웃 섹션을 찾아서 문제가 있는 도메인 컨트롤러가 있는지 확인합니다(여기서 DCName은 도메인 컨트롤러의 실제 이름입니다).
필요한 명백한 구성 변경 내용이 표시되면 적절하게 변경하세요. 예를 들어 도메인 컨트롤러 중 하나에 명백한 잘못된 IP 주소가 있는 경우 수정할 수 있습니다. 그런 다음 테스트를 다시 실행합니다.
구성 변경 내용의 유효성을 검사하려면 /e: 또는 /s: 스위치를 사용하여 Dcdiag /test:DNS /v 명령을 적절하게 다시 실행합니다. 도메인 컨트롤러에서 IP 버전 6(IPv6)을 사용하도록 설정하지 않은 경우 테스트의 호스트(AAAA) 유효성 검사 부분이 실패할 것으로 예상해야 하지만 네트워크에서 IPv6을 사용하지 않는 경우 이러한 레코드가 필요하지 않습니다.
리소스 레코드 등록 확인
대상 도메인 컨트롤러는 CNAME(DNS 별칭) 리소스 레코드를 사용하여 원본 도메인 컨트롤러 복제 파트너를 찾습니다. Windows Server(Windows Server 2003 서비스 팩 1(SP1)부터)를 실행하는 도메인 컨트롤러는 정규화된 도메인 이름(FQDN)을 사용하여 원본 복제 파트너를 찾을 수 있으며, 실패할 경우 NetBIOS 이름을 사용합니다. 또한 별칭(CNAME) 리소스 레코드가 존재하는 것이 예상되며, 적절한 DNS 기능을 확인해야 합니다.
다음 절차를 사용하여 별칭(CNAME) 리소스 레코드 등록을 포함하여 리소스 레코드 등록을 확인할 수 있습니다.
리소스 레코드 등록을 확인하려면
- 관리자 권한으로 명령 프롬프트를 엽니다. 관리자 권한으로 명령 프롬프트를 열려면 시작을 클릭합니다. 검색 시작에 명령 프롬프트를 입력합니다.
- 시작 메뉴 위쪽에서 명령 프롬프트를 마우스 오른쪽 단추로 클릭한 다음 관리자 권한으로 실행을 클릭합니다. 사용자 계정 컨트롤 대화 상자가 나타나면 표시되는 작업이 원하는 작업인지 확인한 다음 계속을 클릭합니다.
Dcdiag 도구를 사용하여dcdiag /test:dns /DnsRecordRegistration
명령을 실행하여 도메인 컨트롤러 위치에 필수적인 모든 리소스 레코드의 등록을 확인할 수 있습니다.
이 명령은 DNS에서 다음 리소스 레코드의 등록을 확인합니다:
- 별칭(CNAME): 복제 파트너를 찾는 GUID(Globally Unique Identifier) 기반 리소스 레코드
- 호스트(A): 도메인 컨트롤러의 IP 주소를 포함하는 호스트 리소스 레코드
- LDAP SRV: LDAP 서버를 찾는 SRV(서비스) 리소스 레코드
- GC SRV: 글로벌 카탈로그 서버를 찾는 서비스(SRV) 리소스 레코드
- PDC SRV: PDC(주 도메인 컨트롤러) 에뮬레이터 작업 마스터를 찾는 SRV(서비스) 리소스 레코드
다음 절차를 사용하여 별칭(CNAME) 리소스 레코드 등록만 확인할 수 있습니다.
별칭(CNAME) 리소스 레코드 등록을 확인하려면
- DNS 스냅인을 엽니다. DNS를 열려면 시작을 클릭합니다. 검색 시작에서 dnsmgmt.msc를 입력한 다음 Enter 키를 누릅니다. 사용자 계정 컨트롤 대화 상자가 나타나면 원하는 작업이 표시되는지 확인한 다음 계속을 클릭합니다.
- DNS 스냅인을 사용하여 DNS 서버 서비스를 실행하는 도메인 컨트롤러를 찾습니다. 여기서 서버는 도메인 컨트롤러의 Active Directory 도메인과 동일한 이름으로 DNS 영역을 호스트합니다.
- 콘솔 트리에서 이름이 _msdcs 영역을 클릭합니다. Dns_Domain_Name.
- 세부 정보 창에서 다음 리소스 레코드가 있는지 확인합니다. 이름이 Dsa_Guid._msdcs.<Dns_Domain_Name>인 별칭(CNAME) 리소스 레코드와 DNS 서버 이름에 해당하는 호스트(A) 리소스 레코드가 있는지 확인합니다.
별칭(CNAME) 리소스 레코드가 등록되지 않은 경우 동적 업데이트가 제대로 작동하는지 확인합니다. 다음 섹션의 테스트를 사용하여 동적 업데이트를 확인합니다.
동적 업데이트 확인
기본 DNS 테스트에서 리소스 레코드가 DNS에 없는 것으로 표시되는 경우 동적 업데이트 테스트를 사용하여 Net Logon 서비스가 리소스 레코드를 자동으로 등록하지 않은 이유를 확인합니다. Active Directory 도메인 영역이 보안 동적 업데이트를 수락하고 테스트 레코드(_dcdiag_test_record)의 등록을 수행하도록 구성되었는지 확인하려면 다음 절차를 사용합니다. 테스트 레코드는 테스트 후에 자동으로 삭제됩니다.
동적 업데이트를 확인하려면
- 관리자 권한으로 명령 프롬프트를 엽니다. 관리자 권한으로 명령 프롬프트를 열려면 시작을 클릭합니다. 검색 시작에 명령 프롬프트를 입력합니다. 시작 메뉴 위쪽에서 명령 프롬프트를 마우스 오른쪽 단추로 클릭한 다음 관리자 권한으로 실행을 클릭합니다. 사용자 계정 컨트롤 대화 상자가 나타나면 표시되는 작업이 원하는 작업인지 확인한 다음 계속을 클릭합니다.
- 명령 프롬프트에서 다음 명령을 입력한 다음 Enter 키를 누릅니다.
dcdiag /test:dns /v /s:<DCName> /DnsDynamicUpdate
도메인 컨트롤러의 고유 이름, NetBIOS 이름 또는 DNS 이름을 <DCName>으로 바꿉니다. 또는 /s: 대신 /e를 입력하여 포리스트의 모든 도메인 컨트롤러를 테스트할 수 있습니다. 도메인 컨트롤러에서 IPv6을 사용하도록 설정하지 않은 경우 테스트의 호스트(AAAA) 리소스 레코드 부분이 실패할 것으로 예상해야 합니다. 이는 IPv6을 사용하도록 설정하지 않은 경우 정상적인 조건입니다.
보안 동적 업데이트가 구성되지 않은 경우 다음 절차를 사용하여 구성할 수 있습니다.
보안 동적 업데이트를 사용하도록 설정하려면
- DNS 스냅인을 엽니다. DNS를 열려면 시작을 클릭합니다.
- 검색 시작에서 dnsmgmt.msc를 입력한 다음 Enter 키를 누릅니다. 사용자 계정 컨트롤 대화 상자가 나타나면 원하는 작업이 표시되는지 확인한 후, 계속을 클릭합니다.
- 콘솔 트리에서 해당 영역을 마우스 오른쪽 버튼으로 클릭한 다음 속성을 클릭합니다.
- 일반 탭에서 영역 유형이 Active Directory 통합되어 있는지 확인합니다.
- Dynamic Updates(동적 업데이트)에서 Secure only(보안만)를 클릭합니다.
DNS 리소스 레코드 등록
DNS 리소스 레코드가 원본 도메인 컨트롤러의 DNS에 표시되지 않는 경우 동적 업데이트를 확인했으며 DNS 리소스 레코드를 즉시 등록하려는 경우 다음 절차를 사용하여 수동으로 등록을 강제할 수 있습니다. 도메인 컨트롤러의 Net Logon 서비스는 도메인 컨트롤러가 네트워크에 배치되는 데 필요한 DNS 리소스 레코드를 등록합니다. DNS 클라이언트 서비스는 별칭(CNAME) 레코드가 가리키는 호스트(A) 리소스 레코드를 등록합니다.
DNS 리소스 레코드를 수동으로 등록하려면
- 관리자 권한으로 명령 프롬프트를 엽니다. 관리자 권한으로 명령 프롬프트를 열려면 시작을 클릭합니다.
- 검색 시작에 명령 프롬프트를 입력합니다.
- 시작 메뉴 위쪽에서 명령 프롬프트를 마우스 오른쪽 버튼으로 클릭한 다음, 관리자 권한으로 실행을 클릭합니다. 사용자 계정 컨트롤 대화 상자가 나타나면 표시되는 작업이 원하는 작업인지 확인한 다음 계속을 클릭합니다.
- 원본 도메인 컨트롤러에서 도메인 컨트롤러 로케이터 리소스 레코드 등록을 수동으로 시작하려면 명령 프롬프트에서 다음 명령을 입력한 다음 Enter 키를 누릅니다.
net stop netlogon && net start netlogon
- 호스트(A) 리소스 레코드 등록을 수동으로 시작하려면 명령 프롬프트에서 다음 명령을 입력한 다음 Enter 키를 누릅니다.
ipconfig /flushdns && ipconfig /registerdns
- 명령 프롬프트에서 다음 명령을 입력한 다음 Enter 키를 누릅니다.
dcdiag /test:dns /v /s:<DCName>
도메인 컨트롤러의 고유 이름, NetBIOS 이름 또는 DNS 이름을 <DCName>으로 바꿉니다. 테스트의 출력을 검토하여 DNS 테스트가 통과했는지 확인합니다. 도메인 컨트롤러에서 IPv6을 사용하도록 설정하지 않은 경우 테스트의 호스트(AAAA) 리소스 레코드 부분이 실패할 것으로 예상해야 합니다. 이는 IPv6을 사용하도록 설정하지 않은 경우 정상적인 조건입니다.