In questo post viene spiegato come poter utilizzare un telefono Androided un calcolatore con Linux per creare un semplice NTP server
Questa funzione e' utile nel caso che si abbiano diversi sensori che necessariamente devono lavorare ben sincronizzati ed e' stata necessaria dopo la recente vulnerabilita' di NTP quando l'amministratore di una grande rete a cui mi appoggio ha deciso di tagliare tutto il traffico NTP (senza peraltro avvisare gli utenti)
Era richiesto che il PC ed il telefono fossero collegati via cavo USB (e non via Bluetooth) in modo da non avere perdita di connessione ed in modo anche di alimentare in modo semplice il telefono
a questo punto da shell si forwarda tutto il traffico sul protocollo ADB verso la porta 4352 TCP del calcolatore
adb forward tcp:4352 tcp:4352
per verificare la connessione si puo' usare telnet
telnet localhost 4352
se tutto e' andato a buon fine si dovrebbero passare i messaggi NMEA (anche se non si e' ottenuto il fix del GPS si vedono comunque le stringhe)
a questo punto si puo' installare il demone GPSD
si lancia quindi il demone che ascolta la porta 4352 dopo prima era stato dirottato il trafffico GPS del telefono
gpsd tcp://localhost:4352
per verificare se funziona il demone si puo' usare a linea di comando
cgps -d
mentre in X
xgps
per fare in modo da usare il dato del tempo per il server del tempo si deve installare il demone di NTP
apt-get install ntp
e si modifica il file di configurazione in /etc/ntp.conf
server 127.127.28.0 minpoll 4
fudge 127.127.28.0 time1 0.183 refid NMEA
server 127.127.28.1 minpoll 4 prefer
fudge 127.127.28.1 refid PPS
ntpq -p