什么是NTP?

 

NTP全名“Network TimeProtocol”,即网络时间协议,是由RFC 1305定义的时间同步协议,用来在分布式时间服务器和客户端之间进行时间同步。

NTP基于UDP报文进行传输,使用的UDP端口号为123。使用NTP的目的是对网络内所有具有时钟的设备进行时钟同步,使网络内所有设备的时钟保持一致,从而使设备能够提供基于统一时间的多种应用。对于运行NTP的本地系统,既可以接收来自其他时钟源的同步,又可以作为时钟源同步其他的时钟,并且可以和其他设备互相同步。

 

为什么需要NTP服务器?

通过NTP的简介可以明白,NTP主要的作用就是同步时间,但是我们的计算机本来就可以通过晶体振荡器自己计时,为什么还需要从网络上获取时间呢?因为晶体振荡器会受温度、气压等外界因素影响,所以在工作过程中会产生误差。日积月累下来误差会越来越大,导致影响我们的任务正常工作,比如定时备份用户数据等类似重要的任务。那么我们的NTP服务器不也是计算机吗?我们获取它的时间不会存在网络延迟吗?我们知道我们使用的北京时间,但是中国的授时中心却在陕西省的中国科学院国家授时中心。那准确的时间是怎么传到我们的计算机中呢?

 

当在计算机做时间校准时,只要把网络延迟计算进去,最后修正这个同步过来的时间,降低误差,现在我们主要通过一个软件来做这个工作,在我们部署应用程序的服务器上,都会启动一个自动校准时间的服务,这个服务就是NTP,它可以保证每台机器的时间与时间服务器保持同步

 

怎么手动更改时区(不同时区的时间不一样)

更改时区

  • 使用timedatectl

[root@localhost ~]# timedatectl set-timezone Asia/Shanghai

  • 使用tzselect交互式修改时区

 

图中文字提醒,我们还需要修改.profile文件才行。于是继续修改,在终端输入:vim ~/.bash_profile,插入一条命令:TZ='Asia/Shanghai'; export TZ

保存退出之后,再输入source ~/.bash_profile

 

如何配置Linux主机向外时间服务器同步时间

步骤:

  • 使用:yum/dnf install chrony -y下载ntp服务
  • 更改配置文件,配置文件路径:vim /etc/chrony.cpnf
  • 添加NTP服务的地址:pool  *********(ntp服务器的地址) iburst

        可以是自己的NTP服务器也可以是国内常用的公开NTP时间服务器地址或域名

  • 重启NTP服务

        systemctl restart ntpd

  • 使用ntpdate获取时间

        ntpdate 服务器ip或者直接使用date命令

 

如何配置NTP服务器

同样的需要先下载chronyd服务再更改配置文件

local stratum 10这段取消注释

还有allow字段,在其下方添加允许哪个网段的ip可以向我获取时间

最后关闭防火墙或添加规则到防火墙列表

        关闭防火墙:systemctl stop firewalld

        添加NTP服务到防火墙规则:firewall-cmd --permanent --add-service=ntp

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐