Che cos'è un server ToD, "Ora del giorno" (non NTP)


13

Ho un compito semplice: configurare un server ToD ... Non è NTP. Funziona sulla porta 37. Sembra essere in bundle con inetd o xinetd.

Deve essere installato su Debian o CentOS. In alternativa FreeBSD (router pfsense).

Qualche suggerimento su come procedere? Due link di partenza in cui dopo essermi bloccato:

Anche molto apprezzato se se un modo per testare se il ToD-server è già in esecuzione. Ho parecchi server in esecuzione ma non sono consapevole se qualcuno di loro ha già il servizio ToD in esecuzione

Motivo: sto per configurare una soluzione con banda larga su cavi COAX utilizzando un CMTS e modem via cavo utilizzando uno standard chiamato DOCSIS 3. Per fare ciò i modem via cavo devono ricevere un'ora da un server ToD (ora del giorno).

AGGIORNAMENTO / Soluzione

Il tempo è RFC 868 e non viene più utilizzato poiché NTP e altri sono migliori. Ma il vecchio RFC 868 Time over port 37 è necessario per alcuni sistemi - ad es. Internet su COAX utilizzando CMTS e modem via cavo richiedono un server orario di lavoro (nella documentazione DOCSIS chiamata Time of Day server = ToD server). Il xinetd che può essere installato per Debian include un time server. Deve solo essere abilitato in etc / xinetd.d / time (disable = no per TCP e / o UDP)


2
Vedi qui per un po 'di confusione sui server ToD e sul protocollo TIME . L'esplosione del NIST dice:the time format (as specified in RFC-868) has poor error-handling capabilities in general, and many of the client programs that use this format are poorly written and may not handle network errors properly. Therefore users are strongly encouraged to switch to the Network Time Protocol (NTP), which is more robust and provides greater accuracy. We eventually intend to phase out support for the TIME format on all servers.
HopelessN00b

1
La mia domanda precedente contiene anche alcune informazioni al riguardo: serverfault.com/questions/156715/…
Stefan Lasiewski

Risposte:


20

Se stai usando Debian, xinetd viene fornito con un demone ToD. Se cambiate "disable = yes" come in /etc/xinetd.d/time in "disable = no" e quindi riavviate xinetd, dovreste essere in grado di telnetare sul server sulla porta 37 e verificare che vi sia restituito qualcosa. Puoi usare qualcosa come:

nc $IP 37 | hexdump

e vedrai che il valore esadecimale aumenta ogni secondo.


Grazie. Ottimo modo per testare. Fatto per alcuni server pubblici. Non riesco ancora a far scorrere il tempo sul mio server. Ma alla fine.
Tillebeck,

Ok. Ora funziona. Ho solo bisogno dell'UDP del tempo. Ma nc $ IP 37 usa TCP. Quindi, dopo aver abilitato entrambi, funziona! Grande. Grazie.
Tillebeck,

10

Un server "Time of Day" è un termine piuttosto vago - non sono chiaro se si riferisca a un servizio reale chiamato "ToD", o sia solo scarsa documentazione. Il protocollo Time (RFC 868) è così vecchio che pochissime cose lo usano, ad eccezione di un piccolo numero di firmware integrati (come OpenWRT ), dispositivi e dispositivi con poca memoria. NTP richiede più memoria rispetto al protocollo Time.

Quasi tutti gli apparecchi moderni possono utilizzare il Network Time Protocol (NTP) che ha sostituito il vecchio protocollo Time, che è migliore e probabilmente più sicuro rispetto al protocollo time antico. Quindi trascorri un po 'di tempo per vedere se il tuo dispositivo utilizza il supporto NTP.

Che ci crediate o no, l'articolo di Wikipedia xinetdcontiene un singolo esempio di configurazione ed è per un time server RFC 868.

Vedi http://en.wikipedia.org/wiki/Xinetd#Configuration

Un file di configurazione di esempio per il time server RFC 868 :

# default: off
# description: An RFC 868 time server. This protocol provides a
# site-independent, machine readable date and time. The Time service sends back
# to the originating source the time in seconds since midnight on January first
# 1900.
# This is the tcp version.
service time
{
        disable         = yes
        type            = INTERNAL
        id              = time-stream
        socket_type     = stream
        protocol        = tcp
        user            = root
        wait            = no
}

# This is the udp version.
service time
{
        disable         = yes
        type            = INTERNAL
        id              = time-dgram
        socket_type     = dgram
        protocol        = udp
        user            = root
        wait            = yes
}

Grazie. Mi sono bloccato poiché inetd e xinetd sono elencati come parte delle installazioni predefinite di Linux. Ho appena installato un nuovo debian e nessuno dei due era installato. Dopo aver installato xinetd ho il file e posso procedere da qui. Grazie.
Tillebeck,

2
"ora del giorno" o "ToD" è il nome che RFC 868 è chiamato nella documentazione DOCSIS. DOCSIS è per i modem CMTS e via cavo quando si fornisce internet insieme alla TV tramite cavi COAX. Sono contento che tu possa aiutarmi dopo tutto.
Tillebeck,

5

Time.nist.gov supporta i vecchi protocolli diurni e diurni. Si noti che, per quanto ricordo, quei protocolli presumono che non ci siano problemi di rete.


Grazie. Ho usato uno dei server pubblici per testare. E vedo che rispondono bene con il tempo. Ora ho bisogno che il mio server faccia lo stesso
Tillebeck il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.