Почему часы моего компьютера, контролируемые NTP, на две минуты впереди?

9

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

У меня также есть GPS, и моя национальная телефонная компания предоставляет точные часы, позвонив по определенному номеру телефона. И мой GPS, и телефонная компания согласны с текущим временем. Однако мой компьютер почти на две минуты (или 1 минуту и ​​59 секунд) опережает то, что я считаю «настоящим» текущим временем, в котором я живу.

Почему мой компьютер на две минуты впереди? Я понимаю, что синхронизация часов с использованием Интернета может быть не совсем точной, поскольку существует задержка, но две минуты - это очень много времени в Интернете. Действительно ли NTP на две минуты впереди? Я использую Windows 7 и живу в часовом поясе UTC + 1, но я не думаю, что это важно для понимания моей проблемы.

Мартин Ливерсэйдж
источник
1
Итак, вы считаете, что ваш GPS и телефон работают в режиме реального времени, но ваш компьютер выключен на 2 минуты? Я бы хотел сделать противоположный вывод.
Квик-кихот
3
Мой GPS получает информацию со спутников, и я предполагаю, что информация очень точная. Телефонная служба очень точна и может считаться чем-то вроде «национальных» часов. Я понимаю, что при использовании телефона может быть некоторая задержка, но задержка в две минуты сделает разговор невозможным.
Мартин Ливерсэйдж
1
Какая служба времени вы используете, встроенная служба времени Windows или что-то еще?
Зоредаче
2
Виртуальные машины обычно не могут правильно хранить время, поэтому они предоставляют службы синхронизации хоста. Лучшее решение состоит в том, чтобы правильно настроить службу NTP в хост-системе контроллера виртуального домена и оставить включенной синхронизацию времени гостя и гостя.
шарлатан-кихот
1
Поскольку ваше решение не соответствует ни одному из ответов, я бы предложил добавить его в качестве ответа на ваш вопрос, а затем принять его как правильный. Рекомендуется отвечать на ваши собственные вопросы - особенно по таким полезным вопросам, как этот.
Эмори Белл

Ответы:

15

Время GPS не совпадает с временем UTC, оно очень близко.

GPS является очень точным источником для определения разницы во времени, но, поскольку он не учитывает високосные секунды, он фактически не синхронизирован с UTC с января 1980 года. Однако впереди всего 15 секунд, так что это не так. т учесть вашу разницу в 2 минуты.

Если ваши другие источники времени основаны на международном стандарте атомных часов (TAI, Temps Atomique International), то они также не установлены в UTC, не потому что они неточные, а скорее потому, что UTC неточен по сравнению. Они не учитывают високосные секунды, и их время основано на тиках стандарта SI «секунда», а не на вращении / орбите Земли, как UTC. Они примерно на 34 секунды опережают UTC. Все еще не учитывает вашу разницу.

Смотрите здесь http://leapsecond.com/java/gpsclock.htm или здесь http://en.wikipedia.org/wiki/Global_Position_System#Timekeeping для получения дополнительной информации.

GAThrawn
источник
1
Я собирался добавить это как комментарий, а не как ответ, так как он на самом деле не отвечает вашей основной проблеме, но это немного
затянуло
1
GAThrawn, статья / раздел Википедии, на которую вы ссылались, заставляет меня поверить, что большинство GPS-приемников знают разницу между временем GPS и UTC и отображают UTC. Доверие пользователя было бы серьезно подорвано, если бы часы GPS-приемника были «постоянно выключены на 15 секунд» (как средний пользователь мог бы воспринимать ситуацию).
Spiff
1
@Spiff true, потребительские GPS-устройства знают разницу во времени, которую нужно применить перед отображением для пользователя, я думаю, что они делают это одновременно с применением любых разностей часовых поясов. Но это то, что устройство должно быть запрограммировано производителем, это не входит в спецификацию GPS. Я могу представить сценарии, в которых устройства, не предназначенные специально для потребителей, будут отображать фактическое время GPS, а не исправленное.
GAThrawn
13

К сожалению, я допустил некоторые ошибки, когда разместил свой вопрос. Я хотел обойти службу NTP моего компьютера, чтобы обеспечить независимый источник информации о времени в Интернете, и использовал две простые утилиты для этого. Я полагал, что эти утилиты получали информацию о времени из Интернета, используя NTP, когда они фактически отображали (неправильное) местное время на моем компьютере.

В моем начальном вопросе было довольно расплывчато о том, как NTP использовался моим компьютером. Он является частью домена Active Directory, и время синхронизируется с контроллером домена. Я проверил, что конфигурация была в порядке, но я пропустил небольшую деталь.

Решение

Контроллер домена работал на виртуальной машине Hyper-V. Служба времени Windows на контроллере домена была правильно настроена для использования NTP, но на виртуальной машине Hyper-V были включены все службы интеграции, включая синхронизацию времени . Этот параметр всегда будет синхронизировать время на виртуальной машине с хостом Hyper-V, даже если вы устанавливаете часы вручную или через NTP.

Решением было просто отключить эту конкретную службу интеграции в диспетчере Hyper-V для виртуальной машины контроллера домена. Перезапуск службы времени Windows сразу исправил время на контроллере домена и впоследствии на моем компьютере.

Мартин Ливерсэйдж
источник
6

Если вы отключите NTP, установите неправильные часы вашего компьютера на несколько минут (возможно, на 2 минуты медленнее, а не на 2 минуты вперед), а затем снова включите NTP, будет ли он работать на 2 минуты медленнее или вернетесь на 2 минуты вперед?

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

Было бы интересно увидеть трассировки пакетов, показывающие ваши NTP-поиски. Например, tcpdump «port 123» с установленными опциями «-v» и «-s0» должен показать то, что вам нужно знать.

Spiff
источник
Когда у меня будет больше времени, я сделаю еще один анализ. Сначала я полагал, что проблема была с NTP в моей локальной сети, но я использовал два NTP-клиента, которые не влияют на часы моего компьютера, а просто отображают время с NTP-сервера, и эти два клиента отображают точно такое же время, как время на моем компьютере. Это может быть проблема с преобразованием времени в местное время, но почему это добавило бы две минуты? Я буду исследовать дальше, используя некоторые ваши идеи.
Мартин Ливерсэйдж
4

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

большой нос
источник
0

Я не технический, но вкратце, все, что вы можете сделать, это: 1) Перейти к настройке даты и времени 2) Перейти в Интернет Время в верхней части окна 3) Изменить настройку 4) Обновить сейчас

Он сам себя наладит

user1085958
источник