CentOS下NTP时间服务器的架设和Windows客户端的配置(三)Windows客户端配置
在 Windows 操作系统上远程连接到运行 NTP 服务的 Linux 服务器时,用户经常会遇到同步失败的问题。“在 Windows 同步时发生一个错误”或“Windows 在与 192.168.3.18 进行同步时出错”等提示信息表明网络连接存在问题。起初我也遇到了类似情况,在 WinXP、Win2003、Win7 和 Win2008 等多个版本的 Windows 系统中都曾出现过此问题,并且多台机器中大部分会遇到此类问题(只有少数几台能够正常连接)。
这个困扰我多日的问题,在多方查阅资料后发现主要集中在Linux服务器配置层面。尽管我反复修改ntp.conf文件并重启ntp服务多次尝试更换操作系统 CentOS 系统等方法但仍未能解决问题
今天的运气相当不错。我借助网络搜索度娘(百度),成功获取到了一篇微软官网的相关资料,并最终完美地解决了问题。
在 Windows Server 2003 环境中尝试建立与非 Windows NTP 服务器之间的连接时(即无法实现基于网络的时间同步),系统可能会报告无法正常完成时间同步操作(即出现错误信息)。
文章指出,在使用对称主动模式发送同步请求时,在与非 Windows NTP 服务器同步时可能会存在问题。建议采用客户端对等模式发送同步请求,并提出相应的解决方案:通过四个简单的 DOS 命令来更改和重启 Windows Time 服务。
本人收集了多篇文章,并对其中涉及注册表的信息进行了详细研究。本人开发了一个专门针对Windows环境的应用程序。建议所有用户创建名为TimeServer.bat的空白批处理文件,并将以下代码粘贴并保存在此文件中。双击运行后即可完成设置。
rem 设置本批处理文件命令文件所在的文件夹
set path=%SystemRoot%;%SystemRoot%\system32
rem 修改注册表项
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DataTime\Servers" /v "0" /t REG_SZ /d "192.168.3.18" /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient /v "Enabled" /t REG_DWORD /d "0x00000001" /f
rem 修改为客户端模式后重新同步
w32tm /config /manualpeerlist:192.168.3.18,0x8 /syncfromflags:MANUAL
net stop w32time
net start w32time
w32tm /resync
rem 将Windows Time服务设置成随系统自动启动
sc config w32time start= auto
上述代码中,
第7行用于显示上级NTP服务器的地址,在时间同步界面中位于第一行,并且便于下次手动同步
第9行是用于启用NTP官户端程序。
第13行是修改系统原来的主动模式为客户模式
第23要注意,在auto前面有一个空格,如果没有那个空格,命令执行会失败。
当批处理文件运行完成后,系统会在运行后自动完成一次同步。之后每隔一段时间就会再次同步。如果有若干台Windows设备需要与前面的NTP服务器同步,则只需将此批处理脚本复制到这些设备上并双击启动即可。
若要手动完成时间同步操作,则可通过以下方式实现:首先在Windows 7或Windows 2008及以上版本系统中单击屏幕右下角的时间显示区域;而在Windows XP、Windows 2000以及Windows 2003系统版本中则需双击该区域。随后在弹出的时间同步设置对话框中找到"internet时间"一页,并单击上级NTP服务器按钮;最后点击"立即更新"按钮即可完成设置。

在CentOS操作系统中完成NTP时间服务器的搭建,并与Windows客户端进行相互配合(一)Linux服务器配置
在CentOS环境下搭建NTP时间服务器与Windows终端用户配置(二)Linux终端用户的配置
注
