Windows2014. 11. 20. 08:26

출처 : http://rockball.tistory.com/entry/Active-Directory-Time-Service

 

 

Active Directory에서 Time Server 지정에 대해 알아보겠습니다.

Active Directory에서 Time Service의 원본은 PDC 작업 마스터를 가진 Domain Controller가 됩니다.

(NTP : UDP 123 Port 사용)

 

그러므로, 설정은 PDC서버는 외부의 NTP 서버를 가르켜야합니다.

PDC가 아닌 서버와 Client의 경우에는 해당 PDC를 바라보도록 설정해야합니다.

* PDC 서버

w32tm /config /manualpeerlist:"timeserverlist1 timeserverlist2,0x1" /reliable:yes /update

해당 명령어 수행 후 registry 값을 확인합니다.

HKLM\SYSTEM\CurrentControlSet\services\W32Time\Parameters

- NtpServer (문자열값) : Ntp Server

- Type (문자열값) : NTP

* PDC 아닌 DC, Member Server

w32tm /config /syncfromflags:domhier /update

net stop w32time

net start w32time

해당 명령어 수행 후 registry 값을 확인합니다.

HKLM\SYSTEM\CurrentControlSet\services\W32Time\Parameters

- Type (문자열값) : NT5DS

 

 현재 Computer의 Time Zone을 확인합니다.

 

 해당 computer와 현재 computer와의 시간차이를 측정합니다.

 

해당 computer와 PDC 작업 마스터를 가진 Domain controller의 시간 차가 5분 이상인 경우 인증이 되지 않을 수 있습니다.

Domain Controller의 경우에는 Replication 오류가 발생합니다.

 

체크해야할 사항은 DC끼리 Time 동기화가 잘되고 있는지 확인을 1차로 해야하며

그 뒤에 Member Server가 정상적으로 Time 동기화가 되는지 확인해야합니다.

왜냐하면, Member Server가 로그온 한 DC에 Time 동기화를 수행하므로 DC간에 동기화가 잘되고 있어야합니다.

 

마지막으로 현재 Time 설정에 대해 확인하는 방법입니다.

위와 같이 현재 동기화 하고 있는 Time 설정을 확인 할 수 있습니다.

 

만일 시간 서버와 재동기화가 필요한 경우 다음 명령어를 수행합니다.

 

 Peer 상태 확인

시간 동기화 관련 설정 확인

- w32tm /query /configuration

Windows Time serivice 등록 / 해제

- w32tm /register        (서비스 등록)

- w32tm /unregister    (서비스 해제)

 

동기화할 타임 서버 설정

- 0x01 : SpecialInterval

- 0x02 : UserAs FallbackOnly

- 0x04 SymmatricActive

- 0x08 Client

 

다음은 Time Service 관련 Registry Key 값입니다.

* 시간 서비스 대상 정하기HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config

- 값이름 : AnnounceFlags

- 데이터 형식 : DWORD

- 데이터 : A(내부 H/W Clock 기준), 5(외부 시간 원본 사용)

 

위 값 변경 후 NTP 서비스 재기동

PDC마스터가 자기 자신과 동기화 되면 오류가 발생하므로 PDC 마스터에서는 해당 값을 변경하면 안됩니다.

* NTP 동기화 시도 시간 설정

HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient

- 값이름 : SpecialPollInterval

- 데이터형식 : DWORD

- 데이터 : 900(15분)

Posted by 배움나눔
Windows2014. 1. 24. 16:05

Windows 를 이용하여 SNTP 및 NTP 동기화 하기

http://timesynctool.com/

사이트에서 NTP프로그램을 받는다 (아래 링크)

Download:

Version 3.14:

NetTimeSetup-314.exe (Tistory Upload 파일 : 2014년 01월 버전)

 

Windows time service는 중지 하고

 

프로그램을 이용하여 외부와 동기화를 시켜주고 내부또한 동기화가 가능하다.

Posted by 배움나눔
Cacti2013. 8. 16. 18:58

[root@localhost ~]# service ntpd stop

 

[root@localhost ~]# ntpdate 123.123.123.123

 

[root@localhost ~]# service ntpd start

 

부팅시에 ntpd 데몬이 실행되도록 등록

[root@localhost ~]# chkconfig ntpd on

 

 

Posted by 배움나눔
Windows2012. 5. 3. 21:30

출처 : http://lovemind.tistory.com/107

NTP란?

Network Time Protocol(네트워크 시간 프로토콜)의 약자로 네트워크 환경으로 구성된 장비(서버, PC, 통신장비, 방화벽 장비 등)의 시스템 시간을 동기화 하기 위한 규약이다.

윈도우에는

  • 모든 윈도우서버는 NTP서버가 될 수 있다.
  • 모든 서버의 방화벽에서 UDP 123 번이 열려있어야 한다.
  • NTP서버와의 시간차이가 많이 날 경우(기본값: 15시간) 동기화 되지 않는다.
    실제 시간과 근접한 시간으로 변경 후 동기화 할 수 있도록 한다.
  • 데이터 일치를 위하여 동기화(Sync)요청을 하더라도 즉시 반영되는 것이 아니라, 조금씩 맞춰 간다.
    (예: Server#2 서버가 Server#1서버 보다 시간이 빠를 경우, Server#1번의 시간으로 Server#2의 시스템시간을 동기화 할 경우, 동일한 시간대의 데이터가 생성되므로, 데이터 정합성에 오류가 발생한다. 이에 시간 동기화는 즉시 반영되는 것이 아니라, 조금씩 그 차이를 줄여나가는 방식이다. – 표12 참조 )

시스템 환경

NTP 시간을 제공해주는 서버를 "NTP 서버", NTP 서버로 시간 동기화를 요청하는 서버를 "Slave 서버"로 명명한다.

서버명 및 IP 주소

서버명

IP 주소

역할

Server#1

10.10.10.1

NTP 서버

Server#2

10.10.10.2

Slave 서버

Server#3

10.10.10.3

Slave 서버

내부 NTP 서버

외부 NTP 서버와 시간 동기화

내부 NTP 서버 시스템 시간을 인터넷 표준시(예:time.windows.com)으로 설정한다.

실행서버

Server#1(IP:10.10.10.1)

시나리오

내부 NTP 서버 역할로 운용할 서버의 시간 동기화 대상을 외부NTP(예:time.windows.com)으로 설정하고, 설정(레지스트리)값을 확인 후 동기화 작업을 수행한다.

작업

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

* 시작 -> cmd

-> w32tm /config /syncfromflags:manual /manualpeerlist:time.microsoft.com /update

표 1: 예상결과

C:\>w32tm /config /syncfromflags:manual /manualpeerlist:time.microsoft.com /update

명령이 성공적으로 완료되었습니다.

2. Windows Time 서비스의 설정값(레지스트리) 확인

* 시작 -> cmd -> w32tm /dumpreg /subkey:Parameters

표 2: 예상 결과

C:\>w32tm /dumpreg /subkey:Parameters

값 이름 값 종류 값 데이터

-----------------------------------------------------------------------------

ServiceMain REG_SZ SvchostEntry_W32Time

ServiceDll REG_EXPAND_SZ C:\WINDOWS\system32\w32time.dll

NtpServer REG_SZ time.windows.com,0x1 <- 외부 NTP서버주소

Type REG_SZ NTP <- 외부 NTP서버 사용

3. Windows Time 서비스 재시작

* 시작 -> cmd -> net stop w32tm

-> net start w32tm

표 3: 예상결과

C:\>net stop w32time

Windows Time 서비스를 멈춥니다..

Windows Time 서비스를 잘 멈추었습니다.

C:\>net start w32time

Windows Time 서비스를 시작합니다..

Windows Time 서비스가 잘 시작되었습니다.

4. 시간 동기화

* 시작 -> cmd -> w32tm /resync

표 4: 예상결과

[정상]

C:\>w32tm /resync

로컬 컴퓨터에 다시 동기화 명령을 보내는 중

명령이 성공적으로 완료되었습니다.

[오류] : 방화벽에서 외부 UDP 123 포트가 막혀있을 경우 발생할 수 있다.

C:\>w32tm /resync

동기화 명령 전송 - local computer...

사용 가능한 시간 데이터가 없어 컴퓨터가 동기화하지 못했습니다.

NTP 서비스 제공을 위한 구성 확인

내부 NTP 서버가 외부 NTP서버를 참조하는지 확인한다.

실행서버

Server#1(IP:10.10.10.1)

시나리오

내부 NTP 서버 역할로 운용할 서버의 서비스를 확인하여 Slave 서버에서 연결 할 수 있도록 구성 값을 확인한다.

작업

1. Windows Time 서비스 구동 확인

* 시작 -> cmd -> sc query w32time

표 5: 예상 결과

C:\>sc query w32time

SERVICE_NAME: w32time

TYPE : 20 WIN32_SHARE_PROCESS

STATE : 4 RUNNING

(STOPPABLE,NOT_PAUSABLE,ACCEPTS_SHUTDOWN)

WIN32_EXIT_CODE : 0 (0x0)

SERVICE_EXIT_CODE : 0 (0x0)

CHECKPOINT : 0x0

WAIT_HINT : 0x0

2. NTP 서비스 구동 확인

* 시작 -> cmd -> netstat –ano | findstr 123

표6: 예상 결과

C:\>netstat -ano | findstr 123

UDP 0.0.0.0:123 *:* 1128

UDP 0.0.0.0:62123 *:* 1428

UDP [::]:123 *:* 1128

 

Windows Server 2008 R2 REG 수정

Here's how to do it:

  1. Click Start, click Run, type regedit, and then click OK.
  2. Locate and then click the following registry entry:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\

  3. In the right pane, right-click AnnounceFlags, and then click Modify.
  4. In the Edit DWORD Value dialog box, under Value data, type 5, and then click OK.
  5. Enable NTPServer.
    1. Locate and then click the following registry subkey:

      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\
                                                      Services\W32Time\TimeProviders\NtpServer\

    2. In the right pane, right-click Enabled, and then click Modify.
    3. In the Edit DWORD Value dialog box, type 1 under Value data, and then click OK.
  6. Exit Registry Editor.
  7. At the command prompt, type the following command to restart the Windows Time service, and then press ENTER:

    net stop w32time && net start w32time

* 네트워크 장비와 NTP 통신 오류시

a. HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config 에서 LocalClockDispersion 항목의 값을 10에서 0으로 변경합니다.

 

Slave 서버

Slave 서버 환경 구성

내부 NTP서버(IP:10.10.10.1)를 기준으로 Slave 서버의 시스템 시간을 설정한다. 시간차이가 너무 많을 경우 동기화가 되지 않으니, 수동으로 근접한 시간을 맞추고 동기화 할 수 있도록 한다.

실행서버

Server#2(IP:10.10.10.2)

Server#3(IP:10.10.10.3)

( 서버별로 수행)

시나리오

시간 동기화 대상을 내부 NTP서버(IP:10.10.10.1)로 설정하고, 동기화 작업을 수행한다.

작업

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

* 시작 -> cmd

-> w32tm /config /syncfromflags:manual /manualpeerlist:10.10.10.1 /update

표 7: 예상결과

C:\>w32tm /config /syncfromflags:manual /manualpeerlist:10.10.10.1 /update

명령이 성공적으로 완료되었습니다.

2. Windows Time 서비스의 설정값(레지스트리) 확인

* 시작 -> cmd -> w32tm /dumpreg /subkey:Parameters

표 8: 예상 결과

C:\>w32tm /dumpreg /subkey:Parameters

값 이름 값 종류 값 데이터

-----------------------------------------------------------------------------

ServiceMain REG_SZ SvchostEntry_W32Time

ServiceDll REG_EXPAND_SZ C:\WINDOWS\system32\w32time.dll

NtpServer REG_SZ 10.10.10.1 <- 외부 NTP서버주소

Type REG_SZ NTP <- 외부 NTP서버 사용

3. Windows Time 서비스 재시작

* 시작 -> cmd -> net stop w32tm

-> net start w32tm

표 9: 예상결과

C:\>net stop w32time

Windows Time 서비스를 멈춥니다..

Windows Time 서비스를 잘 멈추었습니다.

C:\>net start w32time

Windows Time 서비스를 시작합니다..

Windows Time 서비스가 잘 시작되었습니다.

3. 시간 동기화

* 시작 -> cmd -> w32tm /resync

표 10: 예상결과

C:\>w32tm /resync

로컬 컴퓨터에 다시 동기화 명령을 보내는 중

명령이 성공적으로 완료되었습니다.

NTP서버와 시간차 확인

특정 서버(ex.NTP서버)와 실행한 서버와의 시간차이를 확인한다.

실행서버

Server#2(IP:10.10.10.2)

Server#3(IP:10.10.10.3)

( 서버별로 수행하여 확인 할 수 있다.)

시나리오

특정서버(Master Server:10.10.10.1)와 Slave Server(10.10.10.2)시간 동기화 대상을 Master Server 설정하고, 동기화 작업을 수행한다.

작업

1. Master Server를 기준으로 시간동기화 설정을 한다.

* 시작 -> cmd -> w32tm /stripchart /dataonly /computer:10.10.10.1

비교대상 서버와 시간이 일치한다면, 하기와 유사한 결과값을 볼 수 있다.

표 11: 예상결과

C:\> w32tm /stripchart /dataonly /computer:10.10.10.1

Tracking 10.10.10.1 [10.10.10.1].

The current time is 2012-04-18 오후 19:17:13 (local time).

19:17:13, +00.2676328s -> 비교 대상 서버와 +00.2676328 초만큼 차이가 난다.

19:17:15, +00.2593851s

19:17:17, +00.2589499s

19:17:19, +00.2428931s

^C -> 중지하기 위해서는 "Ctrl + c"를 누르면 된다.

+00.xxxxxxx(또는 -00.xxxxxxx)로 대상 NTP서버와 차이나는 시간만큼 표기된다.

예) +120.2428931s -> +120초 차이가 남

정리: NTP설정 후 동기화 요청 및 동기화 확인

표 12: Slave서버 동기화 설정

  • NTP서버(IP:10.10.10.1) 서버를 시스템 시간으로 설정한다.

C:\>w32tm /config /syncfromflags:manual /manualpeerlist:10.10.10.1/update

명령이 성공적으로 완료되었습니다.

  • Windows Time 서비스를 재기동한다.

C:\>net stop w32time

Windows Time 서비스를 멈춥니다..

Windows Time 서비스를 잘 멈추었습니다.

C:\>net start w32time

Windows Time 서비스를 시작합니다..

Windows Time 서비스가 잘 시작되었습니다.

  • NTP서버(IP:10.10.10.1)로 지정한 서버와 동기화를 요청한다.

C:\>w32tm /resync

로컬 컴퓨터에 다시 동기화 명령을 보내는 중

명령이 성공적으로 완료되었습니다.

  • NTP서버(IP:10.10.10.1)와 실행 중인 서버와의 시간차이를 확인한다.

C:\>w32tm /stripchart /dataonly /computer:10.10.10.1

10.10.10.1[10.10.10.1:123] 추적 중

현재 시간은 2012-04-19 오후 22:47:25입니다.

22:47:25, +23.2364090s

22:47:27, +22.7004942s -> 조금씩이지만 차이가 줄어드는 것을 볼 수 있다.

22:47:30, +22.1639462s

22:47:32, +21.6430236s

^C -> 중지하기 위해서는 "Ctrl + c"를 누르면 된다.

참고

W32Time 서비스의 레지스트리 항목

SITE: http://support.microsoft.com/kb/223184/KO/

큰 시간 오프셋을 방지하도록 Windows 시간 서비스 구성

SITE: http://support.microsoft.com/kb/884776/ko

Windows Server 2008 방화벽 설정

NTP Sync Response(IN/UDP)

netsh advfirewall firewall add rule name="NTP Sync Response(IN/UDP)" protocol=UDP dir=in action=allow localport=123
( command 창이 관리자 권한으로 실행되어있어야 한다.)

20120419_Windows_Server_NTP_설정_가이드.pdf

Posted by 배움나눔