Windows NTP 客户端未与我的 ESXi NTP 服务器同步

Windows NTP 客户端未与我的 ESXi NTP 服务器同步

我有一台配置为 NTP 服务器的 ESXi 5.1 服务器和一台未同步的本地 Windows Server 2008 R2 PC。我读到,每当 ESXi 服务器作为客户端运行时,它也会充当服务器,因此我将其启用为 NTP 客户端,并且只是在服务器列表中不添加任何服务器,然后我通过从 ESXi Shell 添加防火墙设置来启用端口 123 传入/传出。

我几乎可以肯定这不是防火墙问题。我已经完全禁用了本地 PC 上的防火墙。运行“w32tm /monitor /computers:-IP of server-”可以得到服务器的时间,运行 NTPQuery 软件可以在端口 123 上得到带有服务器时间的响应。

我努力了:

  • 日期/时间设置(右键单击通知区域-->调整日期/时间-->Internet 时间-->设置为服务器的 IP)--同步失败(Windows 与 -服务器的 IP- 同步时发生错误
  • 组策略编辑器(计算机配置\管理模板\系统\Windows 时间服务,目前已禁用,因为我听说这会导致问题)——同步失败
  • 注册表编辑器 (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\W32Time\settings)——同步失败
  • 命令提示符, 使用:

w32tm /config /manualpeerlist:-IP of server- /syncfromflags:MANUAL /reliable:yes /update
net stop w32time && net start w32time
w32tm /resync /rediscover

这会正确更新注册表,但输出“计算机未重新同步,因为没有可用的时间数据。”每当我使用命令“w32tm /query /source”时,源始终是“本地 CMOS 时钟”。

以下是 w32tm /query /configuration 的输出

[Configuration]

EventLogFlags: 2 (Local)
AnnounceFlags: 5 (Local)
TimeJumpAuditOffset: 28800 (Local)
MinPollInterval: 10 (Local)
MaxPollInterval: 15 (Local)
MaxNegPhaseCorrection: 3600 (Local)
MaxPosPhaseCorrection: 3600 (Local)
MaxAllowedPhaseOffset: 1 (Local)

FrequencyCorrectRate: 4 (Local)
PollAdjustFactor: 5 (Local)
LargePhaseOffset: 50000000 (Local)
SpikeWatchPeriod: 900 (Local)
LocalClockDispersion: 10 (Local)
HoldPeriod: 5 (Local)
PhaseCorrectRate: 1 (Local)
UpdateInterval: 360000 (Local)


[TimeProviders]

NtpClient (Local)
DllName: C:\windows\system32\w32time.dll (Loca
Enabled: 1 (Local)
InputProvider: 1 (Local)
AllowNonstandardModeCombinations: 1 (Local)
ResolvePeerBackoffMinutes: 15 (Local)
ResolvePeerBackoffMaxTimes: 7 (Local)
CompatibilityFlags: 2147483648 (Local)
EventLogFlags: 1 (Local)
LargeSampleSkew: 3 (Local)
SpecialPollInterval: 900 (Local)
Type: NTP (Local)
NtpServer: -IP of server-,0x1 (Local)

NtpServer (Local)
DllName: C:\windows\system32\w32time.dll (Loca
Enabled: 1 (Local)
InputProvider: 0 (Local)
AllowNonstandardModeCombinations: 1 (Local)

有什么想法吗?提前致谢。

答案1

我找到了答案。我必须将上游服务器设置为自己的时钟,IP 地址为 127.127.1.0,以使我的服务器的时钟同步。

ESXi 服务器的回复显示跳跃指示器为 3,服务器层为 0。这意味着 ESXi NTP 服务器运行不同步,无法向客户端提供有效的参考时间。根据 RFC 4330,如果返回的层为 0(且跳跃指示器为 3),则简单 NTP (SNTP) 客户端不应使用 NTP 回复数据包中的时间。

相关内容