通过 NTP 将本地时间传播到 LAN

通过 NTP 将本地时间传播到 LAN

我已经将我的 L3 交换机与外部时间服务器同步,一切正常。但是我在欧洲,我们有 CET/CEST 交换,我从配置的时间服务器获取 UTC。我确实在交换机中设置了时区和夏令时(使用“显示时钟”时显示正确时间),但我的交换机将 NTP(UTC)时间传播到我的 LAN。(我知道这是正常操作)

我的问题是,我可以使用 NTP 将本地 (CET/CEST) 时间传播到我的 LAN 客户端吗,或者还有其他方法可以做到这一点?我的问题是我无法在客户端上设置 CET/CEST 切换,它们不支持此功能。(我的 LAN 中有 PLC,它们只能进行 GMT 设置)

对此有什么解决方案吗,或者我必须使用单独的时间源?

非常感谢!

答案1

我可以使用 NTP 将本地(CET/CEST)时间传播到我的 LAN 客户端吗?或者还有其他方法可以做到这一点?

不,NTP 不行。NTP 根本没有本地时间的概念,都是 UTC。所有数据包包含是一个纪元中带有秒和秒的分数的几个时间戳。

不要尝试配置“错误”偏移 NTP 服务器来执行本地时区偏移。我从未见过这样做,它使良好的稳健 NTP 配置变得困难。

通用计算机具有(并保持更新)一个 tz 数据库,这样它们就可以进行配置Europe/Berlin并具有正确的本地时间,即使规则发生变化。

坚固、嵌入式或其他愚蠢的计算机可能没有 tzdata 包,或者没有更新它的方法,或者没有合理的时间和日期软件。几乎可以肯定,您的 PLC 缺少其中的一些。关于如何将时间同步到控制器的知识库文章缺少有关所有内容所采用的格式或时区的详细信息,这并不能增强我对内部存在具有时区偏移的合理 UTC 时钟的信心。

不幸的是,您的选择可能仅限于将数据导出到具有全功能时钟的系统,永远将其保留在 UTC,或者在每年修复偏移量时诅咒夏令时。

答案2

当然你可以通过 NTP 传播任何时区的时间,你只需要确保

  • 您的 LAN 上将只有一个时间源,以减轻您的客户端收到冲突的时间戳消息并来回切换的危险
  • 您的时间源将广播您想要的时区的时间

换句话说:如果您的 LAN 中的时间源是 L3 交换机,则该设备要么具有“翻译”NTP 客户端时区的设置,要么没有。如果您的 L3 交换机不具备此功能,则您需要一个具有此功能的其他时间源。

答案3

正如其他人所说,不要试图让 NTP 做除 UTC 之外的任何事情,这是一个坏主意。DST 在 SCADA 系统中通常以几种不同的方式处理,有些全年运行冬令时,有些全年运行 UTC,有些对现场设备使用不同的同步机制,通过控制协议(例如 IEC-104)同步时间。我建议与 Omron 的支持人员交谈,他们可能会给你最快的答案,告诉你如何处理这个问题。

相关内容