服务器多了,时间是否一致以及是否准备就显得格外重要,虽然这个问题总是被忽略,但是统一时间是很有必要的,因为时间问题导致服务出现问题也是司空见惯,本文简单介绍Linux下ntp的快速搭建和使用。

CentOS NTP服务器安装与配置 http://www.linuxidc.com/Linux/2014-01/95258.htm

Linux实战部署系列之NTP服务器 http://www.linuxidc.com/Linux/2013-11/92275.htm

多种操作系统NTP客户端配置 http://www.linuxidc.com/Linux/2013-10/91928.htm

搭建企业级NTP时间服务器 http://www.linuxidc.com/Linux/2014-02/97205.htm

1、  安装ntp

yum -y install ntp(直接yum安装即可)

2、  修改ntp.conf的配置

1)vim /etc/ntp.conf

①  配置方法一:只允许192.168.100.0网段的客户机进行时间同步

在restrict default kod nomodify notrap nopeer noquery(表示默认拒绝所有IP的时间同步)之后增加一行:

restrict 192.168.100.0 mask 255.255.255.0 nomodify notrap

②  配置方法二:允许任何ip的客户机都可以进行时间同步

将restrict default kod nomodify notrap nopeer noquery修改为如下行:

Restrict default nomodify

权限的设定主要以restrict这个参数来设定,主要的语法为:

restrict  IP地址  mask 子网掩码 参数

其中IP可以是IP地址也可以是default,default是指所有的IP

参数主要有以下几个:

ignore :关闭所有的 NTP 联机服务

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

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

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

2)、用server这个参数设定上级时间服务器,语法为:

server  IP地址或域名 [prefer]

IP地址或域名就是我们指定的上级时间服务器,如果 Server 参数最后加上 prefer,表示我们的 NTP 服务器主要以该部主机时间进行校准。

3)、解决NTP服务器校准时间时的传送延迟

使用driftfile参数设置:

driftfile 文件名

在与上级时间服务器联系时所花费的时间,记录在driftfile参数后面的文件内。

注意:  driftfile 后面接的文件需要使用完整的路径文件名,不能是链接文件,并且文件的权限需要设定成 ntpd守护进程可以写入。

/usr/share/zoneinfo  这个目录下存放的是各个时区对应的设定文件

/etc/localtime        本地系统时间设定文件

/etc/sysconfig/clock  本机时区设定文件

为了使NTP服务可以在系统引导的时候自动启动,执行:

chkconfig ntpd on

将同步好的时间写到CMOS里边

vim /etc/sysconfig/ntpd

SYNC_HWCLOCK=yes

切记每次修改配置文件后重新启动服务使配置生效,可使用如下命令来检查NTP服务是否启动,启动的话可以得到一个进程ID号;

pgrep ntpd

使用下面的命令检查时间服务器同步的状态

ntpq -p

用ntpstat也可以查看一些同步状态信息,

安装完毕客户端需要过5-10分钟才能从服务器端更新时间

客户端设置:

crontab -e

加入一行

*/15 * * * * /usr/sbin/ntpdate 192.168.100.102(服务器端IP)



       WINDOWS2003服务器NTP服务搭建


  1. 进入到服务器,依次点击:开始---运行---regedit

    然后点击确定。

    win2003服务器如何安装NTP服务器

  2. 2

    依次展开:HKEY_LOCAL_MACHINE、SYSTEM、CurrentControlSet、Services、W32Time、TimeProviders、NtpServer

    在NtpServer项的右侧键值ENablied,将默认的0

    改为1,1为启用NTP服务器。

    win2003服务器如何安装NTP服务器

    win2003服务器如何安装NTP服务器

  3. 3

    依次展开:HKEY_LOCAL_MACHINE、SYSTEM、CurrentControlSet、Services、W32Time、Config

    找到Config项右侧的AnnounceFlags。

    把默认的10改为5

    5的意思就是自身为可靠的时间源。

  4. win2003服务器如何安装NTP服务器

    win2003服务器如何安装NTP服务器


  5. 找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\LocalClockDispersion Decimal  这一项将值10改成0  表示客户端从NTP服务器获取时间同步不用验证。

  6. wKiom1jfFeejLml9AADOGW8aOEI512.jpg

  7. 修改完以上之后关闭注册表编辑器

  8. 再:开始---运行---cmd---确定

    win2003服务器如何安装NTP服务器

  9. 在命令提示符中输入:net stop w32Time回车

  10. 等待NTP服务停止

    然后再输入:net start w32Time回车

    启动NTP服务

    win2003服务器如何安装NTP服务器

    win2003服务器如何安装NTP服务器


  11. 测试,同步成功!

  12. win2003服务器如何安装NTP服务器

    win2003服务器如何安装NTP服务器


  13. 附加:

  14.  cisco 交换机设置时区、时间、同步日志本地时间等操作 


  15. Core-Switch-1#show clock        #查看交换机时间日期

  16. Core-Switch-1#show ntp status     #查看交换机ntp服务状态

  17. Core-Switch-1#conf t

  18. Core-Switch-1(config)# clock timezone GMT 8    #设置交换机时区,GMT 8为中国时区

  19. Core-Switch-1(config)#service timestamps debug datetime msec localtime show-timezone   #设置debug记录的时间格式,否则显示有问题 msec显示毫秒级,show-timezone显示时区

  20. Core-Switch-1(config)#service timestamps log datetime msec localtime show-timezone  

  21. #设置系统日志记录时间格式,否则显示日志有问题 msec显示毫秒级,show-timezone显示时区

  22. Core-Switch-1(config)#ntp source loopback 0  #指定发送NTP服务的源接口,一般指定为交                       换机的回环接口loopback 0,此项可以不用设定,默认即可。

  23. Core-Switch-1# clock set 13:51:00 Sep 7 2011    #手动设置交换机日期时间

  24. 或通过NTP服务器时间同步:

  25. Core-Switch-1#ntp server 192.168.0.254 key 8888   #注:8888是指ntp服务器的Key值,此项需在NTP服务器上注册表中设置,如果设置为0表示无需认证,直接设置ntp server 172.16.3.254,

  26. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\LocalClockDispersion Decimal一项将值10改成0 


  27. Core-Switch-1#wr

  28. Core-Switch-1#sh log

  29. 默认情况下日志消息不包括日期和时间戳。

  30. service timestamps {debug | log } uptime

  31. service timestamps {debug | log } datetime [mesc] [localtime] [show-timezone] [year]

  32. debug 参数 在调试输出时包括时间戳
    log 参数 在每种日志消息中添加一个时间戳

  33. uptime 在消息中包括路由器开机以来的时间
    0w2d: #SYS-5-CONFIG_I : Configured from console by console
    0w2d    开机后02

  34. datetime 显示准确的日期和时间 UTC 格式   标准格式 MM DD HH:MM:SS

  35. datetime后面可以跟一些参数

  36. mesc 消息中包括毫秒信息
    localtime 显示基于本地配置的时区时间
    show-timezone 输出包括时区名称
    year 输出包括年份信息

  37.  

在Cisco网络系统中的NTP配置NTP命令解析:

wKioL1jfV8OxUXnnAAL6ErIHkls942.jpg 

    --ntp update-calendar: 该全局命令使NTP周期性地更新交换机的日历

    --show ntp status: 执行模式命令,用于显示交换机NTP信息,它可以表明该交换机的NTP对等                 体进行时钟同步还是通过NTP服务器进行同步。

    --show ntp association [detail]:执行模式命令显示与NTP有关的信息,如*询周期等。detail                          可选项



NTP服务排错:

wKioL1jfVhfy_gOxAAMKZ5ePdNM614.jpg

上面是一个debug的输出,从中看到了自server的数据包显示为stratum 0,代表服务器没有同步,既然上游服务器没有同步,本地服务器就更不能同步了。



  1. 交换机未设置时间前显示的日志:

  2. #sh log

  3. 4w0d: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/6, changed state to up

  4. 4w0d: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/6, changed state to down

  5. 4w0d: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/6, changed state to up

  6. 4w1d: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/5, changed state to down

  7. 4w1d: %LINK-3-UPDOWN: Interface FastEthernet0/5, changed state to down

  8. 4w1d: %LINK-3-UPDOWN: Interface FastEthernet0/5, changed state to up

  9. 4w1d: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/5, changed state to up

  10. 4w1d: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/3, changed state to down

  11. 4w1d: %LINK-3-UPDOWN: Interface FastEthernet0/3, changed state to down

  12. 4w1d: %LINK-3-UPDOWN: Interface FastEthernet0/3, changed state to up

  13. 4w1d: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/3, changed state to up

  14.  

  15. 交换机设置时间后显示日志如下:

  16. #sh log

  17. .Sep  7 05:59:22: %SYS-6-CLOCKUPDATE: System clock has been updated from 13:59:22 BJ Wed Sep 7 2011 to 05:59:22 UTC Wed Sep 7 2011, configured from console by wht on vty2 (172.16.100.10).

  18. .Sep  7 13:59:23: %SYS-6-CLOCKUPDATE: System clock has been updated from 05:59:23 UTC Wed Sep 7 2011 to 13:59:23 GMT Wed Sep 7 2011, configured from console by wht on vty2 (172.16.100.10).

  19. .Sep  7 13:59:24: %SYS-5-CONFIG_I: Configured from console by wht on vty2 (172.16.100.10)

  20. .Sep  7 13:58:00: %SYS-6-CLOCKUPDATE: System clock has been updated from 14:00:05 GMT Wed Sep 7 2011 to 13:58:00 GMT Wed Sep 7 2011, configured from console by wht on vty2 (172.16.100.10).