Windows 시간 서비스는 Active Directory에서 중요합니다. 기본적으로 Kerberos 인증에서는 표준 시간대 차이 및 일광 절약 시간을 수정할 때 도메인에 있는 모든 시스템의 시계가 서로 5분 이내에 동기화되어야 합니다. 시계가 이 범위를 벗어난 컴퓨터는 인증할 수 없으며 도메인 리소스에 액세스할 수 없습니다.
AD 도메인 내에서 PDC Emulator FSMO 역할을 하는 DC(Domain Controller)는 전체 도메인의 주 시간 서버입니다. 하지만 도메인의 모든 컴퓨터가 PDC 에뮬레이터와 시계를 직접 동기화한다는 의미는 아닙니다. 다른 DC는 PDC 에뮬레이터와 동기화하며, 구성원 서버 및 클라이언트는 모든 DC와 동기화할 수 있습니다. 이 계층 구조에서 PDC 에뮬레이터는 공개 NTP 서버 같은 외부 시간 소스와 동기화하도록 구성된 유일한 컴퓨터여야 합니다. 도메인의 나머지 모든 항목을 AD와 동기화하도록 구성해야 합니다. 다른 구성을 사용하면 시계 동기화가 손실될 수 있습니다.
Windows 시간 서비스의 작동 방식에 대한 자세한 내용은 이 TechNet 사이트를 참조하십시오.
문제의 범위 확인
Windows 시간 서비스 문제 해결의 첫 번째 단계는 영향을 받는 컴퓨터 수를 확인하는 것입니다. 한 컴퓨터에서만 시간이 잘못된 경우 문제를 해결하는 데 필요한 단계는 도메인 전체 시간 문제를 해결하는 데 필요한 단계와 다릅니다.
영향을 받는 컴퓨터가 몇 대뿐인 경우
- 영향을 받는 시스템에서 Windows Vista 이상을 실행 중인 경우 명령 프롬프트에서 w32tm /query /source를 실행하여 영향을 받는 시스템의 시간 소스를 확인합니다. 외부 시간 소스는 이 명령이 PDC 에뮬레이터에서 실행되는 경우에만 나열되어야 합니다. 그렇지 않으면 명령이 DC의 이름을 도메인에 출력합니다.
- w32tm /query /status 명령은 시스템의 시간 소스와 기타 유용한 정보도 표시합니다. /verbose 스위치는 더 많은 정보를 제공합니다. 첫 번째 명령과 마찬가지로 이러한 스위치는 Windows Vista 이상을 실행하는 컴퓨터에서만 사용할 수 있습니다.
- 올바른 시간 소스가 나열되면 w32tm /resync를 사용하여 시스템 시계를 시간 소스와 다시 동기화할 수 있습니다. 이 명령에 /rediscover 스위치를 추가하면 시스템에서 먼저 네트워크 시간 소스를 검색한 다음 다시 동기화를 시도합니다.
- 컴퓨터의 시간 소스를 변경하려면 다음 두 명령 중 하나를 사용할 수 있습니다.
w32tm /config /syncfromflags:DOMHIER /update는 시스템이 AD(Domain Hierarchy)를 시간 소스로 사용하도록 구성합니다.
w32tm /config /syncfromflags:MANUAL /manualpeerlist:<list> /update는 목록의> 시간 서버를< 시간 소스로 사용하도록 컴퓨터를 구성합니다.
참고: 목록에 여러 시간 서버가 지정된 <경우 공백으로 구분해야 하며 전체 목록을 따옴표로 묶어야 합니다.>
전체 도메인이 영향을 받는 경우
- 도메인의 모든 컴퓨터에서 시간이 잘못된 경우 PDC 에뮬레이터가 문제의 원인일 가능성이 높습니다. DC에서 netdom query fsmo 명령을 실행하여 PDC 에뮬레이터 역할을 하는 DC를 결정합니다.
- PDC 에뮬레이터의 명령 프롬프트에서 w32tm /query /source를 실행하여 외부 시간 소스와 동기화하도록 구성합니다. PDC 에뮬레이터는 도메인의 주 시간 소스이므로 도메인과 동기화하도록 구성해서는 안 됩니다.
- PDC 에뮬레이터가 VM(Virtual Machine)인 경우 게스트 호스트 시계 동기화를 비활성화합니다. 이 절차는 가상화 호스트에서 실행 중인 운영 체제에 따라 다릅니다.
- PDC 에뮬레이터를 하나 이상의 외부 시간 서버와 동기화하도록 구성하려면 다음 명령을 사용합니다.
w32tm / config / syncfromflags : 수동 / manualpeerlist : <목록> / 업데이트
참고: 목록에 여러 시간 서버가 지정된 <경우 공백으로 구분해야 하며 전체 목록을 따옴표로 묶어야 합니다.>
Windows 시간 서비스 레지스트리 설정
위 절차에서 지정된 w32tm 명령은 다음 레지스트리 키 아래에 있는 Windows 시간 서비스 레지스트리 값을 변경합니다.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time
물론 w32tm 명령을 사용하는 대신 이러한 값을 수동으로 설정할 수 있습니다. 그렇게 선택하면 다음 사이트가 유용할 수 있습니다.
그룹 정책
w32tm 명령을 사용하거나 레지스트리를 사용해 Windows 시간 서비스를 변경했지만 이러한 변경 사항이 전혀 적용되지 않거나 이전 값으로 되돌리기 전에 잠시 동안만 효과를 발휘하는 경우 GPO(Group Policy Object)가 변경 사항을 재정의할 수 있습니다. Windows 시간 서비스에 대한 그룹 정책 설정에는 레지스트리 또는 w32tm 명령을 사용해 구성할 수 있는 여러 동일한 항목이 포함되어 있습니다. 이러한 설정은 다음 위치에서 찾을 수 있습니다.
Computer Configuration\Policies\Administrative Templates\System\Windows Time Service
Windows 시간 서비스 레지스트리 값을 기본 설정으로 재설정합니다.
다른 모든 작업이 실패하면 이 절차를 통해 Windows 시간 서비스가 기본 설정으로 재설정됩니다.
- 서비스 콘솔을 열고 실행 중인 경우에는 Windows 시간 서비스를 중지하거나 명령 프롬프트에서 net stop w32time을 실행합니다.
- 관리자 권한 명령 프롬프트를 열고 w32tm /unregister를 실행하여 레지스트리에서 Windows 시간 서비스를 제거합니다. 서비스가 서비스 콘솔에 더 이상 나열되지 않습니다.
- w32tm /register를 실행하여 기본 레지스트리 설정으로 서비스를 다시 생성합니다.
- 필요한 레지스트리를 변경한 다음 서비스 콘솔에서 또는 net start w32time 명령으로 Windows 시간 서비스를 시작합니다.