Ho bisogno di creare un'applicazione che convalida la sincronizzazione dell'ora NTP su ogni macchina. In altre parole, ho bisogno di determinare se ogni macchina è la mia LAN è sincronizzata con un server orario comune (strato). Quindi, ho inventato due modi.come validare la sincronizzazione dell'ora NTP
1) Avere il client NTP su ciascuna macchina genera il file di statistiche. Se seguo questo approccio, quale dei file delle statistiche dovrei esaminare per determinare se l'ora sulla macchina è entro una certa tolleranza del time server? Ci sono peerstats, clockstats e loopstats. Qualcuno di quei file contiene informazioni che posso usare per determinare se l'ora è sincronizzata?
2) Richiama l'argomento della riga di comando ntpq e ne canalizza l'output. Analizza l'output.
In questo momento preferisco l'opzione 1, ma, come ho indicato, non sono sicuro che uno qualsiasi dei file di statistiche NTP contenga informazioni che posso utilizzare per determinare se il tempo è sincronizzato.
C'è un approccio migliore.
Esiste un'API che è possibile utilizzare per interrogare direttamente il client NTP?
Grazie per il vostro aiuto.
Si noti che su alcuni sistemi (sto usando Debian con un kernel 2.6 su un computer embedded), è necessario specificare il percorso del binario, altrimenti si ottiene uno script di shell che prende 'start | stop | restart | reload | force-reload' invece dell'opzione '-q'. –