我需要创建一个应用程序来验证每台机器上的 NTP 时间同步。换句话说,我需要确定我的局域网中的每台机器是否同步到一个公共时间服务器(stratum)。所以,到目前为止,我想出了两种方法。
1) 让每台机器上的 NTP 客户端生成统计文件。如果我采用这种方法,我应该检查哪个统计文件以确定机器上的时间是否在时间服务器的某个容差范围内?有peerstats、clockstats和loopstats。这些文件中是否包含我可以用来确定时间是否同步的信息?
2) 调用 ntpq 命令行参数并通过管道输出。解析输出。
现在我更喜欢选项 1,但是,正如我所指出的,我不确定是否有任何 NTP 统计文件包含我可以用来确定时间是否同步的信息。
有没有更好的方法。
是否有可以用来直接查询 NTP 客户端的 API?
谢谢你的帮助。