10 个主流公共 NTP 时间源:国内 5 家(阿里 / 腾讯 / 华为 / 国家授时中心 / 教育网)+ 国际 5 家(Cloudflare 含 NTS / Google leap-smear / Apple / Microsoft / NTP Pool)。 上方点 主机名 / pool 任一格直接复制;下方 「OS 配置生成器」选系统 + 选 provider 即生成 macOS / Windows / systemd-timesyncd / chrony / ntpd / OpenWrt / Docker 配置,附 ntpdate / sntp 在线验证命令。
macOS Ventura+ 用 sntp 单次校时,长期同步走系统设置或 chronyd(可选)。
sudo systemsetup -setnetworktimeserver ntp.aliyun.com
sudo systemsetup -setusingnetworktime on sudo sntp -sS ntp.aliyun.com sudo systemsetup -getnetworktimeserver 公共 NTP 时间服务器完整速查——10 家主流 NTP 服务(国内 5 + 国际 5),列出主机名、pool 集群、stratum 层级、是否支持 NTS 加密、是否做 leap smearing。下方一键生成 macOS / Windows / Linux systemd-timesyncd / chrony / ntpd / OpenWrt / Docker 配置 + ntpdate / sntp 在线验证命令。
| 场景 | 推荐 NTP |
|---|---|
| 国内服务器 / 家用 | 阿里 ntp.aliyun.com + 腾讯 time1.cloud.tencent.com(多源更稳) |
| 跨境业务 / 隐私敏感 | Cloudflare time.cloudflare.com(含 NTS 加密) |
| 数据库 / 金融连续时序 | Google time.google.com(leap smearing 不跳秒) |
家用 / 服务器都直接用阿里或腾讯——anycast、BGP 多线、稳定可达。国家授时中心(ntp.ntsc.ac.cn)是国家级 stratum-1,权威性最高但出口带宽有限,适合作为单台机器或少量内网中继的上游,不适合千台规模都打过去。最佳实践:内部 NTP 中继 → 国授中心 + 阿里 + 腾讯(三源),其余机器只指向中继。
pool.ntp.org 是全球志愿者集群,每次解析返回不同 IP,质量参差。国内强烈建议用 cn.pool.ntp.org 子域——DNS 仅返回 CN 区服务器,避免命中境外节点导致延迟过大。阿里 / 腾讯是大厂统一运营,IP 固定 anycast,延迟稳定 < 5ms。对企业生产环境:阿里 / 腾讯 > cn.pool.ntp.org > 0.pool.ntp.org(最差)。
新部署一律选 chrony。差异:(1) chrony 启动后几秒内就能同步到位(指数加权快速收敛),ntpd 要几分钟;(2) chrony 在网络抖动 / 笔记本休眠唤醒后恢复更快;(3) chrony 原生支持 NTS(RFC 8915 加密 NTP),ntpd 不支持;(4) RHEL 8+ / Ubuntu 20.04+ 默认就是 chrony,ntpd 已逐渐成为遗留方案。例外:老业务系统早已部署 ntpd 且运行稳定,没动力迁移。
会,二者抢绑 UDP 123 端口。Ubuntu / Debian 桌面版默认 timesyncd(轻量 SNTP 客户端,仅校时不能做服务端),服务器版默认或可装 chrony。安装 chrony 时一定要 disable timesyncd:sudo systemctl disable --now systemd-timesyncd。timedatectl 命令对两者都生效,但 chrony 需要看 chronyc tracking 才能拿到完整状态。
NTS = Network Time Security(RFC 8915, 2020)——给 NTP 加上 TLS 级密钥协商和 AEAD 加密,防止中间人篡改时间。普通 NTP 是 UDP 明文,运营商或恶意 WiFi 可以伪造响应让你的时间被改到任意值(可绕过 HTTPS 证书有效期校验等)。但门槛:(1) 服务器极少(Cloudflare 是少数公开服务);(2) chrony ≥ 4.0 才支持,配置 server time.cloudflare.com iburst nts;(3) ntpd / timesyncd 不支持。家庭 / 普通服务器场景威胁有限,先别折腾;金融 / 监管场景才有必要。
闰秒(leap second)是 UTC 偶尔在 6 月底或 12 月底插入的一秒,让时钟出现 23:59:60 或重复 23:59:59。普通服务器用 step(跳秒):那一秒钟系统时间不连续。Google leap smearing把这一秒摊薄到 24 小时慢慢追加,时钟永远连续递增。该不该选:(1) 数据库 / 金融 / 日志连续序号敏感 → 选 smear;(2) 普通 Web / 应用 → 用 step 即可;(3) 千万别 step 和 smear 混用,集群里有的机器跳一秒、有的摊 24 小时,集群内部时差最大可达半秒,会触发各种诡异故障。注意:IERS 已宣布 2035 年前淘汰闰秒,未来这事会消失。
多半能。NTP 走 UDP/123,和 ICMP(ping)是两个协议。很多公共 NTP 服务器(阿里 / 腾讯)禁了 ICMP 防 ping flood,但 NTP 服务正常。正确的可达性测试:ntpdate -q ntp.aliyun.com 或 chronyd -Q "server ntp.aliyun.com iburst",能拿到 offset 就是通的。真正会挡住 NTP 的:(1) 公司防火墙出方向 ban 了 UDP/123;(2) NAT 没 hole punch(罕见);(3) 时间偏差太大(默认 1000 秒以上),需要先 chronyd -q 强制 step 一次。
域控成员不应该自己同步外部 NTP——AD 域里所有机器都从域控(PDC emulator)同步,PDC 自己同步外部时间源。修改的应该是 PDC 角色那台:w32tm /config /manualpeerlist:"ntp.aliyun.com,0x9 time.windows.com,0x9" /syncfromflags:manual /reliable:yes /update。0x9 标志含义:0x1(special interval)+ 0x8(client mode)。普通成员保持默认 domhier 即可,强行配置外部时间源反而会被域策略覆盖。