为什么我的 NTP 控制的计算机时钟提前两分钟?

Mar*_*age 9 sync clock date-time ntp

我的计算机中的时钟配置为使用 NTP 同步。为了验证这一点,我尝试了两个使用各种 NTP 服务器的 NTP 客户端。我的计算机和 NTP 客户端在当前时间上完全一致,即使在范围广泛的 NTP 服务器上也是如此。

我还有一个 GPS,我的国家电话公司通过拨打特定的电话号码提供准确的时钟。我的 GPS 和电话公司都同意当前时间。但是,我的计算机几乎比我认为的我居住的“真实”当前时间早了两分钟(或 1 分 59 秒)。

为什么我的电脑提前两分钟?我意识到使用互联网同步时钟可能不完全准确,因为存在延迟,但两分钟在互联网上是很长的时间。NTP真的提前两分钟吗?我正在运行 Windows 7 并生活在 UTC+1 时区,但我认为这对于理解我的问题并不重要。

GAT*_*awn 15

GPS 时间与 UTC 时间不同,只是非常接近。

就时差而言,GPS 是一个非常准确的来源,但由于它没有考虑闰秒,因此自 1980 年 1 月以来它实际上并没有与 UTC 同步。但是它只提前了大约 15 秒,所以没有t 考虑到您的 2 分钟差异。

如果您的其他时间源基于国际原子钟标准(TAI、Temps Atomique International),那么它们也未设置为 UTC,不是因为它们不准确,而是因为 UTC 相比之下不准确。它们不考虑闰秒,它们的时间基于 SI 标准“秒”的刻度,而不是像 UTC 那样基于地球的自转/轨道。它们比 UTC 快 34 秒。仍然没有考虑到您的差异。

请参阅此处http://leapsecond.com/java/gpsclock.htm或此处http://en.wikipedia.org/wiki/Global_Positioning_System#Timekeeping了解更多信息。

  • 打算将此添加为评论,而不是答案,因为它并没有真正回答您的主要问题,但是评论系统有点长 (2认同)
  • GAThrawn,您链接的维基百科文章/部分让我相信大多数 GPS 接收器都知道 GPS 时间和 UTC 之间的差异,并显示 UTC。如果 GPS 接收器的时钟“持续偏差 15 秒”(正如普通用户可能感知到的情况),用户信心将受到严重损害。 (2认同)

Mar*_*age 13

不幸的是,我在发布问题时犯了一些错误。我想绕过我计算机的 NTP 服务来提供独立的互联网时间信息来源,并为此使用了两个简单的实用程序。我相信这些实用程序是使用 NTP 从 Internet 获取时间信息,而实际上它们在我的计算机上显示(错误的)本地时间。

我最初的问题是关于我的计算机如何使用 NTP 的问题相当模糊。它是 Active Directory 域的一部分,时间从域控制器同步。我已经验证配置没问题,但我忽略了一个小细节。

解决方案

域控制器在 Hyper-V 虚拟机中运行。域控制器上的 Windows 时间服务已正确配置为使用 NTP,但 Hyper-V 虚拟机启用了所有集成服务,包括时间同步。即使您手动或通过 NTP 设置时钟,此设置也将始终使虚拟机上的时间与 Hyper-V 主机同步。

解决方案只是在域控制器虚拟机的 Hyper-V 管理器中禁用该特定集成服务。重新启动 Windows 时间服务立即更正了域控制器上的时间,随后更正了我的计算机上的时间。


Spi*_*iff 6

如果禁用 NTP,请将计算机的时钟设置错误几分钟(可能慢 2 分钟而不是提前 2 分钟),然后重新启用 NTP,它会保持慢 2 分钟,还是回到提前 2 分钟?

我问是因为我以前见过 NTP 软件静默失败,所以虽然看起来 NTP 软件已启用,即使我有数据包跟踪显示 NTP 查询发送到服务器并且响应返回,但我的系统时钟仍然没有设置为时间服务器所说的内容。

看到显示 NTP 查找的数据包跟踪会很有趣。例如,带有“-v”和“-s0”选项集的“端口 123”的 tcpdump 应该显示您需要知道的内容。