기본 게이트웨이를 ntp 서버로 사용

기본 게이트웨이를 ntp 서버로 사용

데비안을 실행하는 서버가 여러 대 있고 모두 해당 기본 게이트웨이에서 실행되는 NTP 서버에 시계를 동기화해야 합니다. 다양한 네트워크 세그먼트에 많은 서버가 있기 때문에 게이트웨이 IP 주소가 무엇인지 알아내고 /etc/ntp.conf각 서버에 대해 수동으로 변경해야 합니다.

이 작업에는 시간이 좀 걸리고 네트워크 구조가 수시로 변경된다는 것을 알고 있기 때문에 어떤 부분이 있는지 궁금합니다.간단한 방법(매년마다 IP 주소를 수동으로 변경하는 것보다 쉽습니다.) ntp 클라이언트를 "기본 게이트웨이에 자동 동기화" 모드로 설정하세요. 그런 일이 가능합니까?

답변1

Jeff Schaller와 논의한 후 ntp 이전에 실행되고 게이트웨이 주소를 다음에 추가 init.d하는 간단한 스크립트를 추가했습니다 .set-gateway-as-ntp/etc/ntp.conf

#! /bin/sh
### BEGIN INIT INFO
# Provides:          setgatewayasntp
# Required-Start:    $network
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# X-Start-Before:    $ntp
# Short-Description: Set gateway as NTP server
# Description:       Set gateway address to /etc/ntp.conf
### END INIT INFO

PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="Set Gateway as NTP"

. /lib/init/vars.sh
. /lib/lsb/init-functions

case "$1" in
  start)
    gateway_ip=`ip route show default | awk '/default/ {print $3}'`
    sed -i /etc/ntp.conf -e "s/^server .*/server $gateway_ip/"
    ;;
  stop)
    ;;
  *)
    echo "Usage: $SCRIPTNAME {start|stop}" >&2
    exit 3
    ;;
esac

:

저는 이 솔루션이 그다지 자랑스럽지는 않지만 제 문제를 해결했습니다.

답변2

가장 간단한 해결책은 dhcp 임대에 ntp-servers optino를 제공하는 것입니다.

subnet 192.168.10.0 netmask 255.255.255.0 {
    option routers 192.168.10.1;
    option ntp-servers 192.168.10.1, 192.168.10.50;
    BLAH BLAH
 }

기본적으로 데비안의 ntp 패키지에는 dhcp 임대 목록에 나열된 ntp 서버를 ntp.conf에 추가하는 dhcp-exit 후크가 포함되어 있습니다.

관련 정보