커피닉스, 시스템 엔지니어의 쉼터 커피향이 나는 *NIX
커피닉스
시스템/네트웍/보안을 다루는 곳
* HanIRC의 #coffeenix 방
[ 장비 및 회선 후원 ]
HOME > 시스템 관리 / 서버운영 도움말
검색 : 사이트 WHOIS 웹서버 종류

최적화 / 튜닝 / 성능개선 (6, 글 1, 자료 3)
디스크 쿼터(quota) (3, 글 1, 자료 3)
디스크 관리 / 파일시스템 / mount (34, 글 13, 자료 12)
백업(backup) / 시스템 복구 (14, 글 6, 자료 11)
서버운영 (8, 글 2, 자료 9)
프린터 관리 / 프린팅 (7)
패키지 관리 / 패치 / rpm (10, 글 5, 자료 1)
부팅, boot / LILO / GRUB (10, 글 5, 자료 9)
서버 모니터링 (10, 글 5, 자료 2)
로그인 / 로그아웃 (1)
로그(log) / syslog (5, 글 3, 자료 3)
메모리, 스왑(swap), 램디스크(ramdisk) (3, 글 2)
사용자 관리(계정 관리) (1, 자료 1)

  타임 서버를 이용한 서버의 시간 동기화. 좀 더 체계적인 글(?) 작성일 : 2003/08/09 23:37
 
  • 글쓴이 : 좋은진호 ( http://coffeenix.net/ )
  • 조회수 : 32860
          [ 이전화면 / 수정 ]   비밀번호 :     인쇄용 화면
      작성자 : 좋은진호(truefeel, http://coffeenix.net/ )
    작성일 : 2003.3.17~18
    수정일 : 2003.8.13(수) ntpdate의 시스템 콜 부분 추가

    전에는 rdate time.nuri.net 또는 ntpdate -b time.kriss.re.kr
    로 동기화만 했는데, 좀더 체계적으로(?) 정리할 필요가 있어서 적어봤다.

    1. 우리나라의 NTP(Network Time Protocol) 서버

      1) Stratum 1 서버 :
         GPS 위성으로 부터 표준시각정보를 받는 타임 서버를
         NTP Primary Time Server 혹은 Stratum 1(one) 라고 부름

         데이콤 (gps.bora.net), 코넷 (ntp.kornet.net), GNGIDC,
         부산대학교 (ntp1.cs.pusan.ac.kr / ntp2.cs.pusan.ac.kr),
         한국 표준과학 연구원 시간 · 주파수 연구실 (time.kriss.re.kr)

      2) Stratum 2 서버 :
         Stratum 1 서버로 부터 표준시간을 받는 타임서버를
         TP Secondary Time Server 혹은 Stratum 2 서버라고 부름

         PSINet Korea (time.nuri.net),
         GNGIDC (ntp1.gngidc.net / ntp2.gngidc.net),
         이대부속 초등학교 (ntp.ewha.net / ticktock.ewha.net)


    2. rdate를 이용한 시간 동기화

      지정한 타임서버로 부터 시간을 확인하거나 동기화 시킨다.

      1) 타임서버의 표준시간을 확인한다.

         rdate time.nuri.net
         rdate: [time.nuri.net]  Tue Mar 18 16:38:47 2003

      2) 시스템 시간을 타임서버 시간에 동기화 시킨다.

         rdate -s time.nuri.net

    3. ntpdate를 이용한 시간 동기화

      1) 동기화

          ntpdate -b -s time.kriss.re.kr

         -s : 결과를 화면이 아닌 syslog로 보냄

      2) 다음과 같은 오류가 발생한 경우

     
      [root@truefeel root]# ntpdate -b time.kriss.re.kr
      17 Mar 21:03:25 ntpdate[8244]: no server suitable for synchronization found
     


      ->  NTP 프로토콜은 UDP port 123 을 사용하는데, 이 포트가 방화벽 등으로
           막혀있는 경우에는

           ntpdate -u time.kriss.re.kr

           처럼 -u 를 옵션을 사용해서 다른 포트 사용하도록 한다.

      3) 사용 예

     
      [root@truefeel root]# date
      월  3월 17 21:40:35 KST 2003
      [root@truefeel root]# date 03172150 <- 강제로 시간을 3.17일 21:50 으로 변경함

      월  3월 17 21:50:00 KST 2003
      [root@truefeel root]#
      [root@truefeel root]# ntpdate -u time.nuri.net <- 시간을 동기화 함
      17 Mar 21:40:44 ntpdate[8835]: step time server 203.255.112.96 offset -557.336058 sec
      [root@truefeel root]#
      [root@truefeel root]# date
      월  3월 17 21:40:46 KST 2003  <- 시간이 동기화 됨
     


      위에서 'offset -557.336058 sec'은 타임서버의 시간(reference time)과 로컬 서버와의
      시간 차이를 나타냄

      4) ntpdate의 2가지 시스템 콜

      ntpdate는 settimeofday(), adjtime()의  2가지 시스템 콜로 시간을 설정한다.
      settimeofday()은 timezone과 시간을 설정하고,
      adjtime()은 점근적 시각 보정 방식으로 커널 클럭을 조정한다. 주로 시간 동기화에 사용한다.

      ntpdate는 옵션(-b, -B)을 지정하지 않으면 현재 시스템 시간과 차이가 128ms 이상이면
      settimeofday()을, 이내이면 adjtime()을 사용한다.
      또한 강제적으로 ntpdate -b 로 settimeofday()를, ntpdate -B로 adjtime()를 사용할 수 있다.

      ntpdate 실행 결과 메시지에 'step time server...'로 표시되면 setimeofday()가 사용되었고,
      'adjust time server...' 로 표시되면 adjtime()가 사용되었다.

     
      [root@truefeel root]# ntpdate time.nuri.net
      14 Mar 01:09:31 ntpdate[3127]: step time server 203.255.112.96 offset 82.763348 sec
      [root@truefeel root]# ntpdate time.nuri.net
      14 Mar 01:22:30 ntpdate[3182]: adjust time server 203.255.112.96 offset -0.064531 sec
     


      부팅할 때는 ntpdate -b 로, cron등으로 정기적으로 시간조절을 할 때는 옵션없이 ntpdate
      사용하기를 하기 바란다.

      5) 디버깅 모드

         - 디버깅 모드는 local 서버의 시간을 변경하지는 않는다.

     
    [root@truefeel root]# ntpdate -d time.nuri.net
    18 Mar 17:33:23 ntpdate[2169]: ntpdate 4.1.1a@1.791 Sat Aug 31 18:27:31 EDT
    2002 (1)
    transmit(203.255.112.96)
    receive(203.255.112.96)
    transmit(203.255.112.96)
    receive(203.255.112.96)
    transmit(203.255.112.96)
    receive(203.255.112.96)
    transmit(203.255.112.96)
    receive(203.255.112.96)
    transmit(203.255.112.96)
    server 203.255.112.96, port 123
    stratum 2, precision -18, leap 00, trust 000
    refid [192.6.38.127], delay 0.04927, dispersion 0.00092
    transmitted 4, in filter 4
    reference time:    c2215828.4ea9e000  Tue, Mar 18 2003 17:32:40.307
    originate timestamp: c2215853.6ad1b000  Tue, Mar 18 2003 17:33:23.417
    transmit timestamp:  c2215853.a19695d9  Tue, Mar 18 2003 17:33:23.631
    filter delay:  0.05023  0.05008  0.04927  0.06329
             0.00000  0.00000  0.00000  0.00000
    filter offset: -0.22637 -0.22621 -0.22640 -0.23302
             0.000000 0.000000 0.000000 0.000000
    delay 0.04927, dispersion 0.00092
    offset -0.226409

    18 Mar 17:33:23 ntpdate[2169]: adjust time server 203.255.112.96 offset
    -0.226409 sec
     


    4. 주의 사항

      1) time.kriss.re.kr 서버는 1초내에 여러번 접속을 시도할 경우 해당 IP를 차단 시키므로
         테스트를 하더라도, 시간 간격을 두고 하도록
      커피닉스 카페 최근 글
    [08/25] #gpt_question_subje
    [08/20] From what I've seen
    [08/14] сайт
    [06/16] [질문]SAN 스위치 브로드케이드 dcx8510-4 장비관련입니다.
    [04/22] Re: 영화속에 컴퓨터 이야기 ~스워드피쉬(2001)
    [10/20] Cross Compiler 깔
    [07/14] SSL АО
    [04/26] Re: 도스화면 원격조종 여부
    [04/25] 도스화면 원격조종 여부
    [10/30] Cshell에서 난수 설정
    [10/23] 공항철도주식회사 SE 구인 件
    [01/26] Re: wget으로 다른서버에있는 디렉토리를 가져오려고합니다.
    [01/25] wget으로 다른서버에있는 디렉토리를 가져오려고합니다.
    [01/11] 특정 안드로이드 WebView 버전에서 SSL 문제 (WebView 버그)
    [08/01] DNS forwarder (전달자) 서버를 통해서 쿼리하면 역방향을 받아오질 못합니다.
      New!   최근에 등록한 페이지
      KiCad EDA Suite project (Free/Libre/Open-Source EDA Suite) (CAD)
      오픈캐스케이드 캐드 (OpenCASCADE CAD)
      QCad for Windows --- GNU GPL (Free Software)
      The Hello World Collection
      IPMI를 활용한 리눅스 서버관리
      DNS 설정 검사
      nagiosgraph 설치 방법
      Slony-I 설치 방법 (postgresql replication tool)
      Qmail기반의 Anti spam 시스템 구축하기
      clusterssh

    [ 함께하는 사이트 ]




    운영진 : 좋은진호(truefeel), 야수(yasu), 범냉이, sCag
    2003년 8월 4일~