2 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Михаил Григорьев Сисадмин — это не профессия, это призвание

alt=»Блог Михаила Григорьева» />

4 Фев 2020 18:02:19 | 2 комментария

Использование systemd-timesyncd для синхронизации времени в Debian/Ubuntu

В Linux для синхронизации времени традиционно используется ntpd как стандарт де-факто, но есть другая и более простая альтернатива — это systemd-timesyncd.

Давайте настроим его для синхронизации времени, а про ntpd забудем и удалим его.

С ntpd все просто, ставится пакет ntp, настраивается файл конфигурации /etc/ntp.conf и включается служба ntp (systemctl start ntp), далее проверяем с помощью утилиты ntpstat факт синхронизации локальных часов с удаленным сервером и радуемся.
Все бы хорошо, но с помощью ntpd можно не только забирать время с удаленных сервером, но и выступать в качестве сервера времени для других, то есть ntpd принимает входящие соединения и его некорректная настройка может послужить причиной участия вашего сервера в DDoS-атаки (см. apt-get remove ntp ntpstat —purge apt autoremove

Удалить ntpd или например chronyd нужно потом, что иначе systemd-timesyncd не будет синхронизировать время. За такую проверку отвечает файл /lib/systemd/system/systemd-timesyncd.service.d/disable-with-time-daemon.conf в котором прописан список бинарников, при наличии которых в системе демон systemd-timesyncd не будет работать.

Теперь настроим systemd-timesyncd, для этого в файл конфигурации /etc/systemd/timesyncd.conf пропишем список серверов времени:

Таким образом мы добавили в файл настройку NTP= определяющую список основных серверов времени, можно добавить настройку FallbackNTP= которая определит список резервных серверов времени:

Смотрим текущий статус синхронизации часов:

В строке «NTP synchronized» может стоять no если синхронизация часов по ntp до этого не была настроена вообще или yes, если до этого часы синхронизировались с помощью ntpd

Включаем использование systemd-timesyncd для синхронизации времени:

Включаем и перезапускаем службу systemd-timesyncd:

Через несколько минут можно проверить с помощью timedatectl состояние синхронизации:

Значение в строке «NTP synchronized» должно измениться на yes

Если systemd-timesyncd не синхронизирует часы, то прежде всего проверьте настройки межсетевого экрана (iptables) на предмет разрешения исходящих подключений на 123 порт по протоколу UDP.

Детальную информацию о состоянии синхронизации времени можно посмотреть командой:

P.S. Утилиту timedatectl так же можно использовать для смены часового пояса, пример:

Выведем список временных зон:

Установим временную зону Asia/Yekaterinburg:

+5 свидетельствует об установке нашей зоны (Asia/Yekaterinburg это UTC+5)

На этом все, до скорых встреч. Если у Вас возникли вопросы или Вы хотите чтобы я помог Вам, то Вы всегда можете связаться со мной разными доступными способами.

Принудительная синхронизация времени ntp

FreeBSD поставляется с сервером NTP ntpd(8), который можно использовать для опроса других серверов NTP для установки часов на вашей машине или предоставления услуг точного времени. Написанное в статье в равной степени справедливо и для многих других *nix систем (Linux). Как настроить синхронизацию времени в Windows, читайте здесь .

Для синхронизации времени FreeBSD с другой системой служит программа ntpdate, обычно вызываемая планировщиком cron в заданные интервалы времени. Если вам нужно только синхронизировать ваши часы при загрузке машины, вы можете воспользоваться утилитой ntpdate(8). Кроме того, синхронизацию времени может делать демон ntpd. Программа ntpd(8) изменяет время постепенно, тогда как ntpdate(8) устанавливает время вне зависимости от того, насколько велика разница между текущим временем машины и точным временем. Дока man ntpdate говорит, что весь функционал ntpdate теперь реализован в демоне ntpd, и со временем ntpdate прекратит существование (перестанет поставляться в дистрибутиве), поэтому лучше сразу использовать ntpd. Демон ntpd может эмулировать поведение ntpdate, если указать опции -q и -g, при этом ntpd просто синхронизирует время и завершает работу.

Демон ntpd специально предназначен для установки и поддержания системного времени в синхронизме со стандартными серверами времени в Интернете. По умолчанию используется протокол NTP (порт 123 UDP) версии 4, но также поддерживается совместимость с версиями 3 (RFC-1305), а также 1 и 2 (RFC-1059 и RFC-1119). Демон ntpd периодически (с настроенным интервалом) обменивается сообщениями с одним или несколькими серверами NTP, доступными в Интернете (или в локальной сети). Если разница времени между локальным хостом и сервером NTP превышает 1000 секунд, то требуется вмешательсто оператора для ручной установки времени. При этом в лог пишется panic-сообщение, и демон прекращает работу. Опция -g отменяет такое поведение (время синхронизируется при любой разнице времени), однако если синхронизация была неуспешной (разница во времени превышает 1000 секунд), ntpd все равно прекращает работу. Для работы ntpd может использовать специальный файл для хранения параметров ухода часов, по умолчанию это /etc/ntp.drift. Конфигурация для ntpd по умолчанию хранится в файле /etc/ntp.conf.

Читайте так же:
Как отрегулировать рулевую рейку на таврии

Вариантов настройки синхронизации много, но я выбрал для себя простейший режим — запуск ntpd по крону с указанием опций -q и -g. Процесс по шагам.
1. Создаем файл /etc/ntp.conf.
# touch /etc/ntp.conf

2. Находим и проверяем сервера времени. Я нашел сервера server ntp0.zenon.net, ns.arc.nasa.gov, tick.usno.navy.mil, time.nist.gov.
# nmap -sU -p123 ntp0.zenon.net
# nmap -sU -p123 -P0 ns.arc.nasa.gov
# nmap -sU -p123 tick.usno.navy.mil
# nmap -sU -p123 time.nist.gov
Среди серверов лучше определить один, до которого кратчайший маршрут (с помощью утилиты traceroute), чтобы его потом указать в /etc/ntp.conf с опцией prefer. У меня такой сервер оказался ntp0.zenon.net.

3. Добавляем сервера в /etc/ntp.conf
server ntp0.zenon.net prefer
server ns.arc.nasa.gov
server tick.usno.navy.mil
server time.nist.gov

4. Теперь можно синхронизировать время простой командой ntpd -q -g. Здесь опция -q указывает ntpd закончить работу после синхронизации времени, а опция -g отключает проверку sanity-интервала в 1000 секунд. Этими опциями эмулируется поведение устаревающей программы ntpdate.

5. На Red Hat Linux команда ntpd -q -g заработала даже без создания и правки файла /etc/ntp.conf, поскольку после установки этот файл появился автоматически. На FreeBSD оказалось все не так гладко — время засинхронизировалось, но со смещением -3 часа. Как я понял, это из-за того, что неправильно настроен часовой пояс. После настройки часового пояса все заработало нормально.

6. Добавляем назначенное задание. Например, для FreeBSD нужно в файл /etc/crontab добавить строчку:
0 1 * * * root ntpd -q -g
Это будет запускать ntpd -q -g каждый день в 01.00

Русские Блоги

Принцип NTP и настройка сервера времени NTP под Redhat6.5

1. Основная концепция 1

NTP — это сетевой протокол времени ( Network Time Protocol ), это протокол, используемый для синхронизации времени каждого компьютера в сети.

В мире компьютеров время очень важно. Например, для таких научных исследований, как запуски ракет, требования к единообразию и точности времени очень высоки. Основывается ли оно на времени компьютера A или компьютера B? Время? Для решения этой проблемы используется протокол NTP. NTP (сетевой протокол времени) — это протокол, используемый для синхронизации времени каждого компьютера в сети. Его цель — синхронизировать часы компьютера с UTC с точностью до 0,1 мс в локальной сети и с точностью от 1 до 50 мс в большинстве мест в Интернете.

Он может синхронизировать время компьютера с его сервером или источником часов (например, кварцевые часы, GPS и т. Д.), Он может обеспечивать высокоточную коррекцию времени и может использовать зашифрованное подтверждение для предотвращения атак злонамеренного протокола. Чтобы

Серверы на уровне 0 используют физические устройства, такие как атомные часы и часы GPS. Уровень 1 и уровень 0. Последующий уровень подключается к верхнему уровню через сеть, и серверы на том же уровне также могут взаимодействовать.

1. C / S в одном

ntpd — это сервисный сервер для нижнего клиента и клиент для верхнего сервера, что означает, что новая версия служебной программы NTP больше не делает различий между сервером и клиентом и все вместе называется ntpd. ntpd решает, предоставлять ли услуги часов для других серверов или синхронизировать часы с других серверов в соответствии с параметрами файла конфигурации. Все конфигурации находятся в файле /etc/ntp.conf.

2. Интервал синхронизации клиента NTP.

Как часто служба NTP запрашивает синхронизацию часов от сервера часов? Минимальный временной интервал по умолчанию составляет 64 секунды, а максимальный временной интервал по умолчанию — 1024 секунды (около 17 минут). 64 с более разумно, интервал по умолчанию также можно регулировать (обратите внимание, что большинство драйверов устройств не будут работать должным образом, если интервал опроса меньше 64 с, и что широковещательный сервер и ассоциации многоадресных клиентов также будут использовать значение по умолчанию, если оно не переопределено). .

3. Допустимый диапазон ошибок

Служба NTP не синхронизируется ни при каких обстоятельствах. Когда разница между временем сервера часов и местным временем превышает 1000 с, служба NTP будет считать, что часы были настроены искусственно или произошел сбой оборудования, например, поврежденная батарея CMOS. В это время служба NTP будет закрыта, и для синхронизации часов требуется ручное (ntpdate . ).

Читайте так же:
Как отрегулировать ручной тормоз на велосипеде univega

Использование опции -g позволяет ntpd игнорировать ошибки в 1000 секунд или больше и устанавливать часы на системное время сервера, но из-за этого ntpd все равно завершит работу.

4. Страта

stratum устанавливается согласно уровню верхнего сервера (+1).

Для хоста, который предоставляет поставщика услуг сетевого времени, настройка страты должна быть максимально точной.

Как поставщик услуг времени в локальной сети, stratum обычно устанавливается на 10 (Stratum 10 является обычным для несинхронизированных локальных часов; он достаточно высок, чтобы никто не мог принять его за желаемые часы для синхронизации) следующим образом:

2. Основная концепция 2

1. Время и часовой пояс

Если кто-то спросит, сколько сейчас времени ? Ты посмотрел на часы и ответил, что ночью 8 Нажал . Этот ответ вроде бы не проблема , Но если человек, который вас спрашивает, находится в Европе, то ваш ответ его сильно запутает. , Потому что он все еще в небе .

Вот вопрос, как определить время . Потому что земля вращается вокруг солнца 24 В час , Время восхода и заката во всем мире разное. . Итак, мы должны разделить часовой пояс (timezone) Необходимость , Которая должна разделить мир на 24 Разные часовые пояса . Таким образом, мы можем понимать определение времени как значение времени плюс местный часовой пояс. ( Обратите внимание, что это местоположение может соответствовать городу. )

Мы все выучили среднее время по Гринвичу на уроках географии. (GMT), это 0 Часовой пояс время . Но в компьютерах мы часто видим UTC. это Coordinated Universal Time Сокращение для . Хотя можно считать UTC с участием GMT Равно ( Ошибка довольно небольшая ), но UTC Был признан международным стандартом , Итак, мы все должны следовать стандарту и использовать только UTC

Так что, если местное время в Китае ночное 8 Точка , Мы можем иметь следующие два представления

Вот CST да Chinese Standard Time, Это то, что мы обычно называем пекинским временем . Потому что Китай в UTC+8 Часовой пояс , И так далее 12:00 UTC Вверх .

первый , Независимо от того, на каком канале мы хотим синхронизировать время системы , Обычно провайдер предоставляет только UTC+0 Значение времени без указания часового пояса ( Потому что он не знает, где ты ). Итак, когда мы устанавливаем системное время , Установка часового пояса — первая задача

второй , Во многих странах действует летнее время , Это на час впереди времени в определенный день года ( Например, из UTC+8 Становится UTC+9 Вверх ), Тогда вам придется снова притормозить, когда придет время . Если мы установим правильный часовой пояс , Когда нужно изменить время, система автоматически подстраивается под нас.

2. Как установить Linux Time Zone

в Linux под glibc Предоставляет многие из наших предварительно скомпилированных timezone файл , Они просто положили /usr/share/zoneinfo В этом каталоге , Он в основном охватывает большинство стран и городов.

# ls -F /usr/share/zoneinfo/

Africa/ Chile/ Factory Iceland Mexico/ posix/ Universal

America/ CST6CDT GB Indian/ Mideast/ posixrules US/

Antarctica/ Cuba GB-Eire Iran MST PRC UTC

Arctic/ EET GMT iso3166.tab MST7MDT PST8PDT WET

Asia/ Egypt GMT0 Israel Navajo right/ W-SU

Atlantic/ Eire GMT-0 Jamaica NZ ROC zone.tab

Australia/ EST GMT+0 Japan NZ-CHAT ROK Zulu

Brazil/ EST5EDT Greenwich Kwajalein Pacific/ Singapore

Canada/ Etc/ Hongkong Libya Poland Turkey

CET Europe/ HST MET Portugal UCT

Здесь мы можем найти город, в котором мы находимся time zone файл . Итак, если мы хотим проверить каждый time zone Мы можем использовать текущее время zdump команда

Hongkong Fri Jul 6 06:13:57 2007 HKT

Итак, как мы сообщаем системе, где мы time zone Что это ? Есть много способов , Вот два

Первый — изменить /etc/localtime Этот файл , Этот файл определяет, где мы находимся local time zone.

Мы можем /usr/share/zoneinfo Найдите нас дальше time zone Файл и скопируйте его в /etc/localtimezone( Или будь symbolic link)

Предположим, у нас есть time zone да BST( Какое британское летнее время ,UTC+1)

Thu Jul 5 23:33:40 BST 2007 Мы хотим поставить time zone Просто переключитесь на часовой пояс, в котором находится Шанхай.

# ln -sf /usr/share/zoneinfo/posix/Asia/Shanghai /etc/localtime

Fri Jul 6 06:35:52 CST 2007

Затем часовой пояс меняется ( Обратите внимание, что время также было скорректировано соответствующим образом. )

Читайте так же:
К65и карбюратор регулировка поплавка

3. Real Time Clock(RTC) and System Clock

Говоря об установке времени, здесь также очевидна другая концепция: у нас есть два часа на одном компьютере. : Аппаратные часы (RTC), Также есть системные часы (System Clock)

Под аппаратными часами понимается специальная схема, встроенная в материнскую плату. , Его существование является причиной того, что мы все еще можем рассчитать время после выключения

Системные часыОперационная системаиз kernel Часы, используемые для расчета времени . Это из 1970 год 1 месяц 1 день 00:00:00 UTC Сумма секунд на данный момент находится в linux Системное время будет синхронизировано с аппаратным временем во время загрузки. (synchronization), Затем они бегут независимо

Итак, поскольку два часа работают независимо , Потом через долгое время будут ошибки , Посмотрим на пример

Fri Jul 6 00:27:13 BST 2007

Fri 06 Jul 2007 12:27:17 AM BST -0.968931 seconds

по hwclock —show Команда мы можем посмотреть аппаратное время на машине (always in local time zone), Мы видим, что между ним и системным временем все еще есть некоторая ошибка. , Затем нам нужно их синхронизировать.

Если мы хотим установить аппаратное время на системное время, мы можем запустить следующую команду

напротив , Мы также можем установить системное время на аппаратное время

Итак, если мы хотим установить аппаратное время, мы можем начать BIOS Установить в . Также можно использовать hwclock команда

# hwclock —set —date="mm/dd/yy hh:mm:ss"

Если вы хотите изменить системное время, используйте date Команда самая простая

# date -s "dd/mm/yyyy hh:mm:ss"

Теперь мы знаем, как установить системное и аппаратное время. . Но вопрос в том, что, если эти два раза не точны. ? Затем нам нужно найти сервер в Интернете, который может предоставить нам точное время, а затем синхронизировать наше системное время через протокол. , Тогда это соглашение NTP Вверх . Обратите внимание, что синхронизация, о которой мы будем говорить дальше, относится к синхронизации между системным временем и сетевым сервером.

три, NTP Введение в сервис

NTP ( Network Time Protocol , Network Time Protocol) — это протокол, используемый для синхронизации времени компьютера. Он может синхронизировать компьютер с его сервером или источником часов, а также обеспечивать высокоточную коррекцию времени.

Используемый порт

По умолчанию NTP Сервисный порт:

Настроено в этой статье NTP Режим работы:

Использовать client/server Этот метод подходит для сервера времени, чтобы получать информацию о времени от верхнего сервера времени и предоставлять информацию о времени нижним пользователям.

Записки программера

Синхронизация времени является важной задачей, хотя не многие задумывались об этом. Ну что плохого в убежавшем на сервере времени? А знаете ли вы, что многие проблемы с часами влияют на протоколы, связанные с криптографией? По этой причине в Active Directory разница в часах более 5 минут будет приводить к проблемам аутентификации Kerberos.

Часовые уровни. Strata.

Чтобы понять устройство NTP следует знать про концепцию strata или stratum. Авторитетные источники времени, такие как спутники GPS, цезиевые атомные часы, радио волны WWVB — всё это stratum 0. Они авторитетны на том основании, что у них есть некоторый способ поддержания высокоточного хронометража. Можно, конечно, воспользоваться обычными кварцевыми часами, но зная, что за месяц с ними легко потерять 15 секунд, то лучше их не использовать в качестве мерила времени. Stratum 0 это когда секунда не потеряется за 300 000 лет!

Компьютеры, которые напрямую (не по сети!) берут время у stratum 0 — это stratum 1. Так как всегда есть задержки из-за передачи сигнала и затраты на установку времени, то компьютеры stratum 1 не так точны как stratum 0, но в реальной жизни различие достигает пару микросекунд (1 мкс = 10 -6 с), что вполне допустимое отклонение.

Следующий уровень компьютеров, берущих время по сети у stratum 1 — это . барабанная дробь . интрига . stratum 2! Опять таки из-за различных задержек (сетевые точно), stratum 2 чуток отстаёт от stratum 1 и уж точно от stratum 0. На практике это разница от нескольких микросекунд (1 мкс = 10 -6 с) до нескольких миллисекунд (1 мс = 10 -3 с). Многие хотят синхронизироваться со слоем не дальше stratum 2.

Как понятно из схемы, stratum 4 берёт время у вышестоящего stratum 3. stratum 5 у stratum 4 и так далее. stratum 16 считается самым нижним слоем и время там считается несинхронизированным.

Читайте так же:
Вихрь 30 порядок регулировка зажигания

Чтобы синхронизировать время с помощью протокола NTP, следует сначала вручную выставить ваше время. Недопустима разница между вашим точным временем и показаниями ваших часов более 1000 секунд. Если используемый вами сервер времени врёт более 1000 миллисекунд (1 секунда), то он будет исключён из списка и будут использоваться другие вместо него. Данный механизм позволяет отсеивать плохие источники времени.

Клиент времени.

В файле /etc/ntp.conf для клиента важны строки Server. Их может быть несколько — до 10 штук!

Сколько добавлять? Следует иметь в виду:

  • Если у вас только один сервер (одна строка server), то если данный сервер начнёт врать, то вы будете слепо следовать за ним. Если его время убежит на 5 секунд и вы убежите в след за ним.
  • Если добавлено 2 сервера (2 строки server), то NTP пометит их обоих как false tickers. Если один из них будет врать, то NTP не может понять кто врёт, так как нет кворума.
  • Если добавлено 3 и более сервера времени, то можно вычислить одного вруна false tickers. Если серверов времени 5 или 6, то можно найти 2 вруна false tickers. Если серверов 7 или 8, то 3 false tickers. Если серверов 9 и 10, то 4 false tickers.

Проект NTP Pool.

Есть такой проект NTP Pool по адресу которого pool.ntp.org/zone/ru/ можно найти рекомендованные для русских пользователей сервера времени.

server 0.ru.pool.ntp.org
server 1.ru.pool.ntp.org
server 2.ru.pool.ntp.org
server 3.ru.pool.ntp.org

Такие операционные системы, как Debian и Ubuntu, предлагают пользователям свои сервера времени.

server 0.debian.pool.ntp.org
server 1.debian.pool.ntp.org
server 2.debian.pool.ntp.org
server 3.debian.pool.ntp.org

server 0.ubuntu.pool.ntp.org
server 1.ubuntu.pool.ntp.org
server 2.ubuntu.pool.ntp.org
server 3.ubuntu.pool.ntp.org

Если вызвать на вашем Linux компьютере, который использует NTP, команду ntpq -pn

О чём говорят названия столбцов:

  • remote — удалённые сервера, с которыми вы сихронизируете время.
  • refid — вышестоящий stratum для данного сервера.
  • st — уровень stratum. От 0 (нам недоступно) до 16 (нам не желательно). Идеально — 2.
  • t — тип соединения. «u» — unicast или manycast, «b» — broadcast или multicast, «l» local reference clock, «s» — симметричный узел, «A» — manycast сервер, «B» — broadcast server, «M» — multicast сервер.
  • when — время, когда последний раз сервер ответил нам. Параметр отображает число в секундах, но может в минутах, если число с m или в часах, если h.
  • poll — частота опроса. Минимум 16 секунд, максимум 32 часа. Число должно быть 2 n . Обычно в данном параметре наблюдается или 64 секунды или 1024.
  • reach — 8 бит октета, показывающий статус общения с удалённым сервером времени: успешный или сбойный. Если биты установлены — то успешно, иначе — сбой. Значение 377 — бинарно это 0000 0000 1111 1111.
  • delay — значение в миллисекундах показывает время между отправкой и получения ответа (round trip time — RTT).
  • offset — смещение в миллисекундах между вами и серверами времени. Может быть положительным и отрицательным числом.
  • jitter — абсолютное значение в миллисекундах с указанием среднеквадратичного отклонения вашего смещения.

Перед IP адресом NTP сервера есть символ — это tally code. Виды tally code:

  • » « — отброшен как недопустимый. Например, нет связи с ним или он в оффлайн, он слишком высокого ранга и не обслуживает таких как вы.
  • «x» — отброшен алгоритмом «пересечения» (intersection algorithm). Алгоритм пересечения подготавливает список кандидатов партнеров, могущих стать источниками синхронизации и вычисляет доверительный интервал для каждого из них.
  • «.» — отброшен из-за переполнения таблицы.
  • «-« — отброшен алгоритмом кластеризации (cluster algorithm). Алгоритм кластеризации сортирует список кандидатов по кодам слоя и расстояния синхронизации.
  • «+» — сервер включён алгоритмом «комбинирования» (combine algorithm). Этот сервер — отличный кандидат если текущий сервер времени начнёт отказывать вам.
  • «#» — сервер является отличным альтернативным сервером времени. Сервер с # можно увидеть только если у вас более 10 записей server в /etc/ntp.conf
  • «*» — текущий сервер времени. Его показания используются для синхронизации ваших часов.
  • «o» — сервер Pulse per second (PPS). Обычно это означает, что данный сервер времени использует источники времени типа GPS спутников и другие сигналы точного времени. Если рисуется о, то другие типы tally code уже отображаться не будут.
Читайте так же:
Lifan двигатель мотоблока регулировка клапанов

В поле refid могут быть следующие значения:

  • IP адрес — адрес удалённого сервера времени.
  • .ACST.- NTP manycast сервер.
  • .ACTS.- Automated Computer Time Service из American National Institute of Standards and Technology.
  • .AUTH.- ошибка аутентификации.
  • .AUTO.- ошибка в последовательностях Autokey.
  • .BCST.- NTP broadcast сервер.
  • .CHU.- Shortwave radio receiver от станции CHU в Ottawa, Ontario, Canada.
  • .CRYPT.- ошибка протокола Autokey.
  • .DCFx.- LF radio receiver от станции DCF77 в Mainflingen, Germany.
  • .DENY.- В доступе отказано.
  • .GAL.- European Galileo satellite receiver.
  • .GOES.- American Geostationary Operational Environmental Satellite receiver.
  • .GPS.- American Global Positioning System receiver.
  • .HBG.- LF radio receiver от станции HBG в Prangins, Switzerland.
  • .INIT.- Peer association initialized.
  • .IRIG.- Inter Range Instrumentation Group time code.
  • .JJY.- LF radio receiver от станции JJY в Mount Otakadoya, рядом с Fukushima или Mount Hagane на острове Kyushu, Japan.
  • .LFx.- Обычный LF radio receiver.
  • .LOCL.- локальные часы хоста.
  • .LORC.- LF radio receiver от Long Range Navigation (LORAN-C).
  • .MCST.- NTP multicast сервер.
  • .MSF.- Anthorn Radio Station рядом с Anthorn, Cumbria.
  • .NIST.- American National Institute of Standards and Technology.
  • .PPS.- часы Pulse per second.
  • .PTB.- Physikalisch-Technische Bundesanstalt от Brunswick и Berlin, Germany.
  • .RATE.- превышен порог опроса NTP.
  • .STEP.- изменение шага NTP. Смещение offset менее 1000 миллисекунд, но более 125 миллисекунд.
  • .TDF.- LF radio receiver от станции TéléDiffusion de France в Allouis, France.
  • .TIME.- NTP association timeout.
  • .USNO.- United States Naval Observatory.
  • .WWV.- HF radio receiver от станции WWV в Fort Collins, Colorado, United States.
  • .WWVB.- LF radio receiver от станции WWVB в Fort Collins, Colorado, United States.
  • .WWVH.- HF radio receiver от станции WWVH в Kekaha, на острове Kauai на Hawaii, United States.

Рекомендации для клиента серверов времени.

Во-первых, избавьтесь от мысли как бы получить время от stratum 1, дескать они ближе всех к точному времени. Они то ближе к точнейшему времени на планете, только сами они перегружены и у них высокие задержки RTT для обычных серверов. Лучше найти нормальный stratum 2 и не переживать по этому поводу. Не забывайте, что речь идёт о микросекундах и миллисекундах, что в обычной жизни — вполне достаточно.

Во-вторых, помните, что подключение к ближайшему серверу времени не всегда идеальный вариант. Важнее не территориальная близость, а уровень stratum. Проект NTP Pool публикует список серверов только уровня stratum 1 и stratum 2 и лучше взять до 10 серверов времени из данного списка, что будет просто замечательно.

В-третьих, если вы простой домашний пользователь-клиент, то рекомендованные вам сервера в вашей операционной системе будут идеальным вариантом, не требующим лишних телодвижений.

Для крупных контор, лучшим вариантом будет поднятие своего сервера времени для рабочих компьютеров. Данный сервер будет получать точное время от серверов времени в Интернете и предоставлять его локальным компьютерам. На серверах Debian и Ubuntu достаточно раскомментировать строку

в конфигурационном файле демона ntpd — /etc/ntp.conf

Пользователи из сети 192.168/16 будут иметь возможность брать с вашего сервера показания точнейших часов. Для внутренних серверов на базе Linux, которые не являются серверами времени и занимаются своими задачами, вместо запуска демона ntpd в клиентском режиме — вполне достаточно указать в файле /etc/cron.daily/syncntpd

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

В-четвёртых, NTP никак не связан, в какой стране и какие часовые пояса используются и как происходит переход на летнее и зимнее время и делается ли в данной стране такой переход. Это обязанность лежит на операционной системе, которую вам нужно обновлять, если в стране происходят изменения в «часовых» делах. В системах Debian и Ubuntu за это отвечает пакет tzdata, который должен быть актуальным.

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

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector