抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

0x01. NTP 简介

NTP(Network Time Protocol) 的全称是 网络时间协议 ,它是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源做同步化,它可以提供高精准度的时间校正(LAN上与标准时间差小于1ms,WAN上是几十毫秒)。

0x02. Windows 时间服务简介

从Windows2000开始,所有的Microsoft Windows 操作系统都内置了 Windows时间服务(即W32Time),它具有将计算机时钟与NTP服务器同步的能力。

Windows 10 和 Windows Server 2016 中的时间同步已大幅改善。 在合理的操作条件下,可将系统配置为维持 1ms(毫秒)的精度或更高的精度(相对于 UTC)。

——From Microsoft

0x03. Win NTP 服务器详细搭建步骤

Step 1. 打开 Windows 注册表

按下 Windows键 + R 或 打开 运行,输入 regedit后点击确定。

Step 2. 找到指定路径 -1

依次展开至 Config 路径,或直接在路径输入框复制下方路径后回车跳转。

1
计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config

Step 3. 修改指定的值 -1

在右侧找到 AnnounceFlags,双击,将它的 数值数据 改为 5,单击确定。

Step 4.找到指定路径 -2

依次展开至 NtpServer 路径,或直接在路径输入框复制下方路径后回车跳转。

1
计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer

Step 5. 修改指定的值 -2

在右侧找到 Enabled,双击,将它的 数值数据 改为 1,单击确定。

Step 6. 启动 W32Time 服务

按下 Windows键 + R 或 打开 运行,输入 services.msc 后点击确定;

找到 Windows Time 服务项,双击,将它的 启动类型 设置为 自动,单击确定。

Step 7. 重启 W32Time 服务

按下 Windows键 + X + A 或 以管理员身份运行 cmd.exe ,依次输入 net stop w32time net start w32time 后点击确定;

按下 Windows键 + R 或 打开 运行,输入 cmd 后点击确定;

在弹出的窗口中,输入 netstat -an ,回车,在输出的文本中可以看到 UDP 0.0.0.0:123 *:* ,说明 NTP 服务搭建成功。

0x04. Windows 和 Linux 下 NTP 对时服务的使用

Windows

Step 1.打开 Internet时间 设置

在任务栏右下角单击时间,继续单击 日期和时间设置

在弹出的窗口中,点击 添加不同时区的时钟

在弹出的窗口中,单击 Internet时间 选项卡,单击 更改设置 按钮;

在弹出的窗口中,输入搭建好NTP服务的主机地址,单击 立即更新

Ubuntu

在终端输入命令 sudo ntpdate 192.168.10.123 ,输入密码,出现类似 step time server 192.168.10.123 offset -1231.354535 sec 字样即表示成功。

参考链接:

[1] Microsoft - Windows 时间服务 (W32Time)

[2] Github - microsoft/W32Time

评论