Как синхронизировать часы в локальной сети?

Предположим, у нас есть несколько систем, подключенных к локальной сети и не подключенных к Интернету. Как лучше всего обеспечить синхронизацию каждого из этих часов? Нет необходимости, чтобы они были синхронизированы со временем UTC, но достаточно, чтобы они были синхронизированы друг с другом.

Я думал об использовании NTP, настроив NTP-сервер в одной из систем. Но мне нужен совет относительно того, будет ли это намного более громоздким по сравнению с требованием. Также целесообразно ли попытаться вручную вычислить время прохождения туда и обратно и время сервера с использованием сокетов TCP?


person AvisekS    schedule 05.07.2015    source источник


Ответы (1)


Решение для небольшой локальной сети, которая должна быть синхронизирована друг с другом даже с использованием недисциплинированных локальных часов одной из машин, может быть выполнено в простой одноранговой сети NTP с одной настройкой с локальными часами в качестве резервной копии, если все источники реального времени выходят из строя.

Один из примеров многосерверной/одноранговой сети ntp. Обратите внимание, что для каждого ntp не указаны одни и те же серверы. Это сделано для лучшего использования одноранговой синхронизации. Таким образом, одноранговая синхронизация может соответствовать разным результатам времени.

1a  1b     1c  1d     1e  1f      outside
. \ / ...... \ / ...... \ / ..............
   2a ---p--- 2b ---p--- 2c        inside
  /|\        /|\        /|\
 / | \      / | \      / | \
3a 3b 3c   3e 3f 3g   3h 3i 3j

Key: 1 = stratum-1, 2 = stratum-2, 3 = stratum-3, p = peer
#Diagram + more info: http://www.ntp.org/ntpfaq/NTP-s-config-adv.htm

сервер ntp A (myntp.server.a)

# Undisciplined Local Clock. This is a fake driver intended for backup
# and when no outside source of synchronized time is available.
server 127.127.1.0
fudge 127.127.1.0 stratum 10

server 0.pool.ntp.org iburst 
server 1.pool.ntp.org iburst 
peer myntp.server.b
peer myntp.server.c

сервер ntp B (myntp.server.b)

server 2.pool.ntp.org iburst 
server 3.pool.ntp.org iburst
peer myntp.server.a
peer myntp.server.c

Если бы на ОДНОМ сервере (например, myntp.server.a) работали локальные часы, все синхронизировалось бы с ними — как бы плохо это ни было — но, по крайней мере, часы в сети оставались бы вместе. Подробнее см.: http://compgroups.net/comp.protocols.time.ntp/undisciplined-local-clocks/1874258#sthash.xnGpZubJ.dpuf

Дополнительная информация: http://doc.ntp.org/4.1.1/confopt.htm< /а>

person JasonM1    schedule 23.08.2015