윈도우 NTP 동기화 하는 방법
윈도우 NTP 동기화 하는 방법
우선 시간 서버와의 자신의 서버와 시간 간격을 추적하는 명령은 아래와 같다.
w32m /stripchart /dataonly /computer:kr.pool.ntp.org
시간서버와 시간 차이가 많이 난다면 동기화를 주기적으로 해주는 것이 좋다.
아래 예제는 kr.pool.ntp.org 서버를 대상으로 NTP 동기화 하는 명령어 셋이다. 개인적으로 만들어 쓰고 있는 내용이니 그냥 참고만 하기 바란다.
reg add “HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient” /v SpecialPollInterval /t REG_DWORD /d 3600 /f
reg add “HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config” /v MaxPosPhaseCorrection /t REG_DWORD /d 0xFFFFFFFF /f
reg add “HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config” /v MaxNegPhaseCorrection /t REG_DWORD /d 0xFFFFFFFF /f
w32tm /config /syncfromflags:manual /manualpeerlist:”kr.pool.ntp.org”
sc config w32time start= auto
sc triggerinfo w32time start/networkon stop/networkoff
net stop w32time
net start w32time
w32tm /resync /nowait
각 커맨드의 의미를 대략 설명하겠다.
reg add “HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient” /v Enabled /t REG_DWORD /d 1 /f
→ NTP Client를 활성화 하겠다는 뜻. 기본으로 활성화 되어 있으나 확실히 해주기 위함.
reg add “HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient” /v SpecialPollInterval /t REG_DWORD /d 3600 /f
→ 3600초(1시간) 주기로 동기화 하겠다는 뜻
reg add “HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config” /v MaxPosPhaseCorrection /t REG_DWORD /d 0xFFFFFFFF /f
reg add “HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config” /v MaxNegPhaseCorrection /t REG_DWORD /d 0xFFFFFFFF /f
→ 이 항목의 기본 값은 54000초(15시간)인데, 현재 시간과 NTP 서버의 시간이 15시간 이상 차이가 나면 동기화 하지 않는다. 이 값을 0xFFFFFFFF로 변경하면 시간 차이에 상관없이 무조건 동기화 하겠다는 뜻이다. 대충 1년 정도 시간을 틀리게 설정해놓고 테스트 해봤는데 동기화가 잘 되었다.
w32tm /config /syncfromflags:manual /manualpeerlist:”kr.pool.ntp.org”
→ NTP 서버를 kr.pool.ntp.org로 지정함
sc config w32time start= auto
→ Windows Time 서비스가 자동으로 시작되도록 설정
sc triggerinfo w32time start/networkon stop/networkoff
→ Windows Time 서비스는 기본적으로 Domain에 가입된 상태에서만 자동으로 시작되게 트리거 설정되어 있다. 따라서 이 트리거를 네트워크 시작/중지로 변경해 주는 것이다. 이렇게 하지 않으면 WORKGROUP 환경에서는 sc config w32time start= auto 해두어도 실제로는 리부팅 후 자동으로 서비스가 올라오지 않는다. 따라서 반드시 필요한 설정이라 할 수 있다.
net stop w32time
net start w32time
→ Windows Time 서비스 재시작
w32tm /resync /nowait
→ NTP 동기화 즉시 실행
이렇게 설정하고 현재의 NTP 동기화 상태를 확인하고 싶다면 아래와 같이 입력하면 된다.
w32tm /query /status
윤초 조정: 0(경고 없음)
계층: 3(보조 참조 – (S)NTP로 동기화됨)
정밀도: -6(틱당 15.625ms)
루트 지연: 0.1697235s
루트 분산: 7.7969707s
참조 ID: 0xD3278804(원본 IP: 211.39.136.4)
마지막으로 동기화한 시간: 2014-02-12 오전 1:15:15