FreeBSD 데스크탑을 위한 NTP 설정
wizzet.egloos.com
컴 퓨터의 시간은 정확히 맞춰도 몇주가 지나면 몇초에서 몇분 가량 틀리기 마련이다. 따라서 주기적으로 시간을 재설정할 필요가 있는데, Windows XP부터는 time.windows.com로부터 시간을 재설정하는 것이 기본 설정이다. UNIX에는 NTP(Network Time Protocol)이라는 것이 있다. (확실하지는 않지만 Windows도 NTP를 사용하는 것 같다.) NTP 서버인 ntpd는 다른 NTP server를 참조하여 자신의 시간을 재설정하기도 하고, 다른 서버나 클라이언트에게 타임 서비스를 제공하기도 한다. ntpdate라는 것도 있는데 이것은 시스템이 부트 될 때 한번만 시간을 재설정한다.
따라서 데스크탑으로 사용하는 경우에는 ntpdate만 사용해도 충분하지만, 나는 보통 컴퓨터를 일주일 이상 켜두기 때문에 ntpd로 함께 사용해야 한다. 하지만 ntpd가 다른 서버나 클라이언트에게 타임 서비스를 할 필요는 없다. 이러한 조건에 맞는 ntpdate와 ntpd 설정을 하기 위해서 FreeBSD 핸드북의 27.10 Clock Synchronization with NTP와 이 문서를 통해 알게된, 타임 서버들의 목록이 나와있는 http://support.ntp.org/bin/view/Servers/WebHome를 참고 하였다.
먼저 타임 서버들을 선택해야 하는데, http://support.ntp.org/bin/view/Servers/WebHome의 타임 서버 목록에는 3가지 부류의 타임 서버가 있었다.
세컨더리 서버와 프라이머리 서버는 학교, 공공단체, 기업에서 다른 서버나 클라이언트에 타임 서비스를 제공할려는 경우에 사용하도록 권고 하고 있다. 나의 FreeBSD 데스크탑은 자신의 시간을 재설정만 하고 다른 호스트에 시간 서비스를 제공하지는 않을 것이므로 첫번째 부류인 Public NTP Pool Time Servers를 사용하는 것이 적당하다. Public NTP Pool Time Servers는 다시 대륙별, 국가별 존(zone)으로 분류가 되는데, 우리나라는 서버수가 충분하지 않아서 대신 아시아 존을 쓸것을 권고하고 있다. (고정 IP주소를 사용하고 있다면 pool.ntp.org에 참여할 수 있다.) /etc/ntp.conf에 다음과 같이 설정하였다.
그 리고 다른 서버나 클라이언트에게 타임 서비스를 제공할 필요가 없으므로 다음 설정을 /etc/ntp.conf에 추가하였다. (man ntp.conf 참고) (※ 주의: "restrict default ignore"로 설정하면 이 호스트가 외부의 타임 서버에 접근하는 것까지도 차단된다.)
ntpdate와 ntpd를 사용하기 위해서 /etc/rc.conf에 다음 두 줄을 추가하였다. (ntpd를 사용하더라도 ntpdate로 시스템이 부트될 때 시간을 재설정 해주는 것이 좋다.)
이제 /etc/rc.d/ntpdate start와 /etc/rc.d/ntpd start를 차례로 실행하거나 시스템을 재시작하면 된다.
컴 퓨터의 시간은 정확히 맞춰도 몇주가 지나면 몇초에서 몇분 가량 틀리기 마련이다. 따라서 주기적으로 시간을 재설정할 필요가 있는데, Windows XP부터는 time.windows.com로부터 시간을 재설정하는 것이 기본 설정이다. UNIX에는 NTP(Network Time Protocol)이라는 것이 있다. (확실하지는 않지만 Windows도 NTP를 사용하는 것 같다.) NTP 서버인 ntpd는 다른 NTP server를 참조하여 자신의 시간을 재설정하기도 하고, 다른 서버나 클라이언트에게 타임 서비스를 제공하기도 한다. ntpdate라는 것도 있는데 이것은 시스템이 부트 될 때 한번만 시간을 재설정한다.
따라서 데스크탑으로 사용하는 경우에는 ntpdate만 사용해도 충분하지만, 나는 보통 컴퓨터를 일주일 이상 켜두기 때문에 ntpd로 함께 사용해야 한다. 하지만 ntpd가 다른 서버나 클라이언트에게 타임 서비스를 할 필요는 없다. 이러한 조건에 맞는 ntpdate와 ntpd 설정을 하기 위해서 FreeBSD 핸드북의 27.10 Clock Synchronization with NTP와 이 문서를 통해 알게된, 타임 서버들의 목록이 나와있는 http://support.ntp.org/bin/view/Servers/WebHome를 참고 하였다.
먼저 타임 서버들을 선택해야 하는데, http://support.ntp.org/bin/view/Servers/WebHome의 타임 서버 목록에는 3가지 부류의 타임 서버가 있었다.
Public NTP Pool Time Servers
Public NTP Secondary (stratum 2) Time Servers
Public NTP Primary (stratum 1) Time Servers
세컨더리 서버와 프라이머리 서버는 학교, 공공단체, 기업에서 다른 서버나 클라이언트에 타임 서비스를 제공할려는 경우에 사용하도록 권고 하고 있다. 나의 FreeBSD 데스크탑은 자신의 시간을 재설정만 하고 다른 호스트에 시간 서비스를 제공하지는 않을 것이므로 첫번째 부류인 Public NTP Pool Time Servers를 사용하는 것이 적당하다. Public NTP Pool Time Servers는 다시 대륙별, 국가별 존(zone)으로 분류가 되는데, 우리나라는 서버수가 충분하지 않아서 대신 아시아 존을 쓸것을 권고하고 있다. (고정 IP주소를 사용하고 있다면 pool.ntp.org에 참여할 수 있다.) /etc/ntp.conf에 다음과 같이 설정하였다.
server 0.asia.pool.ntp.org
server 1.asia.pool.ntp.org
server 2.asia.pool.ntp.org
server 3.asia.pool.ntp.org
server asia.pool.ntp.org # 권고: 목록의 마지막에는 "bare" zone (숫자가 없는 zone)을 사용하라.
driftfile /var/db/ntp.drift # 시간의 변화 오프셋을 저장할 파일
그 리고 다른 서버나 클라이언트에게 타임 서비스를 제공할 필요가 없으므로 다음 설정을 /etc/ntp.conf에 추가하였다. (man ntp.conf 참고) (※ 주의: "restrict default ignore"로 설정하면 이 호스트가 외부의 타임 서버에 접근하는 것까지도 차단된다.)
restrict default kod notrap nomodify nopeer noquery
ntpdate와 ntpd를 사용하기 위해서 /etc/rc.conf에 다음 두 줄을 추가하였다. (ntpd를 사용하더라도 ntpdate로 시스템이 부트될 때 시간을 재설정 해주는 것이 좋다.)
ntpdate_enable="YES"
ntpd_enable="YES"
이제 /etc/rc.d/ntpdate start와 /etc/rc.d/ntpd start를 차례로 실행하거나 시스템을 재시작하면 된다.
# by | 2008/05/14 18:13 | 컴퓨터 | 트랙백 | 덧글(1)
댓글 없음:
댓글 쓰기