ntp.conf 피어 및 서버

ntp.conf 피어 및 서버

NTP 서버(클러스터의 5개 중 하나)를 설정하고 있습니다. 내 구성 파일:

restrict default kod nomodify notrap
driftfile /var/lib/ntp/drift

server tick.usno.navy.mil
server ntp.colby.edu
server tick.gatech.edu

#peer local-ntp.server.2
#peer local-ntp.server.3
#peer local-ntp.server.4
#peer local-ntp.server.5

피어는 a) 아직 구성되지 않았고 b) 피어를 사용해야 하는지 확실하지 않기 때문에 주석 처리되었습니다.

아이디어는 내가 구성한 모든 NTP 서버가 USNO 소스와 동기화된다는 것입니다. 아웃바운드 연결이 중단되면 네트워크 시간을 일관되게 유지하기 위한 목적으로만 서로 동기화됩니다. 각 클라이언트는 serverntp.conf의 지시문 으로 5개의 로컬 NTP 서버를 모두 사용하도록 구성됩니다 .

결국에는 키 인증을 사용하는 것이 더 복잡해지겠지만 지금은 간단하게 시작하겠습니다. 내가 옳은 일을 하고 있는 걸까?

답변1

이것은 내 NTP 서버의 몇 가지 예일 뿐이며 이를 수행하는 방법은 다양하지만 내 방법은 다음과 같습니다.

# Permit time synchronization with our time source, but do not
# permit the source to query or modify the service on this system.
restrict default kod nomodify notrap noquery
restrict -6 default kod nomodify notrap noquery
# Set nopeer when not configuring a peer node.
#restrict default kod nomodify notrap nopeer noquery
#restrict -6 default kod nomodify notrap nopeer noquery
  • 쿼리 없음: 상태 데이터가 ntpd에서 덤프되는 것을 방지합니다.
  • 노트럽: 제어 메시지 트랩 방지 서비스
  • 수정하지 마세요: 서버 수정을 시도하는 모든 ntpq 쿼리를 차단합니다.
  • 아니요: 피어 연결을 설정하려는 모든 패킷을 차단합니다.
  • 암호: 원치 않는 쿼리를 줄이기 위해 Kiss-o-death 패킷을 설정합니다.
  • -6: IPV6 호스트에 대한 제한 사항임을 ntpd에 알립니다(ping 및 ping6과 유사).

신뢰할 수 있는 웹 호스트 + 로컬 호스트만 허용

restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
restrict 127.0.0.1 #This is optional depending on your local machine's requirements

서버와 피어의 차이점

  • ntpd 서비스가 다른 서버로부터 시간을 요청합니다.
  • ntpd 서비스 및 피어 교환 시간

NTP 서버 A

server 0.pool.ntp.org iburst 
server 1.pool.ntp.org iburst 
peer myntp.server.b

NTP 서버 B

server 2.pool.ntp.org iburst 
server 3.pool.ntp.org iburst
peer myntp.server.a
  • 탈출하다: 서버에 연결할 수 없는 경우 각 폴링 간격마다 일반적인 패킷 대신 8개의 패킷 버스트가 전송됩니다. 서버에 연결할 수 없는 한 패킷 사이의 간격은 모뎀 호출이 완료될 수 있도록 약 16초입니다. 서버에 연결할 수 있게 되면 패킷 사이의 간격은 약 2초입니다.

NTP 서버에 연결될 네트워크의 나머지 서버에 대해서는 다음 prefer옵션을 사용할 수도 있습니다.

server 192.168.1.125 prefer # Prefer your own NTP server over others listed

다중 서버/피어 투 피어 ntp 네트워크의 예입니다. 각 ntp가 어떻게 수행하는지 주의 깊게 살펴보세요.아니요동일하게 servers나열되어 있습니다. 이는 P2P 동기화를 더 잘 사용하기 위한 것입니다. 따라서 P2P 동기화는 서로 다른 시간에 결과를 일치시킬 수 있습니다.

1a  1b     1c  1d     1e  1f      outside
. \ / ...... \ / ...... \ / ..............
   2a ---p--- 2b ---p--- 2c        inside
  /|\        /|\        /|\
 / | \      / | \      / | \
3a 3b 3c   3e 3f 3g   3h 3i 3j

Key: 1 = stratum-1, 2 = stratum-2, 3 = stratum-3, p = peer
#Diagram + more info: http://www.ntp.org/ntpfaq/NTP-s-config-adv.htm

추가 정보: http://doc.ntp.org/4.1.1/confopt.htm

도움이 되길 바랍니다.

답변2

아이디어는 내가 구성한 모든 NTP 서버가 USNO 소스와 동기화된다는 것입니다.

그래서 모두를 위한 줄이 있습니다 server. 이것은 어느 정도 의미가 있습니다.

아웃바운드 연결이 중단되면 네트워크 시간을 일관되게 유지하기 위한 목적으로만 서로 동기화됩니다.

서로 동기화를 시도하지만 작동하지 않습니다. 모든 시계 소스가 사라지므로 서버는 결국 시간 제공을 중단하게 됩니다. 가동 중단 기간이 너무 길지 않다면 괜찮을 수도 있습니다.

인터넷 백업을 원하고 값싼 라디오/GPS 시계를 설치하고 싶지 않은 경우 서버의 로컬 시계로 돌아갈 수 있습니다. 가장 쉬운 방법은 서버를 선택하고 다음을 추가하는 것입니다.

server 127.127.1.0
fudge 127.127.1.0 stratum 10

이 서버는 대체 서버가 되며 다른 모든 클럭 소스가 사라지면 모든 사람이 이를 따릅니다. NTP에서는 컴퓨터 그룹을 설정하고 함께 동기화하는 것을 허용하지 않습니다. 대신 일부 "라이브" 피드를 배포하려고 시도합니다. CPU 클럭은 일반적으로 이와 같이 처리되지 않으므로 위의 코드가 이를 발생시킵니다.

이제 모든 서버에 동일한 것을 넣으면 각 서버는 자신의 로컬 시계가 이웃 시계보다 낫다고 생각하고 함께 표류하지 않습니다.

관련 정보