简单网络时间协议 (SNTP)的应用(网络时钟协议)
gudong366 2025-07-16 00:33 5 浏览
使用简介
sntp是简单网络时间协议(Simple Network Protocol)的简称。在linux下可用来进行修改,特别适合有对时需求,但没有时钟装置进行对时源的装置。
linux下用命令sntp -P no -r [某授时中心域名] ,就能够将系统时间和授时中心的时间进行同步,当然这需要超级权限口令。
命令 hwclock --systohc //或者 hwclock -w 可以用系统时间同步硬件时间。
一般在做了以上两步之后,即使重启系统之后,系统时间也会保留重启之前的值。但是有些系统可能还需要清除时间校正文件(rm /etc/adjtime),才能使设置的时间不会因为重启而改变。
时间校正文件/etc/adjtime中保存了一个用来估算硬件时间的偏差的校正因子,系统每次重启会根据校正因子调整硬件时间。所以要想使设置时间在重启后保留,需要删除掉时间校正文件,系统在重启后会重新创建一个新的时间校正文件。
协议SNTP V4介绍
SNTP(Simple Network Time Protocal简单网络时间协议),用于跨广域网或局域网同步时间的协议,精确度一般在几十毫秒。官方文档为RFC 4330,2006年的最新版本为SNTPv4,支持IPV6。
SNTPv4是NTP(Network Time Protocol网络时间协议)的简化版,精度较低,安全机制较低,但是报文格式完全一致。
SNTPv4使用的是UDP 123端口,C/S模式,有单播,多播和广播三种报文发送方式。
报文结构
SNTP4基于UDP网络,报文结构如下:
MAC | IP | UDP | NTP |
其中NTP的报文结构如下:
字段说明:
字段 | 含义 | 长度 | 说明 |
LI | 闰秒标志 | 2比特 | 见Figure 2 |
VN | 版本号 | 3比特 | 表示NTP的版本号,当前为4 |
Mode | 模式 | 3比特 | 见Figure 3,一般服务端发送的报文模式值为4 |
Stratum | 层 | 1字节unsigned char | 见Figure 4,对本地时钟级别的整体识别 |
Poll | 轮询间隔 | 1字节无符号正数 | 指示数据包的最大时间间隔,以秒为单位,作为2的指数方的指数部分,取值范围从4-17,即16秒到131,072秒 |
Precision | 精度 | 1字节有符号正数 | 指示系统时钟的精确性,以秒为单位,作为2的指数方的指数部分,取值范围从-6到-20 |
Root Delay | 往返延迟 | 4字节浮点数 | 指示与主时钟参考源的总共往返延迟,以秒为单位,小数部分在16位以后,取值范围从负几毫秒到正几百毫秒 |
Root Dispersion | 误差 | 4字节浮点数 | 指示与主时钟参考源的误差,以秒为单位,小数部分在16位以后,取值范围从零毫秒到正几百毫秒 |
Reference Identifier | 时钟参考源 | 4字节ASCII字符串 | 见Figure 5 ,对于二级服务器,在IPV4环境下,取值为一级服务器的IP地址,在IPV6环境下,是一级服务器的NSAP地址 |
Reference Timestamp | 校准时间 | 8字节时间戳 | 见Figure 6,指示系统时钟最后一次校准的时间,建议填充非重要的低阶位随机值,便于环路检测与回放检测 |
Originate Timestamp | 原始时间 | 8字节时间戳 | 指示客户向服务器发起请求的时间 |
Receive Timestamp | 接收时间 | 8字节时间戳 | 指服务器收到客户请求的时间 |
Transmit Timestamp | 传输时间 | 8字节时间戳 | 指示服务器向客户发时间戳的时间 |
Authenticator | 认证 | 160字节可选 | 当需要进行SNTP认证时,该字段包含密钥和信息加密码 |
Figure 2 LI
0:无警告 | 1:最后一分钟是61秒; |
2:最后一分钟是59秒; | 3:警告(时钟没有同步) |
Figure 3 Mode
0:保留 | 1:对称主动 | 2:对称被动 | 3:客户 |
4:服务器 | 5:广播 | 6:保留为NTP控制信息 | 7:保留为用户定义 |
Figure 4 Stratum
Stratum值 | 含义 |
0 | kiss-o’-death(比较重要,见2.4),表示故障信息 |
1 | 一级服务器(由radio clock同步) |
2-15 | 二级服务器(由NTP和SNTP同步) |
16-255 | 保留 |
Figure 5 Reference Identifier Codes
Code | External Reference Source | 含义 |
LOCL | uncalibrated local clock | 未校准的本地时钟 |
CESM | calibrated Cesium clock | 校准铯钟 |
RBDM | calibrated Rubidium clock | 校准铷钟 |
PPS | calibrated quartz clock or other pulse-per-second source | 校准石英钟或其他脉冲每秒源 |
IRIG | Inter-Range Instrumentation Group | 跨系列仪表组 |
ACTS | NIST telephone modem service | NIST(美国国家标准)电话调制解调器服务 |
USNO | USNO telephone modem service | USNO(美国海军天文台)电话调制解调器服务 |
PTB | PTB (Germany) telephone modem service | PTB(德国)电话调制解调器服务 |
TDF | Allouis (France) Radio 164 kHz | Allouis(法国)无线电 164 kHz |
DCF | Mainflingen (Germany) Radio 77.5 kHz | Mainflingen(德国)无线电 77.5 kHz |
MSF | Rugby (UK) Radio 60 kHz | Rugby(英国)无线电 60 kHz |
WWV | Ft. Collins (US) Radio 2.5, 5, 10, 15, 20 MHz | Ft. Collins(美国)无线电 2.5、5、10、15、20 MHz |
WWVB | Boulder (US) Radio 60 kHz | 博尔德(美国)无线电 60 kHz |
WWVH | Kauai Hawaii (US) Radio 2.5, 5, 10, 15 MHz | 夏威夷考艾岛(美国)无线电 2.5、5、10、15 MHz |
CHU | Ottawa (Canada) Radio 3330, 7335, 14670 kHz | 渥太华(加拿大)无线电 3330、7335、14670 kHz |
LORC | LORAN-C radionavigation system | LORAN-C无线电导航系统 |
OMEG | OMEGA radionavigation system | 欧米茄无线电导航系统 |
GPS | Global Positioning Service | 全球定位服务 |
1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Seconds |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Seconds Fraction (0-padded) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 6 NTP Timestamp Format
123456789
request报文
上述字段中如果是客户端发的报文,那么绝大部分是0;如果是服务端发的报文,大部分字段才有意义。
LI,Stratum, Precision, Root Delay, Root Dispersion, Reference Identifier, Reference Timestamp 等都只在服务端有效。
下面是不同传输方式下的字段值示例
Field Name | Unicast/Manycast | Broadcast | |
Request | Reply | ||
LI | ignore | as needed | as needed |
VN | 1-4 | copied from request | 4 |
Mode | 3 | 4 | 5 |
Stratum | ignore | 1 | 1 |
Poll | ignore | copied from request | log2 poll interval |
Precision | ignore | -log2 server significant bits | -log2 server significant bits |
significant | significant | ||
Root Delay | ignore | 0 | 0 |
Root Dispersion | ignore | 0 | 0 |
Reference Identifier | ignore | source ident | source ident |
Reference Timestamp | ignore | time of last source update | time of last source update |
Originate Timestamp | ignore | copied from transmit timestamp | 0 |
Receive Timestamp | ignore | time of day | 0 |
Transmit Timestamp | (see text) | time of day | time of day |
Authenticator | optional | optional | optional |
图片源自网络,侵删。
创作不易,麻烦点赞+关注。
相关推荐
- U盘文件被删怎么简单恢复(u盘里的文件被误删了怎么找回)
-
现在这个社会不是靠关系靠路子,主要还是靠实力。刘强在机关工作,人长得帅气,工作能力又强。唯独一样不好,脾气太大,动不动就发火,因为小事常和同事发生口角。一次他火大的差点把办公桌给掀翻了,领导见他野蛮的...
- 不小心删除了一些文件?9 个最佳免费硬盘恢复软件
-
恢复您曾经无意或意外删除的所有文件和数据。您是否曾经错误地删除了一个对您的工作至关重要并导致您丢失所有进度的文件?我们为您提供了一些最好的免费硬盘恢复软件,以帮助您恢复意外删除的文件,以解决您的文件删...
- Studio 中文版:数据救援神器,误删 / 分区损坏 / RAID 恢复一键找回
-
Studio中文版:数据救援神器,误删/分区损坏/RAID恢复一键找回当文件意外删除、分区损坏,或RAID阵列崩溃时,一款可靠的数据恢复工具往往能挽回关键损失。R-Studio中文版...
- 你值得拥有的11款Linux数据恢复工具
-
如果你使用的是Linux操作系统,那么你一定想知道一旦硬盘崩溃的话又该如何保存和恢复数据。其实,现在有很多Linux数据恢复工具可以让我们摆脱数据安全的困扰。小编已经为各位准备好了一些最好的Linux...
- 误删文件内容怎么恢复(误删文件内容怎么恢复回来)
-
在日常使用电脑的过程中,误删文件的情况时有发生。无论是由于操作失误还是病毒攻击,误删文件都会给我们带来不小的困扰。幸运的是,随着技术的发展,误删文件恢复已不再是难题。本文将介绍几款国内外知名的误删...
- u盘如何恢复删除的文件?推荐5款u盘数据恢复软件!
-
在日常生活与工作中,U盘作为便捷的数据存储载体,频繁用于传输和保存各类重要文件。然而,误删文件的情况却时有发生,无论是珍贵的照片、重要的工作文档,还是精心制作的视频,一旦删除,都可能带来不小的麻烦。...
- 怎么恢复删除的数据?5种有效的数据恢复方法汇总!
-
在数字化办公与生活的时代,电脑里的每一份数据都承载着重要信息。然而,一个误操作就可能导致数据被删除,无论是尚未保存的重要文档,还是珍藏多年的照片,都可能瞬间“消失”。但其实,数据删除并不意味着永久丢...
- u盘删除文件怎么找回?5个数据恢复工具汇总,助你巧妙恢复数据!
-
在日常使用U盘的过程中,误删文件的情况时有发生,重要的工作文档、珍贵的照片视频一旦消失,难免让人焦急万分。别担心,只要选对数据恢复工具,被删除的数据仍有找回的可能。下面就为你汇总5款实用的数据...
- Linux下恢复误删文件:思路+实践(linux删除如何恢复)
-
周五篮球群里有人问误删文件了怎么恢复,得知是ext4文件系统之后我推荐了ext4magic这个工具,然后又有人提到了xfs的话怎么办,正好前几天看到DaveChinner在邮件列表里提到了这个问题,...
- 苹果放大招!不用虚拟机了,Mac直接跑Linux容器,开发者效率翻倍
-
苹果这次真给开发者送福利了!今天凌晨(6月10日),苹果在官宣的Containerization框架直接炸了技术圈——Mac现在能原生运行Linux容器镜像了!这可不是虚拟机那种“套娃”方案,而是基...
- 7 款老牌经典软件,值得收藏(经典老歌软件)
-
Calibrehttps://calibre-ebook.com/Calibre是一个电脑电子书管理软件。肯定有人说了,电子书还要管理?那当然了。它的功能更强大的让你想象不到,首先它可以导入PDF,...
- 神仙级的免费开源电子书阅读器,还支持听书功能
-
神仙级的免费开源电子书阅读器,还支持听书功能,极空间部署『KoodoReader』哈喽小伙伴们好,我是Stark-C~前段时间不是给大家分享的电子书管理工具『TaleBook』嘛~,然后就有粉丝私信...
- 如何在Ubuntu系统中重置root密码(ubuntu忘记密码重置root密码命令)
-
很多人有个问题,就是喜欢把密码设置得很长很复杂,结果谁也没防住,却成功防住了自己ヽ(.ˇдˇ;)ノ对于现代人,特别是年轻人,都有过忘记密码的经历吧。在这篇文章中,我们来了解如何在Ubuntu1...
- 5款功能强大的PDF阅读器,让PDF阅读更轻松
-
分享5款功能强大的PDF阅读器,拥有丰富的PDF阅读工具,支持PDF文档划线、笔记、标记等操作,让PDF阅读更轻松!1.嗨动PDF编辑器一款实用的PDF处理软件,不仅可以阅读PDF文档,还能直接编辑、...
- 上班摸鱼利器! 免费好用的电子书阅读器,NAS轻松部署Koodo Reader
-
哈喽,大家好我是生活爱好者。笔者也是一名小说爱好者,平时用手机用某信读书,会员也开了,在家看体验也不错,但是上班的时候,在工作快速完成之后,想摸个鱼用手机就不太方便啦,作为爱折腾的人,必须要工作认真,...
- 一周热门
- 最近发表
- 标签列表
-
- linux一键安装 (31)
- linux运行java (33)
- ln linux (27)
- linux 磁盘管理 (31)
- linux 内核升级 (30)
- linux 运行python (28)
- linux 备份文件 (30)
- linux 网络测试 (30)
- linux 网关配置 (31)
- linux jre (32)
- linux 杀毒软件 (32)
- linux语法 (33)
- linux博客 (33)
- linux 压缩目录 (37)
- linux 查看任务 (32)
- 制作linux启动u盘 (35)
- linux 查看存储 (29)
- linux乌班图 (31)
- linux挂载镜像 (31)
- linux 软件源 (28)
- linux题目 (30)
- linux 定时脚本 (30)
- linux 网站搭建 (28)
- linux 远程控制 (34)
- linux bind (31)