Qu'est-ce qu'un serveur ToD, «Time of Day» (pas NTP)

13

J'ai eu une tâche simple: configurer un serveur ToD ... Ce n'est pas NTP. Il fonctionne sur le port 37. Il semble être fourni avec inetd ou xinetd.

Doit être installé sur Debian ou CentOS. Alternativement FreeBSD (routeur pfsense).

Une indication sur la façon de procéder? Deux liens de démarrage où après je suis resté coincé:

Aussi très apprécié si c'est un moyen de tester si le serveur ToD fonctionne déjà. J'ai pas mal de serveurs en marche mais je ne sais pas si l'un d'entre eux a déjà le service ToD en marche

Raison: Je suis sur le point de configurer une solution avec des câbles haut débit sur COAX en utilisant un CMTS et des modems câble en utilisant une norme appelée DOCSIS 3. Pour ce faire, les modems câble doivent recevoir une heure d'un serveur ToD (Time of day).

MISE À JOUR / Solution

Le Time est RFC 868 et n'est plus utilisé car NTP et les autres sont meilleurs. Mais l'ancien RFC 868 Time over port 37 est nécessaire pour certains systèmes - par exemple, Internet sur COAX utilisant CMTS et les modems câble ont besoin d'un serveur de temps de travail (dans la documentation DOCSIS appelé Time of Day server = serveur ToD). Le xinetd qui peut être installé pour Debian comprend un serveur de temps. Il suffit de l'activer dans etc / xinetd.d / time (disable = no pour TCP et / ou UDP)

Tillebeck
la source
2
Voir ici pour un petit texte sur les serveurs ToD et le protocole TIME . Le texte de présentation du NIST dit: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
Ma question plus ancienne contient également des informations à ce sujet: serverfault.com/questions/156715/…
Stefan Lasiewski

Réponses:

20

Si vous utilisez Debian, xinetd est livré avec un démon ToD. Si vous changez le "disable = yes" comme dans /etc/xinetd.d/time en "disable = no" et redémarrez ensuite xinetd, vous devriez pouvoir telnet au serveur sur le port 37 et vérifier que vous obtenez quelque chose retourné. Vous pouvez utiliser quelque chose comme:

nc $IP 37 | hexdump

et vous verrez que la valeur hexa augmente à chaque seconde.

Edd
la source
Merci. Excellent moyen de tester. Fait vers quelques serveurs publics. Impossible de faire fonctionner le temps sur mon propre serveur pour le moment. Mais le fera éventuellement.
Tillebeck
D'accord. Je l'ai fait fonctionner maintenant. Je n'ai besoin que de l'UDP de l'époque. Mais nc $ IP 37 utilise TCP. Donc, après avoir activé les deux, cela fonctionne! Génial. Merci.
Tillebeck
10

Un serveur "Time of Day" est un terme assez vague - je ne sais pas si cela fait référence à un service réel nommé "ToD", ou s'il s'agit simplement d'une mauvaise documentation. Le protocole Time (RFC 868) est si ancien que très peu de choses l'utilisent, à l'exception d'un petit nombre de firmwares intégrés (comme OpenWRT ), d'appareils et d'appareils avec peu de mémoire. NTP nécessite plus de mémoire que le protocole Time.

Presque tous les appareils modernes peuvent utiliser le protocole NTP (Network Time Protocol) qui a remplacé l'ancien protocole Time, qui est meilleur et probablement plus sécurisé que l'ancien protocole Time. Alors, passez du temps maintenant pour voir si votre appareil utilise le support NTP.

Croyez-le ou non, l'article de Wikipedia pour xinetdcontient un seul exemple de configuration, et c'est pour un serveur de temps RFC 868.

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

Un exemple de fichier de configuration pour le serveur de temps 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
}
Stefan Lasiewski
la source
Merci. Je suis resté bloqué car inetd et xinetd sont répertoriés comme faisant partie des installations linux par défaut. Je viens de configurer un nouveau debian et aucun d'eux n'a été installé. Après avoir installé xinetd, j'ai le fichier et je peux continuer à partir d'ici. Merci.
Tillebeck
2
"heure" ou "ToD" est le nom que le RFC 868 est appelé dans la documentation DOCSIS. DOCSIS est destiné aux modems CMTS et câblés lors de la fourniture d'Internet avec la télévision via des câbles COAX. Je suis heureux que vous puissiez tous m'aider après tout.
Tillebeck
5

Time.nist.gov prend en charge les anciens protocoles d'heure et de jour. Notez que, pour autant que je m'en souvienne, ces protocoles supposent qu'il n'y a pas de problèmes de réseau.

Jim B
la source
Merci. J'ai utilisé l'un des serveurs publics pour tester. Et je peux voir qu'ils répondent bien avec le temps. Maintenant, j'ai besoin de mon propre serveur pour faire de même
Tillebeck