ToD sunucusu nedir, “Günün Saati” (NTP değil)


13

Basit bir görevim var: Bir ToD sunucusu kur ... NTP değil. 37 numaralı bağlantı noktasında çalışır. Inetd veya xinetd ile paketlenmiş gibi görünüyor.

Debian veya CentOS üzerine kurulacaktır. Alternatif olarak FreeBSD (pfsense yönlendirici).

Nasıl ilerleyeceğinize dair bir ipucu var mı? Sıkıştıktan sonra iki başlangıç ​​bağlantısı:

Ayrıca ToD sunucusunun zaten çalışıp çalışmadığını test etmenin bir yolu varsa çok takdir. Çalışan birkaç sunucum var ancak bunların hepsinde zaten ToD hizmeti çalışıyor mu bilmiyorum

Sebep: DOCSIS 3 adlı bir standart kullanarak bir CMTS ve kablo modemler kullanarak COAX kabloları üzerinde geniş bantlı bir çözüm kurmak üzereyim. Bunu yapmak için kablo modemlerin bir ToD sunucusundan (Günün Saati) bir zaman alması gerekir.

GÜNCELLEME / Çözüm

Zaman RFC 868 ve NTP ve diğerleri daha iyi olduğu için daha az kullanıldı. Ancak bazı sistemler için eski RFC 868 Bağlantı Noktası 37 üzerinden süre gereklidir - örn. CMTS ve kablo modemleri kullanan COAX üzerinden İnternet, bir çalışma zamanı sunucusuna ihtiyaç duyar (DOCSIS belgelerinde Gün Saati sunucusu = ToD sunucusu). Debian için kurulabilen xinetd bir zaman sunucusu içerir. Sadece etc / xinetd.d / time içinde etkinleştirilmelidir (devre dışı = TCP ve / veya UDP için hayır)


2
ToD sunucuları ve TIME protokolü hakkında biraz bilgi edinmek için buraya bakın . NIST'in bulanıklığı şöyle diyor: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
Benim eski sorum bu konuda da bazı bilgiler var: serverfault.com/questions/156715/…
Stefan Lasiewski

Yanıtlar:


20

Debian kullanıyorsanız, xinetd bir ToD arka plan programı ile birlikte gelir. /Etc/xinetd.d/time içindeki "devre dışı bırak = evet" ayarını "devre dışı = hayır" olarak değiştirir ve ardından xinetd'yi yeniden başlatırsanız, 37 numaralı bağlantı noktasındaki sunucuya telnet bağlayabilmeniz ve döndürülen bir şey alıp almadığınızı kontrol edebilmeniz gerekir. Şöyle bir şey kullanabilirsiniz:

nc $IP 37 | hexdump

ve onaltılık değerin her saniye arttığını göreceksiniz.


Teşekkürler. Test etmek için harika bir yol. Birkaç ortak sunucuya doğru tamamladı. Henüz kendi sunucumda çalışma süresi sağlanamıyor. Ama sonunda olacak.
Tillebeck

Tamam. Şimdi çalıştıralım. Sadece zamanın UDP'sine ihtiyacım var. Ancak nc $ IP 37 TCP kullanır. Yani her ikisini de etkinleştirdikten sonra çalışıyor! Harika. Teşekkürler.
Tillebeck

10

"Günün Saati" sunucusu oldukça belirsiz bir terimdir - "ToD" adında gerçek bir hizmete atıfta bulunuyorsa veya yalnızca kötü belgeler olup olmadığı net değil. Zaman protokolü (RFC 868) o kadar eskidir ki, az sayıda gömülü yazılım ( OpenWRT gibi ), hafızası az olan cihazlar ve cihazlar hariç, çok az şey kullanır . NTP, Zaman protokolünden daha fazla bellek gerektirir.

Neredeyse tüm modern cihazlar, eski Zaman protokolünün yerini alan Ağ Zaman Protokolünü (NTP) kullanabilir, bu da eski zaman protokolünden daha iyi ve muhtemelen daha güvenlidir . Cihazınızın NTP desteği kullanıp kullanmadığını görmek için şimdi biraz zaman ayırın.

İster inanın ister inanmayın, Wikipedia makalesi xinetdtek bir yapılandırma örneği içerir ve bu bir RFC 868 zaman sunucusu içindir.

Bkz. Http://en.wikipedia.org/wiki/Xinetd#Configuration

RFC 868 zaman sunucusu için örnek bir yapılandırma dosyası :

# 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
}

Teşekkürler. İnetd ve xinetd varsayılan linux kurulumlarının beeing parçası olarak listelendiğinden takıldım. Sadece taze bir debian kuruyorum ve orada hiçbiri yüklü değil. Xinetd kurduktan sonra dosyam var ve buradan devam edebilirim. Teşekkürler.
Tillebeck

2
"günün saati" veya "ToD", RFC 868'in DOCSIS belgelerinde çağrıldığı addır. DOCSIS, COAX kabloları üzerinden TV ile birlikte internet sağlarken CMTS ve kablo modemler içindir. Sonuçta bana yardım edebileceğine sevindim.
Tillebeck

5

Time.nist.gov eski saat ve gündüz protokollerini destekler. Hatırladığım kadarıyla, bu protokollerin ağ sorunu olmadığını varsaydığını unutmayın.


Teşekkürler. Test etmek için genel sunuculardan birini kullandım. Ve zamanla iyi cevap verdiklerini görebiliyorum. Şimdi aynı şeyi yapmak için kendi sunucuma ihtiyacım var
Tillebeck
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.