我正在尝试将一台机器与另一台机器进行 ntp 同步。两者都运行 Debian lenny,我在两者中都安装了 ntp 包。我通过放置将服务器配置为与外部机器同步
server IP.ADDRESS iburst
Run Code Online (Sandbox Code Playgroud)
在它的 /etc/ntp.conf 文件中。
我将客户端配置为与服务器同步,只将服务器放在客户端的 /etc/ntp.conf 中。
然而,它们似乎并不同步。ntpq 显示状态是 INIT,根据文档,它表明“关联尚未第一次同步”
# ntpq -n
ntpq> pe
remote refid st t when poll reach delay offset jitter
==============================================================================
10.99.84.134 .INIT. 16 u 665 1024 0 0.000 0.000 0.000
Run Code Online (Sandbox Code Playgroud)
ntpq -> 如在条件行中显示“拒绝”:
# ntpq
ntpq> as
ind assID status conf reach auth condition last_event cnt
===========================================================
1 40102 8000 yes yes none reject
Run Code Online (Sandbox Code Playgroud)
知道如何解决这个问题吗?(我宁愿不使用 ntpdate)。
使用w32tm.exe的选项stripchart来判断两台主机的时间差异是否可行(在很小的误差范围内)?请注意,w32tm.exe的stripchart功能与Windows Time服务本身使用的算法是分开的。
如果没有,有哪些替代方法?
谢谢,
马特
环境:
您认为使用 AD 控制器作为来宾的时间同步 hyper-v 场的最佳方法是什么?我有 2 个计划 :)
Hyper-V 服务器的最佳时间源是什么?
方案一
计划 2(我正在考虑实施这个计划,因为管理程序层将独立于来宾 PDC)
也许有人有一个不错的选择 3?
出于教育目的,我想追踪 NTP 服务器链,例如 0.de.pool.ntp.org 回到第 1 层 NTP 服务器。我怎样才能做到这一点?
我找到了 ntptrace,但它不起作用:
/home/xyzdragon# ntptrace
localhost: stratum 2, offset -0.009285, synch distance 0.010221
192.53.103.104: timed out, nothing received
***Request timed out
Run Code Online (Sandbox Code Playgroud)
我尝试/usr/bin/ntptrace通过手动重现该 Perl 脚本的步骤进行调试:
home/xyzdragon# ntpq -n
ntpq> pe
remote refid st t when poll reach delay offset jitter
==============================================================================
+78.47.249.19 56.1.129.236 3 - 129 128 376 27.339 14.405 12.857
ntpq> host 78.47.249.19
current host set to 78.47.249.19
ntpq> pe
78.47.249.19: timed out, nothing received
***Request timed out
Run Code Online (Sandbox Code Playgroud)
其实ntptrace …
在混合环境中,机器可以在 Windows(大多数)、Linux(少数)、有时在 Android 下运行......以接近毫秒的精度进行时间同步的最佳解决方案是什么?
我们正在开发基于微服务的解决方案,其中服务分散在我们设置中的多台机器上。在很多情况下,整合它们之间的信息(日志、监控等)需要一个共同的时基。
在 Windows 下使用 NTP 似乎有其局限性。任何可以在该操作系统上运行的开源解决方案?我们不能保证在我们的设置中总会有一台 Linux 机器。
我们有一些主机由于ntpd配置错误而失去同步,ntp 服务器无法访问。我们在某些主机 (CentOS 6) 上的时钟现在已经超过 30 秒了(在未来,大多数主机似乎如此)。
从文档看来ntpd,我们可用的最快同步就在附近500us/s- 有没有办法增加它,以便时钟更新得更快,但不是立即更新?例如,我们希望将此设置为类似100ms/s.
这可能吗?如果是这样,我们如何才能安全地做到这一点?
危险吗?
我们的系统监控有时会通知我 ntpd 中的偏移量过高。发出 ntpdate 时,它显示没有。由于ntpd调整时间很慢,它似乎“认为”有一个需要调整的偏移量。但是 ntpdate 不应该也显示这个偏移量吗?我有什么误解?
这是在 NTP 服务器不久不可用并且似乎重新启动之后发生的,它返回时的偏移量接近 20 秒并且 NTP 调整缓慢,所以基本上它只是做了它的设计。但是为什么一直ntpdate -q说没有offset呢?
# ntpq -p && echo '###' && ntpdate -q 123.123.123.123
remote refid st t when poll reach delay offset jitter
==============================================================================
*nt0 10.123.123.123 2 u 48 64 377 0.181 209.956 8.334
###
server 10.123.123.123, stratum 1, offset 0.207451, delay 0.04231
1 Dec 10:45:28 ntpdate[19895]: adjust time server 10.123.123.123 offset 0.207451 sec
Run Code Online (Sandbox Code Playgroud)
当我比较两个不同系统的输出时,一个有偏移,一个没有,发布echo +%H:%M:%S-%N表明 ntpd 是正确的,而不是 ntpdate。但为什么?
我最近将我的公司迁移到 Active Directory。随之而来的默认设置将强制启用时间同步。
问题是,有些用户为了测试目的需要更改他们的日期时间设置,但自动同步会恢复实际时间值。禁用时间同步的选项呈灰色显示。有问题的用户是受信任的,并且是他计算机上本地管理员组的成员。
我试图找到一种方法让用户随意启用和禁用此设置,但我只找到了全局启用/禁用。
我想知道是否可以将此设置(启用/禁用时间同步)留给用户自行决定。
谢谢大家
EDIT更多精度:用户具有修改系统时间(以GPO定义-瑞)的权利。用户是能够改变的时候,只有它会自动在几分钟后又变回。我希望禁用这种行为。禁用 Windows 时间服务 (w32time) 没有帮助。
我有一个运行多个 Linux 机器的虚拟环境,我正在计划如何管理所有的 ntp 架构。
据我所知,在 'ntp.conf' 文件中有两台服务器是没有用的,客户端应该只有一个或三个以上的 ntp 服务器,所以,我的第一种方法是让一个服务器 'server1' 指向4 台公共服务器,特别是 RHEL 的服务器,然后让其他盒子“server2”指向 server1,下面所有其他 Linux 服务器都指向 server2,但我观察到了这种架构的奇怪行为。我见过一些服务器在 server2 和它们之间不同步,甚至有时 server1 和 server2 没有完全同步。
我的第一个问题是,为什么会这样?
然后我想出了另一种架构,该架构具有相同的 server1 指向公共 ntp 服务器,然后有三个服务器,'server2'、'server3' 和 'server4' 指向 server1,下面的所有其他机器都指向 server2-4。
这种架构是否有可能改善我所有网络内的同步?
还是同步之间的性能相同?
构建它的最佳方法是什么?
已编辑
这是ntpq -p来自 server1的输出:
remote refid st t when poll reach delay offset jitter
=========================================================================
*Time100.Stupi. .PPS. 1 u 317 1024 377 182.786 5.327 3.022
LOCAL(0) .LOCL. 10 l 46h 64 0 0.000 0.000 0.000
Run Code Online (Sandbox Code Playgroud)
这里是ntp.conf:
# …Run Code Online (Sandbox Code Playgroud)