AIX NTP 데몬 설정

개요

IBM AIX의 클라이언트 서버에서 NTP 데몬을 동작후 NTP 서버와 시간 동기화하는 방법을 설명한다.

어느날 내가 관리하는 IBM AIX 서버가 NTP 동기화가 안되고 있길래 점검하면서 공부할 겸 정리한 메뉴얼이다.

 

증상

IBM AIX 클라이언트에서 NTP 서버와 시간 동기화가 불가능하다.

$ ntpq -p
ntpq: read: A remote host refused an attempted connect operation.

 

원인

NTP 데몬인 xntpd가 실행중이지 않았다.

 

환경

 

조치방법

1. NTP 데몬 상태확인

IBM AIX에서 NTP 데몬의 이름은 xntpd이다. 리눅스의 경우는 ntpd이다.

가장 먼저 xntpd가 실행중인지 확인한다.

$ ps -ef | grep xntpd
    root 16449928  8848040   0 08:25:49  pts/0  0:00 grep xntpd

xntpd 가 실행중이지 않다.

 

2. NTP 설정파일 확인

IBM AIX의 NTP 설정파일의 절대경로는 /etc/ntp.conf로 리눅스와 동일하다.
xntpd는 시작될 때 /etc/ntp.conf 설정 정보를 읽는다.
해당 설정파일을 수정하자.

$ cat /etc/ntp.conf | grep -v ^#
...
broadcastclient
driftfile /etc/ntp.drift
tracefile /etc/ntp.trace

server 10.10.10.123 prefer

prefer
NTP 서버 IP 뒤에 prefer 키워드가 붙을 경우, 해당 NTP 서버와 우선적으로 연결한다.

명령어 설명
grep -v ^#는 주석을 제외한 내용만 출력하겠다는 의미이다.
NTP 설정파일인 ntp.conf 상단에는 제조사인 IBM에서 초기 작성한 주석 라인이 약 30줄 정도로 많다.
grep -v ^# 명령어를 붙이면 주석이 아닌 실제 설정 내용만 필터링해서 출력하기 때문에 보기 편하다.

 

3. NTP 서비스 기동

$ startsrc -s xntpd -a "-x"
0513-059 The xntpd Subsystem has been started. Subsystem PID is 19268504.

xntpd 서비스가 시작되었다.

startsrc 명령어 설명

 

시간롤백 방지 “-x”

 

4. NTP 데몬 동작상태 확인

$ ps -ef | grep xntpd
    root 11010996  8848040   0 08:55:57  pts/0  0:00 grep xntpd
    root 19268504  3146712   0 08:55:54      -  0:00 /usr/sbin/xntpd -x

19268504 PID를 가진 xntpd 데몬이 -x 옵션이 붙은 상태로 잘 동작중이다.

 

$ lssrc -s xntpd
Subsystem         Group            PID          Status 
 xntpd            tcpip            19268504     active

xntpd의 PID는 19268504, 상태는 동작중(active)이다.

 

5. NTP 수동 동기화 실행

$ ntpdate -d 10.10.10.123
26 Oct 09:51:07 ntpdate[16777548]: 3.4y
transmit(10.10.10.123)
receive(10.10.10.123)
transmit(10.10.10.123)
receive(10.10.10.123)
transmit(10.10.10.123)
receive(10.10.10.123)
transmit(10.10.10.123)
receive(10.10.10.123)
transmit(10.10.10.123)
server 10.10.10.123, port 123
stratum 1, precision -19, leap 00, trust 000
refid [GPS], delay 0.02525, dispersion 0.00034
transmitted 4, in filter 4
reference time:      e521cf7a.00000000  Tue, Oct 26 2021  9:51:06.000
originate timestamp: e521cf7b.6dd2f12b  Tue, Oct 26 2021  9:51:07.429
transmit timestamp:  e521cf7b.6dd32000  Tue, Oct 26 2021  9:51:07.429
filter delay:  0.02649  0.02769  0.02525  0.02640 
               0.00000  0.00000  0.00000  0.00000 
filter offset: 0.000229 -0.00127 -0.00016 -0.00039
               0.000000 0.000000 0.000000 0.000000
delay 0.02525, dispersion 0.00034
offset -0.000160

26 Oct 09:51:07 ntpdate[16777548]: adjust time server 10.10.10.123 offset -0.00016

만약 ntpdate -d 실행후 no server suitable for synchronization found 에러 메세지가 발생할 경우, 아래 2가지 사항을 점검해보자.

NTP network architecture

  1. NTP 서버에서 NTP 데몬(리눅스의 경우 ntpd, AIX의 경우 xntpd)이 정상 동작중인가?
  2. 클라이언트와 NTP 서버 사이에 위치한 방화벽에서 NTP용 포트인 123번 포트가 통과 허용되어 있는가?
    • NTP 클라이언트와 NTP 서버의 iptables
    • 물리 방화벽 장비, IPS, IDS와 같은 네트워크 보안 장비

 

transmitreceive가 반복되면 NTP 서버와 클라이언트간 시간 데이터를 잘 주고 받고 있다는 의미이다.

...
transmit(10.10.10.123)
receive(10.10.10.123)
transmit(10.10.10.123)
receive(10.10.10.123)
transmit(10.10.10.123)
receive(10.10.10.123)
transmit(10.10.10.123)
receive(10.10.10.123)
transmit(10.10.10.123)
...

 

시간 오차값(offset)은 -0.000160 이다.

...
offset -0.000160
...

 

6. NTP 동기화 여부 확인

등록된 NTP 서버와 동기화된 상태인지 확인한다.

$ ntpq -p
     remote           refid      st t when poll reach   delay   offset    disp
==============================================================================
*10.10.10.123    .GPS.            1 u   20   64  377     0.76    0.183    0.20

ntpq 설명

 

7. NTP 자동시작 설정

/etc/rc.tcpip는 부팅시 TCP/IP 데몬들과 Subsystem을 호출하는 설정 파일이다.
서버가 리부팅 되더라도 NTP 데몬을 자동시작 하도록 설정파일을 수정한다.

 

변경 전 설정파일

$ vi /etc/rc.tcpip
...
# Start up Network Time Protocol (NTP) daemon
#start /usr/sbin/xntpd "$src_running" "-x"

start /usr/sbin/xntpd ... 라인의 주석을 제거해서 서버 재부팅 후에도 NTP Daemon이 자동 기동되도록 설정한다.
시간롤백을 방지하는 -x 옵션도 선언되어 있는지 잘 확인한다.

 

변경 후 설정파일

$ vi /etc/rc.tcpip
...
# Start up Network Time Protocol (NTP) daemon
start /usr/sbin/xntpd "$src_running" "-x"

 

참고자료

AIX 공식문서: xntpd 데몬
IBM-AIX 7.2 버전의 xntpd 공식문서입니다.