Administrator
Published on 2025-11-30 / 0 Visits
0
0

核心交换机作为时钟源,服务器基于 Chrony 实现企业级统一时钟同步

在任何一个企业级网络环境里,时间同步都是基础中的基础。你可能不会注意它——直到某一天,日志对不上、系统告警乱跳、审计记录前后矛盾、数据库复制延迟、容器集群漂移、监控系统出现“时空裂缝”……

统一时钟的重要性,只有在出现问题时才会被真正理解。

而在内网环境下,特别是科研网、安全网、涉密网、无互联网访问环境中,让核心交换机作为内部时钟源,再由服务器基于 Chrony 同步核心交换机时间,是一种稳定、简单、可靠、无需依赖外部网络的最佳实践架构。

这篇文章,将带你从 0 到 1 深入掌握这一方案,并可直接落地到你的生产环境。


为什么“核心交换机作为时钟源” 是最佳选择?

https://upload.wikimedia.org/wikipedia/commons/thumb/c/c9/Network_Time_Protocol_servers_and_clients.svg/1200px-Network_Time_Protocol_servers_and_clients.svg.png

https://www.networkacademy.io/sites/default/files/2024-10/network-time-protocol-ntp.png

在多数企业网络中,核心交换机(Core Switch)具有以下天然优势:

① 时钟稳定 + 一直在线

https://study-ccna.com/wp-content/uploads/2016/03/how_ntp_works.jpghttps://www.chrony.eu/principal-configuration-of-ntp-cluster.jpg

② 位置最中心(最小网络抖动)

核心交换机位于汇聚中心,时延最短、链路最优,适合作为全网统一的 NTP 根源。

③ 无外网依赖(适用于科研网、安全网)

尤其是 涉密网、安全隔离网、科研业务网 等受限网络,无法访问外部 NTP。
这时内部设备统一同步核心交换机是最稳妥的方案。

④ 配置简单、运维成本低

NTP 服务在交换机上开销极小,配置一两行即可完成,无需额外部署服务器。


整体架构长这样

https://study-ccna.com/wp-content/uploads/2016/03/how_ntp_works.jpg

https://www.chrony.eu/principal-configuration-of-ntp-cluster.jpg

            ┌─────────────────────────────┐
            │     核心交换机(NTP Server) │
            │     Stratum 3 / 5           │
            └───────▲──────────▲──────────┘
                    │          │
        ┌───────────┴───┐  ┌───┴────────────┐
        │  虚拟化平台    │  │  业务服务器      │
        │   Chrony       │  │   Chrony        │
        └───────────────┘  └─────────────────┘

核心交换机作为时间“源头”,下游所有设备从它同步时间,全网日志保持一致,审计链条清晰,管理平台运行正常。

典型企业结构如下:

公网 NTP 服务器(阿里/国家授时中心)
          ↓(客户端)
核心交换机/防火墙 ——(服务端)→ 内网所有服务器、交换机、终端

因此你的设备需要同时承担 两个角色

  • 对外:作为 NTP Client(同步外部时间)

  • 对内:作为 NTP Server(为内网提供标准时间)

① 对外部(公网)作为 NTP 客户端

例如外网时间源:

  • 120.25.115.20(阿里)

  • 210.72.145.44(国家授时中心)

ntp-service enable
ntp-service unicast-server 120.25.115.20
ntp-service unicast-server 210.72.145.44

带认证的写法(可选):

ntp-service authentication-enable
ntp-service key 1 algorithm md5 key-str 123456
ntp-service unicast-server 120.25.115.20 key 1

其他版本交换机命令

ntp enable
ntp server 120.25.115.20
ntp server 210.72.145.44

若需要认证:

ntp authentication enable
ntp authentication-key 1 md5 123456
ntp server 120.25.115.20 authentication-key 1

② 对内网作为 NTP Server 提供服务

ntp-service refclock-master 3      // 设置 stratum 层级
ntp-service broadcast-server       // 广播(选)
ntp-service multicast-server all   // 组播(选)

如果你只需要普通 Unicast 服务:

ntp-service server enable

推荐设置访问控制(强烈建议)

acl number 2001
 rule permit source 192.168.0.0 0.0.255.255
 rule deny source any

ntp-service access-limit 2001

其他版本交换机命令

ntp refclock-master 3       // 宣称本机为 stratum 3
ntp service enable          // 开启对下服务

如果你要限制访问:

acl 3001
 rule permit ip source 192.168.0.0 0.0.255.255

ntp access-group peer 3001
ntp access-group serve 3001
ntp access-group query 3001

完整 V200 配置

ntp-service enable

# 外网时钟源
ntp-service unicast-server 120.25.115.20
ntp-service unicast-server 210.72.145.44

# 内网提供 NTP 服务
ntp-service refclock-master 3
ntp-service server enable

# 访问控制
acl 2001
 rule permit source 192.168.0.0 0.0.255.255
ntp-service access-limit 2001

完整 V600 配置

ntp enable

# 外网 NTP 源
ntp server 120.25.115.20
ntp server 210.72.145.44

# 内网 NTP Server
ntp refclock-master 3
ntp service enable

# 访问控制
acl 3001
 rule permit ip source 192.168.0.0 0.0.255.255

ntp access-group serve 3001
ntp access-group peer 3001
ntp access-group query 3001

一、核心交换机配置为 NTP 时钟源(NTP Server)

核心交换机一般具备本地 clock,并可作为内部的 NTP Server 提供给服务器、网络设备统一同步。


1. 核心交换机启用 NTP 服务

system-view
ntp-service enable       # 启用 NTP 服务

2. 设置交换机为 NTP 服务器

ntp-service server disable   # 禁止作为客户端(可选)
ntp-service refclock-master 3

🔍 说明:

  • refclock-master 3 表示设置成 Stratum 3 的本地时钟源
    (可根据需要改为 1、2、3,一般企业内部建议用 3 或 5)


3. 允许内部网络访问(ACL 可选)

如果要防止外部访问,可以创建 ACL。

acl number 2000
 rule 5 permit ip source 192.168.0.0 0.0.255.255
quit

ntp-service access-group server 2000
ntp-service access-group peer 2000
ntp-service access-group query 2000

4. 查看交换机 NTP 状态

display ntp-service status

你应当看到:

Clock stratum : 3
NTP service enabled

如果同步成功,你会看到类似:

Clock Status:                     synchronized
Clock Source:                     10.1.1.1
Stratum:                          2
Offset:                           1.2 ms

必须满足:

  • Clock Status = synchronized

  • Clock Source 不是 local clock

  • Offset < 100ms(越小越好)

  • Stratum 值合理(不会太大)

5. 查看与时钟源的连通性(Reach 字段)

display ntp session

典型输出:

1 10.1.1.1   Unicast   Client   Synchronized   377   2.1ms

必须满足:

  • Status = Synchronized

  • Reach 字段 = 377(满值,表示一直能连上)

  • Delay / Offset 稳定

如果 Reach 是“0/1/3/7/17”,说明交换机偶尔或无法与时钟源通信。

6. 查看系统时间来源

display clock

输出应类似:

Current time source: NTP
Current time: 2025-11-30 10:24:33

如果是:

Current time source: LOCAL

说明 交换机没有成功用外部源

不管哪个品牌,工程师只看三个关键字段:

字段

正常值

意义

状态

synchronized / sys.peer

已成功同步

来源

外部 NTP IP

未使用本地时间

Offset

<100ms(越小越稳)

时间偏移

如果你看到:

  • offset > 500ms

  • stratum = 16

  • reach = 0
    说明 没有成功同步

二、服务器配置 Chrony 同步核心交换机

假设核心交换机地址为:

10.10.10.1

1. 编辑 chrony 配置

文件位于:

/etc/chrony.conf

修改内容:

server 10.10.10.1 iburst

如果你想强制只同步交换机,可注释掉其它 server:

# server 0.pool.ntp.org iburst
# server 1.pool.ntp.org iburst

2. 重启 chronyd 服务

systemctl restart chronyd
systemctl enable chronyd

3. 验证同步是否成功

chronyc sources -v

正常情况下你会看到:

MS Name/IP address         Stratum Poll Reach LastRx Last sample
^* 10.10.10.1               3        6    377    5   -10us[ -30us] +/-   2ms

其中:

  • ^* 表示正在同步该源

  • Stratum 3 与交换机一致

  • Reach 377 表示网络连通良好


三、Chrony 强制立即同步

用于初次同步或时间偏差较大时:

chronyc makestep

立即把时间校正到交换机时间。


四、整体架构示意

[核心交换机 VRP(Stratum 3)]
                ↑
   ┌────────────┼────────────┐
   │            │            │
[业务服务器] [虚拟化集群] [安全设备]
     Chrony        Chrony        NTP

核心交换机作为统一时钟源,局域网所有服务器、设备统一同步,适合科研网、安全网、业务网等内部网络环境。


五、给你一个可直接套用的配置模板

● 核心交换机(VRP)

system-view
ntp-service enable
ntp-service refclock-master 3
acl number 2000
 rule 5 permit ip source 10.0.0.0 0.255.255.255
quit
ntp-service access-group server 2000
ntp-service access-group peer 2000
ntp-service access-group query 2000
save

● Linux 服务器(Chrony)

vim /etc/chrony.conf
  server 10.10.10.1 iburst
systemctl restart chronyd
chronyc sources -v

六、常见问题

❌ ping 通外网但 NTP 无法同步?

➡ 必须保证 UDP/123 放行
(很多防火墙默认拦 UDP/123)

❌ refclock-master 配置后时钟仍不对?

➡ 必须先同步外部时间后再提供内部服务
否则会“以本地错误时间”传播给内网。

❌ stratum 设置多少合适?

建议:

  • 外网源:1–2

  • 核心交换机:3

  • 下层交换机:4–5

❌ Linux Chrony 做时钟源但交换机不收?

➡ 检查 /etc/chrony.conf 的 allow 授权段。


Comment