当前位置:首页 > 物联网 > 网络协议
[导读]   我们为什么会需要NTP?它的结构又是什么,又该如何搭建?有人说NTP这种协议可以让你所有主机上的时钟保持同步。到底具体如何,我们一起来看看吧!   网络时间协议(NTP)用来同步网络

  我们为什么会需要NTP?它的结构又是什么,又该如何搭建?有人说NTP这种协议可以让你所有主机上的时钟保持同步。到底具体如何,我们一起来看看吧!

  网络时间协议(NTP)用来同步网络上不同主机的系统时钟。所有受管理的主机可以与一台名为NTP服务器的指定时间服务器同步时间。另一方面,NTP服务器则与任何公共NTP服务器或者你所选择的任何服务器同步自己的时间。所有NTP管理的设备其系统时间同步时可以精确到毫秒级。

  在企业环境下,如果企业不想为NTP流量打开防火墙,就有必要搭建一台内部的NTP服务器,让员工可以使用内部服务器,而不是公共NTP服务器。我们在本教程中将介绍如何将CentOS系统配置成NTP服务器。在具体介绍细节之前,不妨先来了解NTP概念。

  我们为何需要NTP?

  由于制造方面的差异,所有(非原子)时钟并不完全以一样的速度运行。有些时钟往往走得快点,而有些时钟走得慢点。所以经过一段很长的时间后,一个时钟的时间与另一个时钟逐渐发生偏差,导致所谓的“时钟漂移”或“时间漂移”。为了尽量减小时钟漂移影响,使用NTP的主机应该定期与指定的NTP服务器进行联系,保持时钟同步。

  不同主机之间的时间同步对计划备份、入侵检测日志、分布式任务调度或事务簿记之类的事务而言很重要,甚至可能是监管合规所需要的一个要求。

  NTP层次结构

  NTP时钟以分层层次结构来加以组织。该层次结构中的每一层被称为层(stratum)。层这个概念描述了某机器距离权威时间源有多少个NTP跳。

  

  Stratum 0含有几乎没有时间漂移的时钟,比如原子钟。这些时钟无法通过网络直接使用。Stratum N(N 》 1)服务器对照Stratum N-1服务器同步其时间。Stratum N时钟可以通过网络彼此连接。

  NTP最多可支持层次结构中的15层。Stratum 16被认为不同步、无法使用。

  准备CentOS服务器

  现在不妨接着讲讲如何在CentOS上搭建NTP服务器。

  首先,我们需要确保服务器的时区正确设置。在CentOS 7中,我们可以使用TImedatectl命令来查看和更改服务器的时区(比如“Australia/Adelaide”)。

  # TImedatectl list-TImezones | grep Australia

  # TImedatectl set-timezone Australia/Adelaide

  # timedatectl

  

  接下来使用yum,安装必要的软件。

  # yum install ntp

  然后,我们将添加用来同步时间的全局NTP服务器。

  # vim /etc/ntp.conf

  server 0.oceania.pool.ntp.org

  server 1.oceania.pool.ntp.org

  server 2.oceania.pool.ntp.org

  server 3.oceania.pool.ntp.org

  默认情况下,NTP服务器日志保存在/var/log/messages中。如果你想使用自定义的日志文件,也可以指定该文件的位置。

  logfile /var/log/ntpd.log

  如果你果真选择使用自定义的日志文件,确保更改其所有权和SELinux上下文。

  # chown ntp:ntp /var/log/ntpd.log

  # chcon -t ntpd_log_t /var/log/ntpd.log

  现在启动NTP服务,确保它已添加到启动项。

  # systemctl restart ntp

  # systemctl enable ntp

  验证NTP服务器时钟

  我们可以使用ntpq命令,检查本地服务器的时钟如何通过NTP实现同步。

  

  下面这张表解释了上述输出列。

  

  控制对NTP服务器的访问

  在默认情况下,NTP服务器允许来自所有主机的入站查询。如果你想过滤入站NTP同步连接,可以在防火墙中添加一条规则,以过滤流量。

  # iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 123 -j ACCEPT

  # iptables -A INPUT -p udp --dport 123 -j DROP

  该规则将允许来自192.168.1.0/24的NTP服务器(经由端口UDP/123),拒绝来自其他所有网络的流量。你可以更新规则以符合自己的要求。

  配置NTP客户端

  1. Linux

  NTP客户端主机需要ntpdate程序包来对照服务器同步其时间。可以使用yum或apt-get,很容易安装该程序包。安装该程序包后,运行带服务器IP地址的命令。

  # ntpdate 《server-IP-address》

  如果是基于RHEL和Debian的系统,命令完全一样。

  2. Windows

  如果你使用Windows,在日期和时间设置下寻找“Internet时间”。

  3. 思科设备

  如果你想同步设备的时间,可以从全局配置模式使用下面这个命令。

  # ntp server 《server-IP-address》

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

首先,每个人都需要了解Linux并非一开始就很困难,但是要达到一定的熟练水平确实很困难。 因此,许多初学者很容易失去学习方向和思路。 那您如何在没有基础的情况下学习Linux? 让我们看一下Linux的学习方法和内容,以...

关键字: centos debian fatora Linux ubuntu

  我们过度的依赖网络时间,一直都相信着网络里的计算机都有精确的时间。然而我们不知道的是计算机时间与NTP时间往往很多都是不一致的对于一些独立运行的系统不会有什么太大的影响,对于一个有着多种相互

关键字: ntp snmp

  在温哥华举行的IROS大会上,计算机视觉专家、斯坦福AI Lab&Vision Lab主任李飞飞做了“A Quest for Visual Intelligence&rd

关键字: ntp 机器人编程

其实, Linux入门并不困难,但要达到一定的技能水平确实很困难。 因此,许多初学者很容易失去学习方向和想法。 那么,如何在没有基础的情况下学习Linux? 让我们看一下Linux的学习方法和内容,以帮助刚开始的新手。

关键字: centos debian Linux ubuntu fatora

在上一课中,我们在VMware软件中创建了一个虚拟机。 今天,我们可以在此Wanlimm虚拟机中安装Linux系统。 我们创建了虚拟机,并且Centos 7 ISO映像文件也被放置在虚拟机的虚拟光盘驱动器中。 现在如何安...

关键字: 7 centos Linux 虚拟机

在公司的服务器可以使用Santos系统之前,购买了Ubuntu云服务器。 突然发现引入Tomcat之后,Ubuntu服务器配置有所不同。

关键字: centos Linux tomcat

tab:输入订单或路径时,可以完成以下内容。 这是系统中最常用的组合键。 如果选项卡没有到达路径或命令,则表示没有这种类型的路径或命令,并且可以是全向的。 按三下

关键字: centos Linux tab

我的大学专业是计算机技术和应用,这意味着什么都学了,什么也学不到。 当我在学校的时候,我没有危机感。 我困惑了三年。 毕业后,我找到了一份不满意的工作,可惜世界上没有后悔药。

关键字: centos Linux 命令行

我经常不得不在工作中中断有问题的过程,通常,通过程序的关闭命令关闭进程,这是最安全的方法,但是有时我们无法使用close命令结束该过程,结束流程以结束有问题的流程。 结束进程有很多方法,一般是kill,killall,k...

关键字: centos kill Linux

我们经常糊涂地将Linux内核与Linux操作系统区分开。对 Redhat、CentOS和Ubuntu更加晕头转向。 今天,我们介绍Linux操作系统的相关概念、开发历史和总体架构。

关键字: centos Linux redhat ubuntu
关闭
关闭