用Windows Server 2008搭建时钟同步服务器

avatar 2020年1月21日11:13:18 评论 153

概述:

本文主要讲解如何通过Windows Server 2008搭建自己的时钟同步服务器,保证系统中各个服务器的时钟同步。

背景:

在上周五“博客无双”活动的奖品拍卖过程中,由于Web服务器与数据库服务器的时钟不同步,造成竞拍结果引起争议。最后5秒内出价的一位朋友,数据库记录的出价时间超出了拍卖结束时间。这个程序造成的问题,完全是我们的责任,我们将给那位最后出价者补偿一部WP7手机。给我们的教训是,技术上不能有丝毫疏忽。现在我们已经解决了服务器时钟同步问题,在这里将解决方法分享给大家。

时钟同步功能简介:

在Windows系统中,时钟同步是通过Windows Time服务(W32Time)完成的。W32Time通过NTP(Network Time Protocol)协议访问目标时钟同步服务器的123端口进行时间同步。服务器的地址可以在“时间与日期”设置窗口的“Internet Time” 选项中进行设置。Windows默认提供了几个互联网上的时钟同步服务器地址,比如:time.windows.com,你电脑上的时钟同步就是W32Time通过访问这里预设的服务器地址进行的。默认的时间间隔是7天。

你也许会问,既然Windows默认提供了时钟同步,那博客园服务器怎么会出现时间不同步的情况。这是因为我们的数据库服务器与互联网没有直接连接,无法访问预设的时钟同步服务器。所以,我们的解决方法就是搭配自己的时钟同步服务器,其他服务器都与这台服务器进行时钟同步。

配置步骤:

——服务器端配置——

1. 选择一台服务器作为时间同步服务器。

2. 运行Regedit,打开注册表编辑器。

3. 找到注册表项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\,在右侧窗口中将AnnounceFlags的值修改为5。

4. 继续找到注册表项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer\,在右侧窗口中将Enabled的值修改为1。

5. 在命令行中输入”net stop w32time && net start w32time“重启W32Time服务。

6. 修改Windows防火墙设置,允许123端口的UDP连接。

——客户端配置——

1. 设置目标服务器地址:

打开修改日期与时间的窗口,进入“Internet Time” 选项,输入时钟同步服务器的网址或IP地址,如下图:

w32time

然后点击同步按钮,配置没问题的话,就会显示同步成功,如下图:

w32time2

2. 设置同步时间间隔:

默认的同步时间间隔是7天,实在是太久了,可以修改为你想要的同步时间间隔。

在客户端电脑上打开注册表编辑器,找到注册表项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient,在右侧窗口中找到SpecialPollInterval,打开修改窗口,选择十进制,输入同步时间间隔即可(单位为秒)。如下图:

未命名-3

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: