NTP 는 시간을 NTP 서버와 자동으로 동기화 해주는
프로토콜이다
시간을 정확하게 맞춰야 하는 중요한 서버 같은 경우에는
NTP 서버를 사용하는 것도 좋은거 같다
일단 설치를 해보자
apt-get update && apt-get install ntp
ntp 관련 명령어들..
일단 설치하면 ntp 데몬이 바로 실행되는 경우가 있으니
service ntp stop
명령어로 잠시 꺼주자
그리고 일단 ntp 설정 파일을 보자
vim /etc/ntp.conf
server time.bora.net
server 127.127.1.0
restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap
을 추가해 주자
server 127.127.1.0 은 내부 서버를 위한 주소이고
restrict 에 설정한 네트워크는 클라이언트로서 접근을 허용해 준다는 의미이당
그리고 일단 시작 전에
ntpdate 명령으로 시간을 수동 동기화 시켜주자
date
date 시간을 일부러 조금 다르게 설정 (월일시분년도)
ntpdate time.bora.net
(ntp 데몬이 실행 중이면 작동하지 않는다)
date
(시간 제대로 돌아왔나 체크)
그럼 이제 ntp 데몬을 실행해 보자
여기서도 테스트를 위해 시간을 조금 바꿔봤다
date 1초 전 시간
service ntp start
ntpq -p
(ntp 작동 상태 확인)
데몬이 제대로 올라 갔나 프로세스랑 포트도 확인해 보자
ps aux | grep ntp
netstat -nltpu | grep ntp
(ntp는 123 UDP 포트를 사용한다)
그리고 부팅시 ntp 데몬이 활성화 할 수 있도록
chkconfig로 on 시켜주자
chkconfig --level 35 ntp on
(보통 3번(TEXT)과 5번(GUI)이 on 이면 된다)
chkconfig --list ntp
이제 다른 192.168.0.0/24 대역에
PC에서 방금 설정한 NTP 서버(192.168.0.14)를 통해 시간을 동기화하도록 설정해 보자
클라이언트에서도 apt-get install ntp 명령으로 설치 한다
vim /etc/ntp.conf
server 에서 아까 설치한 NTP IP를 적어 둔다
그리고
service ntp start
명령어로 ntp 데몬 시작
ntpq -p 명령으로 확인
192.168.0.14가 잡혀있는걸 볼 수 있다
시간을 일부러 10분정도 뒤로 설정해 보았다
date
date 1초 뒤시간
ntpq -p
date
ntp 시간 동기화가 즉시 한 번에 시간이 변하지 않고
서서히 서버와 시간이 동기화 된다.
윈도우 NTP 서버에 리눅스 클라이언트 NTP 설정이라면 /etc/ntp.conf 에 tos maxdist 13 을 추가해 줘야한다.
시간 동기화 주기를 빠르게 하기 위해선 server [NTP 서버 IP] iburst 옵션을 추가로 넣으면 된다.
VM 환경에서는 ntp 테스트를 제대로 할 수 없어서
정확하게 테스트를 해보지는 못했다..
그리고
시스템 시간을 BIOS에도 적용 시키려면
hwclock -w 명령어를 이용하면 된다
반대로 BIOS 시간을 시스템에 적용하려면
rdate -w 명령어를 사용하면 된다
rdate 명령어가 설치 되지 않았다면
apt-get install rdate 로 설치 할 수 있다
rdate -s time.bora.net 으로
ntpdate time.bora.net과 같은 수동으로 서버에서
시간을 동기화하는 명령어이다