NTP(Network Time Protocol)는 인터넷상의 시간을 정확하게 유지시켜 주기 위한 통신망 시간 규약이다. 라디오나 원자시계에 맞추어 시간을 조정하며 밀리초 1/1000초 단위까지 시간을 맞출 수 있다.
기본적으로, NTP 방식은 straum이라는 계층구조를 가지는데 straum 0 은 GPS나 세슘 원자 시계등 시간을 구하는 장비를 말하며, straum 1은 GPS 나 세슘 원자 시계등에서 직접 시간을 동기화하는 서버를 의미한다. strum 2 부터는 트리 구조를 형성하게 된다. 보통 straum 2에서 동기화를 하고, 이 동기화를 받은 straum 3 서버에서 나머지 같이 운영하는 서버들을 peer로 해서 동기화를 시키므로써 straum 1 서버들의 부하를 줄인다.
NTP 는 UDP 123을 기본 포트로 사용(포트 개방 필요)한다.
CentOS 6.4 Minimal 버전에는 NTP 가 설치되어 있지 않다. yum 을 이용해서 설치하자.
yum install ntp
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
ntp x86_64 4.2.4p8-3.el6.centos base 444 k
Installing for dependencies:
libedit x86_64 2.11-4.20080712cvs.1.el6 base 74 k
ntpdate x86_64 4.2.4p8-3.el6.centos base 58 k
Transaction Summary
================================================================================
Install 3 Package(s)
peer 설정이다. 즉, 시간 동기화를 받기 위한 설정내용이다. 기본적으로 입력되어있는 server 0.centos.pool.ntp.org
등을 주석처리하거나 삭제하고 국내 NTP 서버로 대체한다.
vi /etc/ntp.conf
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#server 0.centos.pool.ntp.org
#server 1.centos.pool.ntp.org
#server 2.centos.pool.ntp.org
server kr.pool.ntp.org
server time.bora.net
server time.kornet.net
NTP 서비스를 시작프로그램에 등록한다.
chkconfig ntpd on
NTP 서비스 등록 확인
chkconfig --list | grep ntpd
ntpd 0:해제 1:해제 2:활성 3:활성 4:활성 5:활성 6:해제
NTP 서비스를 시작한다.
/etc/init.d/ntpd start
ntpd (을)를 시작 중: [ OK ]
NTP 는 동기화하기까지 5~10분의 시간이 걸리니 여유를 갖도록 하자.
ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
*121.182.147.191 .GPS. 1 u 24 64 377 9.611 9.432 4.998
+time.bora.net 90.1.14.51 2 u 1 64 177 7.049 -4.907 12.329
+ntp1.sjtel.net 192.168.18.6 2 u 4 64 377 9.096 10.322 5.248
*
: 현재 sync 를 받고 있음을 의미+
: ntp 알고리즘에 의해 접속은 가능하지만 sync 를 하고 있지는 않음을 의미-
: ntp 알고리즘에 의해 접속은 가능하지만 sync 가능 리스트에서 제외blank
: 접속이 불가능함을 의미remote는 sync 를 하는 straum 2 서버주소를 가리키며, refid는 각 straum 2 서버가 현재 sync 를 하고 있는 straum 1 서버를 보여준다. st가 16일 경우 해당 서버에 접속 할 수 없음을 의미한다.
단순히 시간 동기화가 목적이 아니라 자체 동기화 서버를 구축하려는 경우 아래의 설정이 도움이 될지도 모르겠다.
vi /etc/ntp/ntp.conf
restrict default nomodify notrap noquery
restrict 127.0.0.1
restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap
# straum 2 server list
server ntp.ewha.net
server ntp1.epidc.co.kr
server time.bora.net
server time.wonkwang.ac.kr
server time.korserve.net
server noc6-3.koren21.net
driftfile /var/lib/ntp/drift
broadcastdelay 0.008
keys /etc/ntp/keys
설정을 마쳤다면, service ntpd restart
명령으로 ntpd 데몬을 시작하고, ntpq 명령을 이용하여 sync 를 잘 하고 있는지 확인을 한다.
출처: https://webdir.tistory.com/120 [WEBDIR:티스토리]