NTP 서버에 거의 연결하지 않고 시계를 동기화하도록(또는 큰 시계 드리프트가 감지된 경우에만) openntpd를 구성하려면 어떻게 해야 합니까?

NTP 서버에 거의 연결하지 않고 시계를 동기화하도록(또는 큰 시계 드리프트가 감지된 경우에만) openntpd를 구성하려면 어떻게 해야 합니까?

왜냐하면여러 Debian/KDE 컴퓨터의 시계가 뚜렷한 이유 없이 몇 분씩 느려집니다.그리고 일반적인 마더보드(또는 적어도 내가 소유한 마더보드)에는 내가 설정해야 하는 정확하고 신뢰할 수 있는 하드웨어 시계가 없습니다 openntp.

openntpNTP 서버 에 대한 지속적인 연결(사용) sudo lsof -i은 장치의 공격 표면과 개인 정보 보호에 다양한 영향을 미칩니다. 인터넷 연결을 최소한으로 유지하고 필요하지 않거나 사용하지 않는 모든 네트워크 활동을 차단하고 싶습니다. 나는 매일 사용하기 위한 작동하는 시계를 갖고 싶을 뿐이므로 이 모든 것이 실제로 필요하다고 생각하지 않습니다.
GNU/Linux/Debian에서 작동하는 시계를 얻는 더 좋고 쉬운 방법이 있어야 합니다.

제가 생각할 수 있는 두 가지 방법은 다음과 같습니다.

  • openntpd가 z분(x와 y 사이의 임의의 숫자)마다 ntp 서버에 연결하고 시계를 동기화한 다음 다시 종료하도록 합니다.
  • 비슷한 방식으로 일부 인증된 웹 서버에서 시간 정보를 얻고 openntpd가 ntp 서버에 연결하고 시계 드리프트가 너무 커 보이는 경우에만 시계를 동기화합니다.

어쩌면 새롭고 안정적인 하드웨어 시계와 같은 더 나은 방법이 있을 수도 있습니다. 두 가지 방법 중 하나로 쉽게 구성할 수 있을 것 같습니다. 그런 일이 가능합니까/어떻게 그런 일이 이루어질 수 있습니까?

답변1

설문 조사 값을 조정해 볼 수 있습니다.ntp.conf

minpoll minpoll, maxpoll maxpoll
    These options specify the minimum and maximum poll intervals 
    for NTP messages, in seconds as a power of two. The maximum 
    poll interval defaults to 10 (1,024 s), but can be increased 
    by the maxpoll option to an upper limit of 17 (36.4 h).
    The minimum poll interval defaults to 6 (64 s), but can be 
    decreased by the minpoll option to a lower limit of 4 (16 s).
    These option are valid only with the server and peer commands.

systemd와 같은 대안에는 timesyncd폴링 간격 옵션도 있습니다 timesyncd.conf.

PollIntervalMinSec=, PollIntervalMaxSec=
    The minimum and maximum poll intervals for NTP messages. Each
    setting takes a time value (in seconds).  PollIntervalMinSec= must
    not be smaller than 16 seconds.  PollIntervalMaxSec= must be larger
    than PollIntervalMinSec=.  PollIntervalMinSec= defaults to 32
    seconds, and PollIntervalMaxSec= defaults to 2048 seconds.

현재 무엇을 사용하고 있는지 확인할 수 있습니다.

$ timedatectl show-timesync --all
[...]
PollIntervalMinUSec=32s
PollIntervalMaxUSec=34min 8s
PollIntervalUSec=34min 8s

시계가 이상하게 동작하지 않는 한 자체적으로 최대 폴링 간격에 도달해야 합니다.

ntpdatecron 작업이나 이와 유사한 작업에서 NTP 클라이언트(예:)를 사용하는 옵션도 있습니다 . 이렇게 하면 동기화 상태에 관계없이 지정한 간격으로만 시계를 업데이트합니다.

이 장치의 시계가 비정상적으로 작동하지만 로컬 네트워크의 다른 장치가 시계를 더 잘 유지하는 경우 해당 장치를 로컬 시간 서버로 사용할 수 있습니다. 이렇게 하면 인터넷 서버를 거의 폴링하지 않고 종종 로컬로 폴링하는 장치가 제공됩니다. 이러한 현지 시간 서버를 사용하면 외부 세계와의 접촉을 최소화할 수 있습니다.

어떤 옵션을 선택하든 시스템 시계가 항상 올바른지 확인하세요.

답변2

해결책은 Debian12로 업그레이드하고 openntpd를 제거한 다음설치 시간 동기화상술 한 바와 같이여기.
기본 옵션은 timedatectl show-timesyncFrostschutz의 유용한 답변 표시 및이러한 옵션편집을 통해 수정할 수 있지만 /etc/systemd/timesyncd.conf작동하는 시계를 갖기에는 충분해 보입니다.

관련 정보