ntp服务配置

发布时间 2023-09-11 15:54:00作者: 背对背依靠
  • NTP (Network Time Protocol): 是一个网络协议,用于同步计算机之间的时钟。它旨在使分布在不同位置的计算机能够保持准确和一致的时间。

  • ntp: 通常是指ntpd(NTP daemon),这是一个在Linux和其他Unix-like系统上运行的程序。它可以作为客户端来同步系统时钟,或者作为服务器为其他计算机提供时间同步。

ntp服务的特点:

  1. 存在已经很长时间了,很成熟

  2. 会逐渐调整系统时间以避免大的时间跳跃

  3. 通过一个守护进程(ntpd)来常驻后台,实现时间自动同步

安装ntp工具

# centos
yum install -y ntp

# ubuntu
apt install -y ntp

配置ntp
ntp是客户端和服务端一体的工具,通过不同的设置配置为客户端或者服务端。

作为客户端:
本机去同步其它ntp时间服务器的时间,只需要在 /etc/ntp.conf 这个配置文件中通过server或者pool指令来指定时间服务器地址就行了,可以指定多个时间服务器地址;

  • server:用于指定单个NTP服务器,iburst:让同步时间的时候更快,开启多个并行任务来进行同步
  • pool:用于指定NTP服务器池而不是单个NTP服务器。池名称应解析为随时间可能会变化的多个地址

配置步骤:
(1)修改 /etc/ntp.conf 配置文件
在配置文件中指定时间服务器的地址即可

# 例如
server ntp.aliyun.com

image

(2)重启服务

sudo systemctl restart ntp.service

image

(3)通过ntpq -p 查看是否同步成功
星号(*)表示当前使用的主时间服务器,加号(+)表示候选时间服务器,和减号(-)表示已列入考虑但当前不是最佳的服务器

image

作为服务端:
实现在一个局域网里面,实现其它服务器的时间以本机时间为准

1、修改 /etc/ntp.conf 配置文件
需要在配置文件里面指定时间源是本地时间,并且需要设置同步规则。

# 将本地时钟配置为NTP服务器的时间源。
server 127.127.1.0

# 设置优先同步本地时间
fudge 127.127.1.0 stratum 10

# 禁止其他服务器对NTP服务器进行配置操作,允许其他服务器进行时间同步
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery

# 允许本地主机进行更详细的NTP服务器访问
# 如果注释掉了,不能再本机使用 ntpq -p 命令查看NTP服务器的状态和同步信息。
restrict 127.0.0.1
restrict ::1

# 允许什么网段的设备可以使用本服务器进行ntp时间同步
# default 允许来自任何IP地址的主机进行时间同步
restrict 192.168.0.0 mask 255.255.255.0 notrap nomodify noquery

image

image

  • 在 NTP (Network Time Protocol) 中,IP 地址 127.127.1.0 是特殊的,它表示本地时钟 (Local Clock)。而通常我们熟知的本地回环地址是 127.0.0.1

  • 当在NTP服务器的配置中添加了 limited 选项,它将限制其他服务器对本机时间的同步。

  • 其它一些配置选项的意思大概就是禁止其他设备对NTP服务器进行配置操作,但允许其他设备进行时间同步。

2、重启服务

sudo systemctl restart ntp.service

image

3、测试

ntpq -p

image

只要 reach 不为 0 并且 when 不断增加并保持在轮询间隔以下,那么这通常意味着一切正常。