Post

(Debian) NTP와 systemd-timesyncd

systemd-timesyncd란

Ubuntu는 설치가 되면 systemd-timesyncd 라는 daemon이 기본적으로 ntp(network time protocol) 서비스를 수행한다.

동작 확인은 timedatectl -a 명령어로 확인이 가능하며 systemd-timesyncd의 수정은 /etc/systemd/timesyncd.conf 파일로 수정하여 사용한다

NTP 설치와 설정 (서버와 클라이언트)

설치하여 사용하는 NTP 패키지는 NTP서버를 구성할 수 있어서 systemd-timesyncd는 클라이언트로만 동작하여 시간을 가져오는 기능만 수행 할 수 있지만 NTP 패키지는 서버로써의 동작 및 클라이언트 동작 수행이 가능하다. systemd-timesyncd와 같이 설치 될 수 없어서 NTP 설치시 systemd-timesyncd는 삭제해주어야 한다

(삭제 : sudo apt remove systemd-timesyncd)

NTP 설정은 /etc/ntp.conf 파일로 수정하여 사용한다.

[공통]

  1. 패키지 설치

- ntp

- ntpdate

  1. 설정 전 ntp가 먹는지 확인하기 위해 일부러 시간을 변경함

***`# date Wed Dec 18 14:20:13 KST 2019     –> 정상

# date -s ”2019-10-12 09:00:00” Sat Oct 12 09:00:00 KST 2019     –> 시간 변경

# date Sat Oct 12 09:00:02 KST 2019     –> 시간 변경 확인`***

[서버 192.168.20.10]

  • NTP 설정 (vi /etc/ntp.conf)

`(공통 설정) #restrict 127.0.0.1    –> 주석 restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap  –> 클라이언트들이 ntp 정보를 가져갈 수 있도록 접근제한 해제

#server0.centos.pool.ntp.org iburst   –> 주석 #server1.centos.pool.ntp.org iburst   –> 주석 #server2.centos.pool.ntp.org iburst   –> 주석 #server3.centos.pool.ntp.org iburst   –> 주석 server 203.248.240.140 iburst –> 시간을 어디서 받아 올것인지 추가`

  • NTP 재기동
1
2
3
4
<aside>
💡 #systemctl restart ntp

</aside>
  • ntp sync 확인 및 시간 변경확인

[클라이언트 192.168.20.20]

  • NTP 설정 (vi /etc/ntp.conf)

`(공통 설정) #restrict 127.0.0.1    –> 주석 #restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap  –> 주석

#server0.centos.pool.ntp.org iburst   –> 주석 #server1.centos.pool.ntp.org iburst   –> 주석 #server2.centos.pool.ntp.org iburst   –> 주석 #server3.centos.pool.ntp.org iburst   –> 주석 #server 203.248.240.140 iburst –> 주석 server 192.168.20.10   –> ntp server 아이피로 추가`

  • NTP 재기동
1
2
3
4
<aside>
💡 #systemctl restart ntp

</aside>
  • ntp sync 확인 및 시간 변경확인


ntpq 옵션

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
* ntpq 설명
- remote : sync 하고 있는 ntp server
    >ntp.conf 파일에 등록된 server ip가 출력되며 /etc/hosts파일에 매핑되는 hosts가 존재하면 해당 hostname으로 출력됩니다.
        또한 현재 동기화 중인 NTP서버는 [ * ], secondary NTP서버는 [ + ] 로 표시됩니다.
        ntp 프로세스가 기동된지 얼마 되지 않았거나, 네트워크 상의 문제로 NTP서버와 sync 되지 않을 시 [ *, +] 기호 없이 출력됩니다.
- refid : remote의 reference 주소 라는데 설명하자면 ntpserver1 이 바라보는 주소
    > 현재 ntp 서버로 sycn 중인 서버가 sync중인 NTP 주소, 내부 sync면 GPS로 표시됨
- st : remote stratum (GPS = stratum 0)
- t : 시간을 받아보는 방식 (uniquest, multicast, broadcast)
- when :  NTP 서버로 부터 데이터를 수신한 후 경과 시간, 초 단위 이며 수신받으면 0으로 초기화
- poll : NTP 서버에 sync 요청 주기, 초 단위
- reach : 최근 8번 poll 요청에 대한 응답 여부 - 1, 3, 7, 17, 37, 77 ,177, 377 값으로 표시될 경우 정상
- delay : Network 지연시간이며, millisecond 단위
- offset : NTP서버와 로컬(자신) 의 시간 차이, millisecond 단위
- disp : offset 에 대한 분산 (jitter)
This post is licensed under CC BY 4.0 by the author.