NTP提供准确时间,首先要有准确的时间来源,这一时间应该是国际标准时间UTC。 NTP获得UTC的时间来源可以是原子钟 、天文台、卫星,也可以从Internet上获取。这样就有了准确而可靠的时间源。时间按NTP服务器的等级传播。按照离外部UTC 源的远近将所有服务器归入不同的Stratum(层)中。Stratum-1在顶层,有外部UTC接入,而Stratum-2则从Stratum-1获取时间,Stratum-3从Stratum-2获取时间,以此类推,但Stratum层的总数限制在15以内。所有这些服务器在逻辑上形成阶梯式的架构相互连接,而Stratum-1的时间服务器是整个系统的基础。计算机主机一般同多个时间服务器连接, 利用统计学的算法过滤来自不同服务器的时间,以选择最佳的路径和来源来校正主机时间。即使主机在长时间无法与某一时间服务器相联系的情况下,NTP服务依然有效运转。为防止对时间服务器的恶意破坏,NTP使用了识别(Authentication)机制,检查来对时的信息是否是真正来自所宣称的服务器并检查资料的返回路径,以提供对抗干扰的保护机制。NTP时间同步报文中包含的时间是格林威治时间,是从1900年开始计算的秒数。
工具/原料:
Debian
ntpdate
1使用root用户登录Debian系统,然后使用“apt-cache search ntpdate”查看本地源中是否包含ntpdate软件。如果包含可以进行下一步,如果不包含,请跟换其他的源地址并重新更新源。重新搜索确认ntpdate是否存在。
2使用“apt-get install ntpdate”命令,安装ntpdate软件。如果出现下图所示结果即表示安装成功。
3对于Debian的系统时间与NTP服务器时间同步,必须要有一个NTP服务器的IP地址。以下截图为国内常用NTP服务器IP地址。
4使用“ntpdate ntpsjtueducn ”和“ntpdate 2021202101”命令,都可以同步NTP服务器时间,并且两个命令代表同一台服务器。
5由于Debian系统长时间运行,经常性导致系统时间变慢,因此可以使用命名“crontab -e ”,并在文件中添加如下一行“/30 /usr/sbin/ntpdate timecuiteducn ”,表示没30分钟,系统自动同步一次时间。
6使用命令“date”查看系统当前时间,看看ntpdate命令是否生效。
背景我们有5台虚拟主机做时间同步,那就需要分别安装NTP服务。
主机地址为:
19216831 master
19216832 客户机1
19216833 客户机2
19216834 客户机3
19216835 客户机4
1、安装NTP
我们使用yum命令为每台机器安装ntp软件,命令如下:
yum install -y ntp
每台机器都需要安装,所以要分别在对应的主机上分别执行该命令。如下图
看到如下提示内容,则代表安装完成:
2、修改ntp的配置文件
vi /etc/ntpconf
首先我们要编辑主机的ntp服务配置文件,
我们去编辑master的机器的文件/etc/ntpconf
找到ntp时间同步的机器范围配置项
restrict 19216830 mask 2552552550 nomodify notrap
这里的意思代表,1921683的网段的机器都参与ntp的时间同步。
内容大致如下:
////存放ntp服务日志的位置
logfile /var/log/ntpdlog
////ntp依赖的互联网时间服务器地址,我们这里选择的是阿里云的时间服务器,当然还有很多其他时间服务器可以选择,看下这个地址 >
以上就是关于网络时间协议的NTP原理全部的内容,包括:网络时间协议的NTP原理、如何使用ntpdate来更新系统时间、NTP的安装与部署等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)