热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

NTP服务器相关配置和使用

时间的重要性不言而喻,对于一些应用,如kerberos,oraclerac,需要同步系统时钟,而计算机的是以BIOS内部的时间为依据,由于BIOS内部芯片本身的问题,有时会出现BIOS时间与UTC时间得差异,而为了避免主机时间长期运行产生的时间偏差,ntp就应遇而生。本文主
时间的重要性不言而喻,对于一些应用,如kerberos, oracle rac,需要同步系统时钟,而计算机的是以BIOS内部的时间为依据,由于BIOS内部芯片本身的问题,有时会出现BIOS时间与UTC时间得差异,而为了避免主机时间长期运行产生的时间偏差,ntp就应遇而生。本文主要总结ntp的相关配置和使用。
   1 utc 
     在计算时间的时候,最准确的计算应该是使用"原子震荡周期"所计算的物理时钟( Atomic Clock, 也被称为原子钟 ),这也被定义为标准时间(International Atomic Time)。而我们常常看见的 UTC 即 Coordinated Universal Time (协和标准时间)就是利用原子钟 为基准所定义出来的正确时间。这个 UTC 标准时间以 GMT 这个时区为主!所以本地时间与 UTC 时间的时差就是本地时间与 GMT 时间的时差。
    2 NTP协议
   
网络时间协议(Network Time Protocol )是一种通过因特网服务于计算机时钟的时间同步协议。它提供了一种同步时间机制,能在庞大而复杂多样的因特网中用光速调整时间分配。它使用的是可返回时间设计,分布式子网内的时间服务器,能自我组织操作、分层管理配置,经过有线或无线方式同步子网内的逻辑时钟达到国家标准时间。此外,通过本地路由选择运算法则及时间后台程序,服务器可以重新分配标准时间。
  NTP 的设计带来了三种产品——时钟偏移、时间延迟及差量,它们都与指定参考时钟相关联。时钟偏移表示调整本地时钟与参考时钟相一致而产生的偏差数;时间延迟表示在指定时间内发送消息到达参考时钟的延时时间;差量表示了相对于参考时钟本地时钟的最大偏差错误。因为大多数主机时间服务器通过其它对等时间服务器达到同步,所以这三种产品中的每一种都有两个组成部分:其一是由对等决定的部分,这部分是相对于原始标准时间的参考来源而言;其二是由主机衡量的部分,这部分是相对于对等而言。每一部分在协议中都是独立维持的,从而可以使错误控制和子网本身的管理操作变得容易。它们不仅提供了偏移和延迟的精密测量,而且提供了明确的最大错误范围,这样用户接口不但可以决定时间,而且可以决定时间的准确度。
  NTP 源于时间协议和 ICMP 时间标志消息,但其设计更强调精确度和健壮性两个方面,即使是在有多路网关、延迟差量及不可靠网络上使用时。当前使用的最新版是 NTPv3 ,它与以前的版本兼容.
 
 3 NTP服务器的安装和设置
   3.1 检查需要的包
  [root@rhel ~]# rpm -qa |grep ntp --ntp的主要软件,包括配置文件和执行文件等。
ntp-4.2.4p8-2.el6.i686
ntpdate-4.2.4p8-2.el6.i686
fontpackages-filesystem-1.41-1.1.el6.noarch
[root@rhel ~]# rpm -qa|grep tzdata  -- time zone data ,主要提供各个时区对应的显示格式。
tzdata-java-2010l-1.el6.noarch
tzdata-2010l-1.el6.noarch
[root@rhel ~]# 
3.2配置文件
  (1) /etc/ntp.conf
ntp daemon的主要配置文件,不同版本可能放置的目录不同,RedHat 6 是放在/etc目录下,可以通过locate 查找。
root@rhel ~]# locate ntp.conf
/etc/.ntp.conf.swp
/etc/ntp.conf
/usr/share/man/man5/ntp.conf.5.gz
/usr/share/system-config-date/ntp.conf.templat
(2) /etc/sysconfig/clock  
每次开机会读取 该文件中包含的配置文件中默认色显示时间。会将ZONE对应的文件另存为/etc/localtime,可以从后面两个文件的内容看出。

[root@rhel Asia]# less /etc/sysconfig/clock 
# The time zone of the system is defined by the contents of /etc/localtime.
# This file is only for evaluation by system-config-date, do not rely on its
# contents elsewhere.
ZOnE="Asia/Shanghai"
(END) 
(3) /usr/share/zoneinfo目录
linux本身提供,www.linuxidc.com规定了各个主要时区的时间设置文件,如shanghai.
root@rhel Asia]# pwd
/usr/share/zoneinfo/Asia
[root@rhel Asia]# ls -al Shanghai 
-rw-r--r--. 3 root root 405 Aug 31  2010 Shanghai
[root@rhel Asia]# strings Shanghai 
TZif2
p ~h
!Iap"^J
#)Cp$Gg
TZif2
!Iap
#)Cp
CST-8
(4)[root@rhel Asia]# strings /etc/localtime
TZif2
p ~h
!Iap"^J
#)Cp$Gg
TZif2
!Iap
#)Cp
CST-8

(5)/bin/date
(6)/sbin/hwclock
因为biso时间和系统时间是分开的,用date调整了系统时间后,通过该命令将修改后的时间写入bios.
[root@rhel Asia]# whereis hwclock
hwclock: /sbin/hwclock /usr/sbin/hwclock /usr/share/man/man8/hwclock.8.gz
[root@rhel Asia]# hwclock
Sat 17 Sep 2011 06:50:23 PM CST  -0.229942 seconds
(7)/usr/sbin/ntpd
服务器daemon
(8)/usr/sbin/ntpdate
client 端用于连接ntp server.
[root@rhel Asia]# ntpdate 0.pool.ntp.org
17 Sep 19:20:32 ntpdate[16649]: step time server 115.181.34.4 offset 6404.317378 sec
(9)/usr/sbin/ntptrace
3.3/etc/ntp.conf配置文件

[root@rhel ~]# less /etc/ntp.conf
# For more information about this file, see the man pages
# ntp.conf(5), ntp_acc(5), ntp_auth(5), ntp_clock(5), ntp_misc(5), ntp_mon(5).


driftfile /var/lib/ntp/drift  


# Permit time synchronization with our time source, but do not
# permit the source to query or modify the service on this system.
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery


# Permit all access over the loopback interface.  This could
# be tightened as well, but to do so would effect some of
# the administrative functions.
restrict 127.0.0.1 
restrict -6 ::1


# Hosts on local network are less restricted.
#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap


# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
server 0.rhel.pool.ntp.org iburst
server 2.rhel.pool.ntp.org iburst


#broadcast 192.168.1.255 autokey        # broadcast server
#broadcastclient                        # broadcast client
#broadcast 224.0.1.1 autokey            # multicast server
#multicastclient 224.0.1.1              # multicast client
#manycastserver 239.255.254.254         # manycast server
#manycastclient 239.255.254.254 autokey # manycast client


# Undisciplined Local Clock. This is a fake driver intended for backup
# and when no outside source of synchronized time is available. 
#server 127.127.1.0     # local clock
#fudge  127.127.1.0 stratum 10  


# Enable public key cryptography.
#crypto


includefile /etc/ntp/crypto/pw


# Key file containing the keys and key identifiers used when operating
# with symmetric key cryptography. 
keys /etc/ntp/keys


# Specify the key identifiers which are trusted.
#trustedkey 4 8 42


# Specify the key identifier to use with the ntpdc utility.
#requestkey 8


# Specify the key identifier to use with the ntpq utility.
#controlkey 8


# Enable writing of statistics records.
#statistics clockstats cryptostats loopstats peerstats
server 0.pool.ntp.org iburst
(END) 
说明:
driftfile  /var/lib/ntp/drift   #由于ntp server本身的时间是依据bios芯片震动周期频率计算的,与上层ntp server不完全一致,两者频率的误差记录在该文件中。
                                   ps:必须是完整的路径;不能是链接文件,需要设置ntp有写入权限;数值单位为百万分之一秒(ppm).
[root@rhel ntp]# less drift
-395.982

restrict  [ip]  mask [netmask_ip] [parameter]
parameter参数主要有:
ignore: 拒绝所有类型的NTP联机
nomodify:不能更改ntp服务器的时间参数
noquery:不提供ntp的网络校时。
notrap:不提供trap远程事件登陆的功能。
notrust:拒绝没有认证的客户端。
ip段没带任何的parameter,即缺省情况下,表示“该ip或网段不受任何限制".

server ip or hostname [prefer] 上层ntp 服务器的。
 

[root@rhel ntp]# vim /etc/sysconfig/ntpd

# Drop root to id 'ntp:ntp' by default.
OPTIOnS="-u ntp:ntp -p /var/run/ntpd.pid -g"
SYNC_HWCLOCK=yes  #同步BIOS的时间。

推荐阅读
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 问题描述:域名已经备案,我全部都有,也在后台配置了,但是手机预览,还是请求失败,PC端是可以请求 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • Centos下安装memcached+memcached教程
    本文介绍了在Centos下安装memcached和使用memcached的教程,详细解释了memcached的工作原理,包括缓存数据和对象、减少数据库读取次数、提高网站速度等。同时,还对memcached的快速和高效率进行了解释,与传统的文件型数据库相比,memcached作为一个内存型数据库,具有更高的读取速度。 ... [详细]
  • 像跟踪分布式服务调用那样跟踪Go函数调用链 | Gopher Daily (2020.12.07) ʕ◔ϖ◔ʔ
    每日一谚:“Acacheisjustamemoryleakyouhaven’tmetyet.”—Mr.RogersGo技术专栏“改善Go语⾔编程质量的50个有效实践” ... [详细]
  • 什么是大数据lambda架构
    一、什么是Lambda架构Lambda架构由Storm的作者[NathanMarz]提出,根据维基百科的定义,Lambda架构的设计是为了在处理大规模数 ... [详细]
  • 1、打开etcsysconfiggrub,   #vimetcsysconfiggrub   内容如下: ... [详细]
  • Linux 服务器修改用户名
    Linux服务器修改用户名1、编辑名称vimetchostname2、保存编辑并退出wq3、重 ... [详细]
  • 对于一般的扩展包,我们一般直接pipinstallxxx即可安装,但是unrar直接安装后,发现并不能通过Python程序实现解压的功能& ... [详细]
  • linux6.5 配置邮件服务,centos 6.5服务器搭建邮件服务postfix和dovecot
    centos6.5搭建邮件服务postfix和dovecot------------------------------------------------安装DNS指定邮件交换记 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
author-avatar
Miany_201314
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有