- 将当前计算机配置为客户端,从互联网上同步时间(最常见的需求)。
- 将当前计算机配置为内部网络的时间服务器,为其他设备提供时间同步(企业级或局域网需求)。
下面我将详细介绍这两种情况的操作步骤。

配置 Windows 客户端同步时间(默认情况)
绝大多数情况下,你只需要确保你的 Windows 电脑能自动同步时间即可,Windows 默认已经开启了这个功能,但我们可以手动检查和优化配置。
检查和手动同步时间(图形界面)
这是最简单直接的方法。
- 打开设置:点击“开始”菜单,选择“设置”(齿轮图标)。
- 进入时间和语言:在设置窗口中,选择“时间和语言”。
- 调整日期和时间:
- 确保“自动设置时间”的开关是 开启 状态。
- 确保“自动设置时区”的开关是 开启 状态。
- 立即同步:
- 点击“其他日期、时间和区域设置”。
- 在弹出的“控制面板”窗口中,点击“日期和时间”。
- 在“日期和时间”窗口中,切换到“Internet 时间”选项卡。
- 点击“更改设置...”按钮(可能需要管理员权限)。
- 点击“立即更新”按钮,手动同步一次时间。
- (可选)点击“更改设置...”后,可以在“服务器”下拉框中选择一个更可靠的时间服务器,
time.windows.com(微软官方)time.nist.gov(美国国家标准与技术研究院)pool.ntp.org(公共NTP服务器池,推荐)
- 点击“确定”保存。
检查和配置时间服务(命令行)
对于需要更精细控制的管理员,可以使用命令提示符(CMD)或 PowerShell。
-
以管理员身份运行命令提示符:在开始菜单搜索
cmd,右键点击“命令提示符”,选择“以管理员身份运行”。
(图片来源网络,侵删) -
检查 Windows 时间服务状态:
w32tm /query /status
- 如果服务正在运行,你会看到类似
源: time.windows.com, 级别: Sync, 精度: 64ms, 滞后: 100ms, 标志: 0x0 (0)的输出。
- 如果服务正在运行,你会看到类似
-
查看时间服务配置:
w32tm /query /configuration
这会显示当前的时间服务配置,包括同步间隔、最大误差等。
-
手动同步时间:
(图片来源网络,侵删)w32tm /resync
这会强制计算机立即与配置的时间源进行同步。
-
更改时间源:
w32tm /config /syncfromflags:manual /manualpeerlist:"time.nist.gov,0x8"
syncfromflags:manual:表示手动指定时间源。manualpeerlist:"...":指定一个或多个时间服务器地址,多个服务器用逗号分隔,0x8表示该服务器是可靠源。- 执行后需要重启时间服务使配置生效:
w32tm /resync /force
或者
net stop w32time && net start w32time
将 Windows 配置为局域网内的时间服务器
如果你想在局域网内(例如公司、家庭网络)搭建一台权威的时间服务器,让其他电脑、手机、路由器等都从它同步时间,可以按照以下步骤操作。
前提条件
- 一台稳定运行的 Windows 服务器或专业版/企业版 Windows。
- 该计算机的系统时间本身必须非常准确(建议先从互联网同步好)。
- 在 Windows 防火墙中开放 NTP 服务的 UDP 123 端口。
操作步骤
第1步:配置 Windows 时间服务为“NTP 服务器”
-
以管理员身份运行 PowerShell 或 CMD。
-
修改注册表配置: 这是核心步骤,需要将 Windows 时间服务从“客户端模式”切换到“服务器/混合模式”。
打开注册表编辑器 (
regedit),导航到以下路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config在右侧窗格中,找到并修改以下两个值(如果不存在,需要新建):
-
AnnounceFlags- 作用:控制计算机是否将自己宣布为时间源。
- 修改方法:双击
AnnounceFlags,将其“基数”选择为“十六进制”,然后修改“值数据”。0x5:适用于域环境,表示此计算机是可靠的时间源,可以被域内客户端同步。0xA:适用于工作组环境,强制此计算机成为可靠的时间源,可以被所有客户端同步(推荐)。0x0:客户端模式,不作为时间源。
-
MaxPosPhaseCorrection和MaxNegPhaseCorrection- 作用:定义了时间服务在一次同步中允许的最大时间调整量(以秒为单位),如果时间差超过这个值,服务会拒绝同步并记录事件日志。
- 修改方法:为了确保服务器能被同步,可以将这两个值都设置为一个较大的数,
3600(1小时),或者直接删除这两个键,让系统使用默认值。
示例:我们将其配置为工作组环境下的时间服务器。
- 将
AnnounceFlags的值修改为a。 - 确保
MaxPosPhaseCorrection和MaxNegPhaseCorrection的值足够大或不存在。
-
第2步:配置时间同步方式
现在需要告诉这台服务器它自己的时间源是谁(通常还是互联网),以及如何向客户端提供时间。
-
打开注册表编辑器,导航到:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer -
修改
Enabled值:- 双击
Enabled,将“值数据”从0改为1,然后点击“确定”,这表示启用 NTP 服务器功能。
- 双击
-
(可选但推荐)修改
Enabled的基数:- 双击
Enabled,将“基数”从“十六进制”改为“十进制”,确保“值数据”显示为1。
- 双击
第3步:配置客户端模式
为了让这台服务器本身能保持准确的时间,需要配置它作为客户端从外部同步。
-
打开注册表编辑器,导航到:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config -
修改
LocalClockDispersion值:- 双击
LocalClockDispersion,将“值数据”修改为0,这个值表示本地时钟的离散度(或称误差),数值越小表示时钟越可靠。
- 双击
-
打开注册表编辑器,导航到:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters -
修改
Type值:- 双击
Type,将“值数据”修改为NTP,这指定了此计算机的运行模式。
- 双击
第4步:在防火墙中允许入站连接
为了让其他设备能访问你的时间服务器,必须开放 UDP 123 端口。
- 打开“控制面板” -> “Windows Defender 防火墙” -> “高级设置”。
- 在左侧点击“入站规则”。
- 在右侧点击“新建规则...”。
- 选择“端口”,点击“下一步”。
- 选择“UDP”,在“特定本地端口”中输入
123,点击“下一步”。 - 选择“允许连接”,点击“下一步”。
- 勾选“域”、“专用”、“公用”(根据你的网络环境选择,通常勾选“域”和“专用”即可),点击“下一步”。
- 为规则命名一个易于识别的名字,NTP Server Inbound”,点击“完成”。
第5步:重启 Windows 时间服务
所有配置修改完毕后,必须重启服务才能生效。
在 PowerShell 或 CMD(管理员)中执行:
net stop w32time net start w32time
第6步:验证时间服务器是否工作
-
在服务器上验证:
w32tm /query /status
你应该会看到源指向你配置的外部服务器(如
time.windows.com)。 -
在客户端电脑上验证: 假设你的服务器 IP 地址是
168.1.100。w32tm /query /status /computer:192.168.1.100
如果成功,你会显示该服务器的状态信息。
或者,在客户端电脑上尝试手动同步:
w32tm /config /syncfromflags:manual /manualpeerlist:"192.168.1.100,0x8" w32tm /resync
-
使用专业工具验证: 可以在客户端电脑上下载安装
NTP.org官方的NTPQ.exe工具。ntpq -p 192.168.1.100
如果一切正常,你会看到服务器
168.1.100的信息,包括refid(它的上游时间源)、st(stratum,层级)、when(多久前同步过)、poll(同步间隔)等。
| 场景 | 目标 | 核心命令/操作 |
|---|---|---|
| 客户端同步 | 从互联网同步时间 | 设置 -> 时间和语言 -> 自动开启w32tm /resyncw32tm /config /syncfromflags:manual /manualpeerlist:"server" |
| 搭建时间服务器 | 为局域网提供时间 | 修改注册表 AnnounceFlags=0xA 和 NtpServer\Enabled=1修改注册表 Config\Type=NTP开放防火墙 UDP 123 端口 net stop w32time && net start w32time客户端使用 w32tm /config /manualpeerlist:"server_ip" |
通过以上步骤,你就可以轻松地在 Windows 系统上配置时间同步服务,无论是作为客户端还是作为服务器,都能满足你的需求。
