介绍

  1. NTP属于运用层协议(依据UDP传输,运用的端口号为123),用来同步网络中分布式时间服务器和客户端之间的时间,使网络中的设备供应依据一起时间的运用成为可能。
  2. 时间服务器和客户端是相对的。供应时间规范的设备为时间服务器,接收时间服务的设备为时间客户端。
  3. 设备运转NTP之后,通过沟通NTP报文,既可以作为时间服务器供应时间规范,又可以作为时间客户端接收时间服务。

安装ntp服务

服务器和客户端都安装

yum install -y ntp
yum install -y ntpdate

配置ntp服务端

编辑服务端配置文件

vim /etc/ntp.conf
# 和上层NTP服务器频率误差的记录文件
driftfile /var/lib/ntp/drift # 对于默认的client拒绝所有操作
restrict default nomodify notrap nopeer noquery
# 允许本机地址的一切操作
restrict 127.0.0.1
restrict ::1
# 指定可以和NTP通信的IP或者网段
restrict 10.0.0.0 mask 255.255.255.0 nomodify notrap # 远程的同步时间服务器地址(需要同步外网时间,必改)
# prefer表示优先同步的主机
server cn.pool.ntp.org prefer
server ntp1.aliyun.com iburst
server ntp2.aliyun.com iburst
server ntp3.aliyun.com iburst
server ntp4.aliyun.com iburst
server ntp5.aliyun.com iburst
# 远程时间服务器不可用时,以本地时间作为服务时间
server 127.127.1.0
# stratum指定层数,越小,离时间源,越近。 层级1为国际时间源服务器...
fudge 127.127.1.0 stratum 10 # 仅允许上层服务器为本机提供时间同步服务,而禁止它执行任何可能影响本机 NTP 服务配置或获取状态信息的操作,属于对外部公共服务器的安全限制最佳实践。
restrict cn.pool.ntp.org nomodify notrap noquery
restrict ntp1.aliyun.com nomodify notrap noquery
restrict ntp2.aliyun.com nomodify notrap noquery
restrict ntp3.aliyun.com nomodify notrap noquery
restrict ntp4.aliyun.com nomodify notrap noquery
restrict ntp5.aliyun.com nomodify notrap noquery # 引入 NTP 服务的加密密码文件
includefile /etc/ntp/crypto/pw
# 秘钥文件
keys /etc/ntp/keys # 指定日志文件
logfile /var/log/ntp
# 指定日志级别,info、all、event三种可以选择
logconfig all # 禁用 NTP 服务的 监控功能
disable monitor # 总结一下,restrict用来设置访问权限,server用来设置上层时间服务器,driftfile用来设置保存漂移时间的文件。

启动ntp服务端

在启动NTP服务前,先对提供服务的这台主机手动的校正一次时间。因为:

  1. 如果这台主机时间相差太大,ntp时间同步是渐近的同步的,会需要很久才会同步一致。
  2. 启动服务器,端口会被服务端占用,就不能手动同步时间了
ntpdate ntp.aliyun.com
systemctl enable ntpd
systemctl start ntpd
systemctl status ntpd
netstat -lntup|grep 123

验证是否正在同步

ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
time.cloudflare 10.70.8.4 3 u 43 64 3 224.168 46.850 44.197
+118.31.40.99 100.100.61.92 2 u 42 64 3 13.740 -36.312 20.364
*203.107.6.88 100.107.25.114 2 u 39 64 3 21.035 -33.513 11.831
LOCAL(0) .LOCL. 10 l 43 64 3 0.000 0.000 0.000 # 指令“ntpq -p”可以列出目前我们的NTP与相关的上层NTP的状态,以上的几个字段的意义如下:
* 当前同步的源(最优时间源)
+ 候选时间源(符合条件,可作为备用同步源)
- 被排除的源(因误差过大或不可靠被拒绝)
# 备用时间源(当其他源不可用时可能被选择)
o PPS源(通过脉冲信号同步的高精度源,如GPS)
x 虚假源(时钟差异过大,可能被攻击或配置错误)
. 未使用的源(未达到候选标准)
(空格)无效或不可达的源 remote 远程NTP服务器的IP或主机名
refid 服务器同步的上层时间源(如GPS、原子钟或其他NTP服务器)
st Stratum(层级),表示时间源的精度等级(0-15,数值越小精度越高)
t 类型:u=单播,b=广播,l=本地,s=对称节点,A=多播,B=广播
when 上次成功同步后经过的时间(分钟)
poll 轮询间隔(秒),表示与服务器同步的频率
reach 8位八进制数,表示最近8次同步的成功/失败状态(377=全部成功)
delay 网络延迟(毫秒),从本地到远程服务器的往返时间
offset 时间偏移量(毫秒),本地时钟与远程服务器的时间差异
jitter 时间偏移的波动值(毫秒),值越小表示时间越稳定
# 该指令可列出NTP服务器是否与上层联机。
ntpstat
synchronised to NTP server (203.107.6.88) at stratum 3
time correct to within 248 ms
polling server every 64 s
# 由上述输出结果可知,时间校正约为248 ms。且每隔64秒会主动更新时间。 # 常见的错误:
# no server suitable for synchronization found
# 其实,这不是一个错误。而是由于每次重启NTP服务器之后大约要3-5分钟客户端才能与server建立正常的通讯连接。当此时用客户端连接服务端就会报这样的信息。一般等待几分钟就可以了。

配置ntp客户端

# 首先需要使用ntpdate同步
ntpdate 10.0.0.50 # 配置ntp服务
vim /etc/ntp.conf
server 10.0.0.50 iburst #指定上层NTP服务器 # 重启
systemctl restart ntpd
systemctl enable ntpd
systemctl status ntpd

之后使用ntpstat和ntpq -p检查是否同步即可

ntp时间同步服务详解的更多相关文章

  1. winxp计算机管理中服务详解

    winxp计算机管理中服务详解01 http://blog.sina.com.cn/s/blog_60f923b50100efy9.html http://blog.sina.com.cn/s/blo ...

  2. Android中Service(服务)详解

    http://blog.csdn.net/ryantang03/article/details/7770939 Android中Service(服务)详解 标签: serviceandroidappl ...

  3. WCF中队列服务详解

    WCF中队列服务详解 一.引言 在前面的WCF服务中,它都要求服务与客户端两端都必须启动并且运行,从而实现彼此间的交互.然而,还有相当多的情况希望一个面向服务的应用中拥有离线交互的能力.WCF通过服务 ...

  4. NTP时间同步 服务端 客户端 自动化安装配置

    NTP时间同步 服务端 客户端 自动化安装配置 原创内容 http://www.cnblogs.com/elvi/p/7657994.html #!/bin/sh #运行环境 centos6.cent ...

  5. 【转】SSH服务详解

    [转]SSH服务详解 第1章 SSH服务 1.1 SSH服务协议说明 SSH 是 Secure Shell Protocol 的简写,由 IETF 网络工作小组(Network Working Gro ...

  6. (转)SSH服务详解

    SSH服务详解 原文:http://www.cnblogs.com/clsn/p/7711494.html 第1章 SSH服务1.1 SSH服务协议说明SSH 是 Secure Shell Proto ...

  7. HTTPD之二————HTTPD服务详解————httpd的配置文件常见设置

    HTTPD之二----HTTPD服务详解----httpd的配置文件常见设置 HTTP服务器应用 http服务器程序 httpd apache nginx lighttpd 应用程序服务器 IIS,a ...

  8. Linux时间同步,ntpdate命令、ntpd服务详解

    声明:以下内容来自网友整理(http://blog.sina.com.cn/s/blog_636a55070101u1mg.html),为便于以后学习暂时收录,请不要随意转载 Linux默认情况下,系 ...

  9. LINUX之ntp时间同步服务配置

    本篇将介绍LINUX之ntp服务配置,时钟同步服务器配置.这个在很多地方都会用到,保持各主机之前的时间保持一致,保证主机之间的心跳稳定. 三台主机都是centos7 192.168.1.110 mas ...

  10. angular-ngSanitize模块-$sanitize服务详解

    本篇主要讲解angular中的$sanitize这个服务.此服务依赖于ngSanitize模块. 要学习这个服务,先要了解另一个指令: ng-bing-html. 顾名思义,ng-bind-html和 ...

随机推荐

  1. 自定义Marix的自定义动画,支持缓动动画属性

    最近用画布的MatrixTransForm做变换,需要用Matrix做动画处理,网上冲浪找了一圈,没有找出好的解决方法 Stack Overflow 给出了一部分的解决方法,但是不支持缓动函数,貌似不 ...

  2. Flume+Kafka获取MySQL数据

    摘要 MySQL被广泛用于海量业务的存储数据库,在大数据时代,我们亟需对其中的海量数据进行分析,但在MySQL之上进行大数据分析显然是不现实的,这会影响业务系统的运行稳定.如果我们要实时地分析这些数据 ...

  3. Android studio虚拟机黑屏

    1.冷启动 cold boot now 2.新建一个 另外今天下午起来的比较晚,就在宿舍上的机,然后效果就比较差,我有罪,我下次要学习一定不在宿舍,今晚也是早早的吃了饭就来自习了,这就是成果.卡了我一 ...

  4. 使用Git修改文件名字的大小写

    问题背景 最近发现window对文件名的大小写不敏感,如果想把文件夹start,修改成Start,让git有变化. 应该怎么做呢,直接看黑框操作步骤 解决方案 第一步:将文件(夹)更改大小写 $ mv ...

  5. ArkUI-X与Android桥接通信之方法回调

    平台桥接用于客户端(ArkUI)和平台(Android或iOS)之间传递消息,即用于ArkUI与平台双向数据传递.ArkUI侧调用平台的方法.平台调用ArkUI侧的方法.本文主要介绍Android平台 ...

  6. UI跳转WE DYNPRO带参数

    同事今天在做一个需求,需要把UI上的业务角色,传递给挂在UI上的DYNPRO程序.然后我们就研究了一下,发现挺好玩的. 1,设置URL参数 2.定义URL的参数 3.找到链接对应的类,把参数传上 4. ...

  7. Java源码分析系列笔记-17.ReentrantReadWriteLock

    目录 1. ReentrantReadWriteLock是什么 2. 非公平ReentrantReadWriteLock 2.1. 是什么 2.2. 怎么使用 2.3. 源码分析 2.3.1. uml ...

  8. Nuclear - 基于流媒体的隐私优先音乐播放器

    Nuclear - 基于流媒体的隐私优先音乐播放器 项目描述 Nuclear是一款专注于从免费来源流媒体播放音乐的桌面应用,具有以下核心特点: 隐私优先设计,不进行用户追踪或数据分析 无广告干扰的纯净 ...

  9. 2025年推荐6个好用的 Postman 替代工具

    在软件开发和API测试领域,Postman无疑是使用最广泛的工具之一.它凭借直观的界面.强大的功能以及丰富的社区支持,多年来一直备受欢迎. 然而,随着技术的发展和用户需求的多样化,Postman也暴露 ...

  10. C# 通过 HttpClient 上传图片 POST

    public string PostUploadImage(string uploadUrl, string imgPath, string fileparameter = "file&qu ...