编程之路刚刚开始,错误难免,希望大家能够指出。

领导要求,要4台机器时钟同步,上网查了查,主要看了看ptp和ntp,感觉ntp就够用,索性就直接上手ntp了。

以下内容纯属最基础的内容,只适合第一次接触ntp并且需求简单的朋友。

就我当前项目来介绍下ntp:多台计算机因为某些原因对时间的同步性比较重视,所以需要不间断的去同步各个计算机的时间,而ntp就是使网络中的各个计算机时间同步的一种协议,其精度在局域网内可达0.1ms,在互联网上绝大多数的地方其精度可以达到1-50ms。

第一步:安装ntp

aptitude install npt (此处用apt-get 也可以,但建议使用aptitude,就我目前知道的是aptitude安装后的软件卸载时能够将其的依赖包也卸载掉,而apt-get的卸载无法办到,两者建议不要混用。)

第二步:查看安装是否成功

service --status-all

/etc/ntp.conf是ntp的配置文件,第一次接触最好在编辑之前先备份,你懂得。

第三步:了解/etc/ntp.conf设置

  简单的来说,该文件其实就两关键词restrict和server,前者是用来做限制的,后者是用来连接上层服务器(ntp一共16层,第16层无法同步)

  restrict [ 客户端IP ]  mask  [ IP掩码 ]  [参数]

    “客户端IP” 和 “IP掩码” 如果使用default关键字,表示对所有的计算机进行控制,常见的参数如下:

    ignore:拒绝连接到NTP服务器

    nomodiy: 客户端不能更改服务端的时间参数,但是客户端可以通过服务端进行网络校时。

    noquery: 不提供客户端的时间查询

    notrap: 不提供trap远程登录功能,trap服务是一种远程时间日志服务。

    notrust: 客户端除非通过认证,否则该客户端来源将被视为不信任子网 。

    nopeer: 提供时间服务,但不作为对等体。

    kod: 向不安全的访问者发送Kiss-Of-Death报文。

  server [上层服务器的IP或域名]   [参数]

其中host是上层NTP服务器的IP地址或域名,随后所跟的参数解释如下所示:

    key: 表示所有发往服务器的报文包含有秘钥加密的认证信息,n是32位的整数,表示秘钥号。

    prefer: 如果有多个server选项,具有该参数的服务器有限使用。

    minpoll: 指定与查询该服务器的最小时间间隔为2的n次方秒,n默认为6,范围为4-14。

    maxpoll:  指定与查询该服务器的最大时间间隔为2的n次方秒,n默认为10,范围为4-14。

    iburst: 当初始同步请求时,采用突发方式接连发送8个报文,时间间隔为2秒。

第四步:编辑/etc/ntp.conf

  编辑之前一定要知道ntp的每层设备都是服务器,下面说的服务端和客户端都是相对而言的。

  先上服务端

  

  

  客服端

  

第五步:运行ntp

  服务端和客户端的配置文件在编辑完保存后就可以重新启动ntp了:

  /etc/init.d/ntp restart

  重启时间可能会比较长,大概在5分钟左右。

  可以通过ntpq -p来查看所有作为时钟源校正过本地NTP服务器时钟的上层NTP服务器

  

  各个选项的解释:

    remote: 远程NTP服务器的IP地址或域名,带 “*” 的表示本地NTP服务器与该服务器同步。

    refid: 远程NTP服务器的上层服务器的IP地址或域名。

    st: 远程NTP服务器所在的层数。

    t: 本地NTP服务器与远程NTP服务器的通信方式,u: 单播; b: 广播; l: 本地。

    when: 上一次校正时间与现在时间的差值。

    poll: 本地NTP服务器查询远程NTP服务器的时间间隔。

    reach: 是一种衡量前8次查询是否成功的位掩码值,377表示都成功,0表示不成功。

    delay: 网络延时,单位是10的-6次方秒。

    offset: 本地NTP服务器与远程NTP服务器的时间偏移。

    jitter: 查询偏差的分布值,用于表示远程NTP服务器的网络延时是否稳定,单位为10的-6次方秒

  还可以通过ntptrace查看本地NTP服务器的在第几层。

  

  

  最后提一下ntpd和ntpdate(教程为ntpd):

   ntpd在实际同步时间时是一点点的校准过来时间的,最终把时间慢慢的校正对。而ntpdate不会考虑其他程序是否会阵痛,直接调整时间。简单的说就是ntpd是校准时间,ntpdate是调整时间。
   不建议大家使用ntpdate,原因摘抄其他前辈的笔记:

  第一,这样做不安全。ntpdate的设置依赖于ntp服务器的安全性,攻击者可以利用一些软件设计上的缺陷,拿下ntp服务器并令与其同步的服务器执行某些消耗性的任务。由于ntpdate采用的方式是跳变,跟随它的服务器无法知道是否发生了异常(时间不一样的时候,唯一的办法是以服务器为准)。
  第二,这样做不精确。一旦ntp服务器宕机,跟随它的服务器也就会无法同步时间。与此不同,ntpd不仅能够校准计算机的时间,而且能够校准计算机的时钟。
  第三,这样做不够优雅。由于是跳变,而不是使时间变快或变慢,依赖时序的程序会出错(例如,如果ntpdate发现你的时间快了,则可能会经历两个相同的时刻,对某些应用而言,这是致命的)。

debian 安装使用NTP的更多相关文章

  1. 使用unetbootin制作Debian安装U盘

    有时需要在没有光驱的裸机上安装系统,这时我们可以使用unetbootin制作一个系统安装U盘. 1.在网上下载好vmlinuz,initrd.gz,boot.img.gz. 2.然后使用unetboo ...

  2. Debian 安装下载工具软件

    Debian 安装下载工具软件 1.下载BT种子Torrent文件 Linux下载种子文件肯定不能使用迅雷了,推荐一款叫做qBittorrent的P2P下载软件,目前在Ubuntu中使用很广泛,同样D ...

  3. Ubuntu/Debian 安装lxml的正确方式

    lxml是Python的一个库,主要用于处理XML和HTML. 最近需要用lxml,但是在Ubuntu上直接pip安装失败,研究了半天终于找到了正确安装方法,记录在此. 由于Ubuntu和Debian ...

  4. VritualBox 中Debian安装tool

    VritualBox 中Debian安装tool 环境 Debian 8 VirtualBox 配置Debian的源 #163源 deb http://mirrors.163.com/debian/ ...

  5. Debian安装 ss-qt5

    Kali Linux 基于 Debian ,安装时得参考 Debian 安装方法,用 Ubuntu 的方法装不上.官方安装指南这样说: Debian安装指南 然而在执行 sudo apt-get in ...

  6. debian安装后sudo命令不能用的解决方法

    注:转载他人 且试用过了,我的debian版本是debian8.2 64X debian安装完之后发现sudo命令不能用 找了半天发现是没有安装sudo 得了,进入root安包,炸开他,apt-get ...

  7. Debian 安装 vmware-tools 手记

    debian 8.5 源 deb http://ftp.de.debian.org/debian jessie main http://mirrors.163.com/.help/debian.htm ...

  8. Centos7安装搭建NTP服务器和NTP客户端同步时间

    NTP简介: NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议. 在计算机的世界里,时间非常地重要 例如:对于火箭发射这种科研活动,对时间的 ...

  9. 基于【CentOS-7+ Ambari 2.7.0 + HDP 3.0】搭建HAWQ数据仓库——安装配置NTP服务,保证集群时间保持同步

    一.所有节点上使用yum安装配置NTP服务yum install ntp -y 二.选定一台节点作为NTP server, 192.168.58.11修改/etc/ntp.conf vim /etc/ ...

随机推荐

  1. Animation和Animator 的区别

    此文章转载于极视学堂!!!! ①Animation和Animator 虽然都是控制动画的播放,但是它们的用法和相关语法都是大有不同的. Animation 控制一个动画的播放,而Animator是多个 ...

  2. Annotation方式配置AOP

    package com.xk.spring.kp04_aop.aop.s02_annotation; public interface IStudentService { public void sa ...

  3. flask上传下载文件(一)下载

    简介: 作为一个可以和用户交互的web应用,必然要有数据导出功能,导出到excel是比较常用的方式. flask有一个扩展叫flask-excel,可能不适合中国人用,因为没有看到修改列名的功能.也许 ...

  4. bootstrap学习参考网站

    ----https://www.     evget    .com   /article /

  5. Linux如何从零开始搭建nfs服务器(centOS6)

    Server端 1.打印系统版本 cat /etc/redhat-release uname -r uname -m 2.检查是否安装NFS服务 rpm -aq nfs-utils rpcbind L ...

  6. JavaScript示例

    <!DOCTYPE html> <html> <head> <title>单击按钮事件示例</title> <script langu ...

  7. DevExpress ASP.NET v18.2新功能详解(四)

    行业领先的.NET界面控件2018年第二次重大更新——DevExpress v18.2日前正式发布,本站将以连载的形式为大家介绍新版本新功能.本文将介绍了DevExpress ASP.NET Cont ...

  8. SQL--数据--基本操作

    数据操作 新增数据 有两种方案方案1:给全表字段插入数据,不需要指定字段列表:要求数据的值出现的顺序必须与表中设计的字段出现的顺序一致:凡是非数值数据,都需要使用引号(建议是单引号)包裹 insert ...

  9. 使用ext httpProxy代理获取列表但列表展示不全的问题解决

    今天项目中遇到一个奇葩的事情,使用ext的jsonstore通过httpproxy代理想要获取一个列表,页面显示是有五条数据的但是却只展示了2条,于是各种排查,后台确定无误后开始检查前台,发现浏览器中 ...

  10. IONIC和Cordova安装、打包踩过的坑

    1.问题1:直接执行npm install -g cordova ionic,因为网络原因,执行不成功 解决方案:将npm映射到淘宝服务器:npm install -g cnpm --registry ...