离线服务器时间同步NTP服务器配置

背景

我发现某几台完全离线的服务器的时间校准与北京时间相差快十分钟了,这必然会导致系统运行时的时间获取错误,极易让人忽视,所以我想将那几台离线服务器的时间校准为AD服务器的时间。

离线服务器时间配置

将时间同步服务器指向AD服务器IP(内网),配置完离线服务器将每隔几分钟去自动同步一次AD服务器的时间

问题发现

笔者的AD服务器是联网的,实际上这样做并不规范,规范做法应该是自己在内网搭建一个NTP服务器去同步外部的NTP服务器时间,比如阿里的NTP服务器,中国国家授时中心的NTP服务器,然后再去AD配置时间指向内网的NTP服务器

1、首先查看AD时间准不准,跟了几分钟发现与北京时间也差个2分钟,说明AD服务器的时间也不准,我第一时间想法是不是自动同步时间没开,但是去看了也不对,AD服务器压根没有自动同步时间的选项

2、使用w32tm /query /status查看时间同步状态,我一看到Free-running System Clock就知道AD服务器实际上依靠的是本地硬件时钟,非常容易时间误差。我们需要把时间同步源改为外部的可靠的NTP服务器。

AD服务器时间配置

确认和NTP服务器的连接性

使用 w32tm /monitor /computers:ntp.aliyun.com命令,确认和NTP服务器是否可连接。这里ntp.aliyun.com是阿里云提供的NTP服务的域名。

与NTP服务器的连接正常时,显示如下。

而当和NTP服务器无法连接时,显示如下错误信息。

w32tm /query /source命令,确认当前时间同步服务器。这里显示Free-running System Clock,既没有进行NTP同步。

给出几个国内常用的NTP服务器地址

中国国家授时中心 NTP 服务器

阿里云 NTP 服务器

腾讯云 NTP 服务器

华为云 NTP 服务器

配置时间同步

AD 域控本机 ,打开管理员 CMD,逐条完整执行:

1. 重置 Windows 时间服务
复制代码
net stop w32time
w32tm /unregister
w32tm /register
net start w32time
2. 配置域控同步阿里云 NTP,设为内网权威时间源
复制代码
w32tm /config /manualpeerlist:"ntp.aliyun.com,0x8" /syncfromflags:manual /reliable:yes /update

参数含义:

  • ntp.aliyun.com,0x8 阿里官方时间源,格式正确

  • /reliable:yes 关键:标记域控为内网可信时间服务器,别的机器才能同步它

  • /syncfromflags:manual 强制关闭自由时钟 freerunning

3. 重启服务并强制同步外网
复制代码
net stop w32time && net start w32time
w32tm /resync /force
4. 域控验证(确认成功)
复制代码
w32tm /query /source

正常结果:

复制代码
ntp.aliyun.com

不再显示 freerunning system clock

查看详细状态:

复制代码
w32tm /query /status

域控防火墙放行【入站 UDP 123】(重中之重!)

离线机 ping 得通域控,却同步失败 ,100% 就是这里没开! Windows 默认防火墙拦截外部所有设备访问本机 UDP123,哪怕网络通也连不上 NTP。

在 AD 域控上直接运行放行命令:

复制代码
netsh advfirewall firewall add rule name="NTP-In-UDP-123" dir=in action=allow protocol=UDP localport=123 enable=yes profile=any

作用:允许内网其他服务器、电脑连接域控同步时间

同时补全域控出站(连阿里外网用):

复制代码
netsh advfirewall firewall add rule name="NTP-Out-UDP-123" dir=out action=allow protocol=UDP remoteport=123 enable=yes profile=any

内网离线服务器配置(无外网,只同步 AD 域控)

离线业务服务器 上操作,不需要外网、不需要改网关 DNS,只填域控内网 IP。 同样管理员 CMD 逐条执行:

1. 重置本机时间服务
复制代码
net stop w32time
w32tm /unregister
w32tm /register
net start w32time
2. 指定同步源为【AD 域控内网 IP】

假设你的AD 域控内网 IP 为:192.168.1.10(192.168.1.10) 替换成你真实 IP,命令如下:

复制代码
w32tm /config /manualpeerlist:"192.168.1.10,0x8" /syncfromflags:manual /reliable:no /update

要点:

  • 末尾必须加 ,0x8,Windows NTP 强制格式

  • /reliable:no 离线机不作为权威源,只做客户端同步

3. 重启服务 + 强制同步
复制代码
net stop w32time && net start w32time
w32tm /resync /force
4. 离线服务器验证
复制代码
w32tm /query /source
相关推荐
我星期八休息1 小时前
网络编程—NAT、代理服务与内网穿透
linux·服务器·网络·网络协议
CAD老兵1 小时前
让 AI Coding Agent 直接访问 CAD 文档:GitMCP 实战指南
前端·人工智能·github
袅沫2 小时前
Nginx中部署多个前端项目——区分路径
服务器·前端
Revolution612 小时前
DeepSeek Harness 最近上线:Everything is a Plugin 有什么特别之处
llm·github·deepseek
fei_sun2 小时前
UVM中的TLM1.0通信
运维·服务器·uvm
MartinYeung52 小时前
[论文学习]MCPTox:面向真实世界MCP服务器的工具投毒攻击基准测试
运维·服务器·学习
Escalating_xu3 小时前
【Linux】基础 I/O 深度解析:FILE、文件描述符、open/read/write、重定向与缓冲区
java·linux·服务器
城管不管3 小时前
MySQL 慢查询完整排查
java·服务器·jvm·数据库·mysql·spring·面试
烛之武3 小时前
Linux 命令速查表
linux·运维·服务器
早安试言3 小时前
git使用
git