딜미의 잡다한 IT 이야기...

WINDOWS 2012에 NTP 구축 하기 본문

Server/Windows Server

WINDOWS 2012에 NTP 구축 하기

딜미 2019. 9. 5. 09:32

 NTP Server 구성

 

WINDOWS 2012 에서 GUI로 구성하는 NTP 기능은 따로 없다.

 

WINDOWS 에서 NTP 서버 및 클라이언트 기능은 w32time 라는 서비스가 담당한다.

 

WINDOWS에서 기본적으로 w32time 서비스는 비활성화 되어 있다.

 

현재 활성화 되어 있는지 확인 해 보기 위한 명령어는 아래와 같다.

 

1. 실행 창에서 cmd를 입력하여 창을 열어 준다.

2. w32tm /query /configuration 명령어를 입력한다.

위 와 같은 화면이 나올 것이다. 기본적으로 w32time 서비스가 실행되고 있지 않음으로.

 

따라서 w32time 서비스를 실행 시켜 줘야 한다.

 

그전에 먼저 w32time 서비스가 윈도우 부팅시 자동으로 시작 될 수 있게 구성을 진행한다.

 

1. 실행 창에서 cmd를 입력하여 창을 열어 준다.

2. sc triggerinfo w32time start/networkon stop/networkoff 명령어를 입력한다.

위와 같이 성공으로 나오면 정상적으로 등록된 것이다.

 

P.S 위와 같은 상황은 도메인에 가입되어 있지 않은 WORKGROUP에 가입되어 있을 때 사용하는 구성 방법으로 도메인에 가입 되어 있는 상황이라면 위의 방법을 상용하지 않고 그냥 사용해도 된다.

 

이제 w32time 서비스를 실행한다.

 

1. 실행 창에서 cmd를 입력하여 창을 열어 준다.

2. net start w32time

위와 같이 서비스가 잘 시작되었다는 메시지를 확인한다.

 

서비스 실행이 완료 되었다면 이제는 NTP 상태를 확인해 본다.

 

1. 실행 창에서 cmd를 입력하여 창을 열어 준다.

2. w32tm /query /configuration

위와 같은 화면이 출력이 된다. 위의 화면에서 박스 표시된 곳을 보면 Enabled의 값이 0으로 되어 있다. 이 값을 1로 바꿔 주어야 정상적인 NTP서비스가 실행될 수 있다.

cmd창에서 아래의 명령어를 입력하여 레지스트리를 변경 시키면 된다.

 

reg add "HKLM\SYSTEM\CurrentControlSet\services\W32Time\TimeProviders\NtpServer" /v "Enabled" /t "REG_DWORD" /d "1" /f

 

위의 명령어를 입력 후 설정 값을 업데이트 해주어야 적용이 된다.

 

적용하는 명령어는 다음과 같다.

 

w32tm /config /update

 

값이 변경되었는지 다시 NTP 상태 확인 명령어를 입력해 준다.

 

w32tm /query /configuration

Enabled 값이 0에서 1로 변경된 것을 확인 할 수 있다.

 

위의 작업이 모두 끝난 후 외부 NTP서버를 기준으로 시간동기화 설정을 한다.

1. 실행 창에서 cmd를 입력하여 창을 열어 준다.

2. w32tm /config /syncfromflags:manual /manualpeerlist:time.windows.com /update

위와 같이 성공적으로 등록이 되면 아래의 명령어로 w32tm 서비스의 설정 값을 확인한다.

 

w32tm /dumpreg /subkey:Parameters

위에 박스 표시된 곳에 NTP SERVER time.windows.com으로 등록되어 있는 것이 확인된다.

 

이제 w32tm 서비스를 재시작 해준다.

net stop w32time

net start w32time

w32tm 서비스 재시작 후 아래의 명령어로 시간 동기화 작업을 진행한다.

 

w32tm /resync

방화벽이 활성화 되어 있는 상태에서는 위와 같이 성공적 완료가 되어도 클라이언트에서

NTP서버 정보를 가져올 수가 없다.

 

NTP서버의 방화벽에서 외부 UDP 123 포트를 Open해 주어야 한다.

방화벽 고급설정에서 인바운드 규칙에 UDP 123 포트 Open 설정을 한다.

 

이로서 NTP서버 설정은 완료.

 

 

NTP Client 설정

 

먼저 w32time 서비스가 윈도우 부팅시 자동으로 시작 될 수 있게 구성을 진행한다

 

1. 실행 창에서 cmd를 입력하여 창을 열어 준다.

2. sc triggerinfo w32time start/networkon stop/networkoff 명령어를 입력한다.

위와 같이 성공으로 나오면 정상적으로 등록된 것이다.

 

P.S 위와 같은 상황은 도메인에 가입되어 있지 않은 WORKGROUP에 가입되어 있을 때 사용하는 구성 방법으로 도메인에 가입 되어 있는 상황이라면 위의 방법을 상용하지 않고 그냥 사용해도 된다.

 

내부 NTP서버 IP를 기준으로 시간 동기화 설정을 한다.

 

1. 실행 창에서 cmd를 입력하여 창을 열어 준다.

2. w32tm /config /syncfromflags:manual /manualpeerlist:내부 NTP서버 IP /update

설정이 완료 되면 w32tm 서비스의 설정값을 확인한다.

내부 NTP Server IP로 변경 되었음을 확인한다.

 

이제 w32tm 서비스를 재시작 해준다.

net stop w32time

net start w32time

서비스 재시작 후 시간 동기화를 실행한다.

 

cmd -> w32tm /resync

 

시간 동기화가 정상적으로 등록 되었는지 확인을 한다.

 

1. 실행 창에서 cmd를 입력하여 창을 열어 준다.

2. w32tm /stripchart /dataonly /computer:내부 NTP Server IP

위와 같이 확인 할 수 있다.

 

P.S 내부 NTP Server Client 간의 시간차이가 너무 많을 경우 동기화가 안된다. 그러므로

Client의 시간을 수동으로 NTP Server의 근접한 시간으로 맞춘 후 동기화 할 수 있도록 한다.

 

END.

Comments