(笔记)【NTP系列:07】NTP时间同步配置总结:Windows(W32Time)作为NTP时钟源服务端,Linux作为客户端
一、NTP工作模式(客户端/服务器模型)
NTP服务端:Windows(W32Time)系统
NTP客户端:Linux嵌入式控制板
二、NTP服务端配置
步骤如下: 1. 禁用windows防火墙或者设置防火墙入站规则(两者二选一)。 方法1.禁用防火墙步骤: 控制面板—>系统和安全—>windows防火墙—>启用或关闭防火墙 关闭专用网络和公共网络的防火墙。 方法2.设置防火墙入站规则步骤: 控制面板—>系统和安全—>windows防火墙—>高级设置—>入站规则(右键)—>新建规则—>端口—>下一步—>UDP,特定本地端口:123—>起名NTP—>完成。 打开Windows注册表:win+R->输入regedit->运行。
2. 修改Windows注册表: 修改注册表[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeConfig]中AnnounceFlags的值为5.AnnounceFlags值的含义: 5:强制时钟源为本地CMOS时钟 a:强制时钟源为本地CMOS时钟 修改注册表[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpServer]中Enabled的值为1.即使能NTP服务器. 修改[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpClient]中Enabled的值为0.即关闭NTP客户端. 退出注册表。
3. 打开管理员命令行:右击开始—>windows PowerShell(管理员) 在命令行中执行如下命令: 先停止服务: net stop w32time。 重新打开服务: net start w32time。如果提示:Windows Time 服务已经启动成功。则配置ok.
4. 回环测试ntp服务器是否运行: 在命令行中执行:w32tm /stripchart /computer:127.0.0.1" 如果出现10:41:02 error: 0x80072746类似这种字样表示不通,服务器没有运行。 如果出现13:59:00, d:+00.0003901s o:+00.0000687s [ * ]类似这种字样表示服务器运行正常。
三、NTP客户端配置
1. 确认ntpd.service服务文件内容(以下为默认配置,无需更改)
root@XX:/lib/systemd/system# cat ntpd.service [Unit] Description=Network Time Service After=network.target [Service] Type=forking PIDFile=/run/ntpd.pid ExecStart=/usr/sbin/ntpd -u ntp:ntp -p /run/ntpd.pid -g [Install] WantedBy=multi-user.target
2. 确认ntpdate.service服务文件内容(以下为默认配置,无需更改)
root@XX:/lib/systemd/system# cat ntpdate.service [Unit] Description=Network Time Service (one-shot ntpdate mode) Before=ntpd.service [Service] Type=oneshot ExecStart=/usr/bin/ntpdate-sync silent RemainAfterExit=yes [Install] WantedBy=multi-user.target
3. NTP手动同步测试
使用"ntpdate ntp_server_ip"命令,观察时间是否同步成功,若不能同步成功,可使用”ntpdate -d ntp_server_ip“查看同步失败原因。
注:当ntpd服务运行时,是不能正确执行ntpdate的,此时需要关闭ntpd服务。
若手动同步不成功,可参考文章:(笔记)【NTP系列:02】NTP使用常见问题记录 - tdyizhen1314 - 博客园 (cnblogs.com)
4. NTP自动同步测试
首先需要修改ntp唯一的配置文件”/etc/ntp.conf“,新增红色字体部分,其中:
tos maxdist 30: 将容忍时钟偏差修改至30,单位为S,该值默认为1.5. 当偏差大于此限定值时,ntp不会同步时钟。 tinker panic 0: 当服务器时钟与本地时钟偏差大于1000时,ntp客户端会视为此偏差过大,不会同步时钟,且会退出ntpd服务,设置为0可忽略此限制。 server 172.16.1.200 iburst minpoll 6 maxpoll 6:设置ntp服务器地址。 logfile /var/log/ntp.log: 设置ntp日志文件路径,也可以不设置,仅是调试时使用。
配置完成后,参考如下:
root@AM437x-Droidsurg:~# cat /etc/ntp.conf # This is the most basic ntp configuration file # The driftfile must remain in a place specific to this # machine - it records the machine specific clock error driftfile /var/lib/ntp/drift # This should be a server that is close (in IP terms) # to the machine. Add other servers as required. # Unless you un-comment the line below ntpd will sync # only against the local system clock. # # # tos maxdist 30 tinker panic 0 # # server time.server.example.com server 172.16.1.200 iburst minpoll 6 maxpoll 6 # # Using local hardware clock as fallback # Disable this when using ntpd -q -g -x as ntpdate or it will sync to itself server 127.127.1.0 fudge 127.127.1.0 stratum 14 # # Defining a default security setting restrict default # logfile /var/log/ntp.log
此时可使用系统命令启动服务,如下:
systemctl stop ntpd #停止ntpd服务 systemctl start ntpd #启动ntpd服务 systemctl status ntpd #输出ntpd服务状态
此时可手动人为调整ntp服务端或客户端的时钟,观察是否能自动同步成功。【注:时间同步需要时间,并不是立即同步(除非修改时钟后,重启ntpd服务),而是需要等待若干分钟时间,如15分钟,有可能更长时间。只有当ntp客户端判断自身处于:Leap Indicator: unknown (clock unsynchronized),才会立将NTP报文中的时间同步至系统时钟】
注:若ntpd自动同步不成功,可参考文章:(笔记)【NTP系列:05】NTP时间同步失败:Windows(W32Time)作为NTP时钟源服务端,Linux作为客户端 - tdyizhen1314 - 博客园 (cnblogs.com)
相关文章
- 【技术种草】cdn+轻量服务器+hugo=让博客“云原生”一下
- CLB运维&运营最佳实践 ---访问日志大洞察
- vnc方式登陆服务器
- 轻松学排序算法:眼睛直观感受几种常用排序算法
- 十二个经典的大数据项目
- 为什么使用 CDN 内容分发网络?
- 大数据——大数据默认端口号列表
- Weld 1.1.5.Final,JSR-299 的框架
- JavaFX 2012:彻底开源
- 提升as3程序性能的十大要点
- 通过凸面几何学进行独立于边际的在线多类学习
- 利用行动影响的规律性和部分已知的模型进行离线强化学习
- ModelLight:基于模型的交通信号控制的元强化学习
- 浅谈Visual Source Safe项目分支
- 基于先验知识的递归卡尔曼滤波的代理人联合状态和输入估计
- 结合网络结构和非线性恢复来提高声誉评估的性能
- 最佳实践丨云开发CloudBase多环境管理实践
- TimeVAE:用于生成多变量时间序列的变异自动编码器
- 具有线性阈值激活的神经网络:结构和算法
- 内网渗透之横向移动 -- 从域外向域内进行密码喷洒攻击