免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1185 | 回复: 0
打印 上一主题 下一主题

在Linux下假设ntp服务器 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-12-23 09:26 |只看该作者 |倒序浏览
在linux下,我们可以通过自带的NTP(Network Time Protocol)协议通过网络使自己的系统保持精确的时间。可用的公共时间服务器列表可以从下面的地址获取:
   

http://www.eecis.udel.edu/~mills/ntp/servers.html

什么是NTP
    NTP是用来使系统和一个精确的时间源保持时间同步的协议。建议大家在自己管理的网络中建立至少一台时间服务器来同步本地时间,这样可以使得在不同的系统上处理和收集日志和管理更加容易。
    同样,也有很多免费的NTP客户端可供Windows使用,你可以用它们来同步你windows的系统时间。
下载和安装
    本文介绍如何在RedHat9.0上安装时间服务器,如果想获得NTP的最新版本,你可以下载tar包自己编译,这里只介绍RPM方式安装的NTP服务软件。
    RedHat9.0带的NTP版本是4.1.2,你可以用下面的命令查看是否已经安装了这个软件包:
    # rpm -qa|grep ntp
    chkfontpath-1.9.7-1
    ntp-4.1.2-0.rc1.2
    如果发现没有安装,请从光盘上安装这个软件。执行下面命令安装NTP的RPM包:
    # rpm -ivh ntp-4.1.2-0.rc1.2.i386.rpm
/etc/ntp.conf
    这是NTP的主要配置文件,里面设置了你用来同步时间的时间服务器的域名或者IP地址,下面是到互联网同步时间的最基本的配置:
    首先定义我们喜欢的时间服务器:
     server ntp.research.gov
     server otherntp.research.gov
    接下来,我们设置上面两台服务器的访问权限,在这个例子中我们不允许它们修改或者查询我们配置在Linux上的NTP服务器
    restrict ntp.research.gov mask 255.255.255.255 nomodify notrap noquery
    restrict otherntp.research.gov mask 255.255.255.255 nomodify notrap noquery
    掩码255.255.255.255是用来限制远程NTP服务器的掩码地址。
    接下来设置允许访问我们时间服务器的客户机地址,通常这些服务器都应该位于我们自己局域网内。请注意,配置中noquery已经去掉了:
    restrict 192.168.0.0 mask 255.255.255.0 notrust nomodify notrap
    在上例中,掩码地址扩展为255,因此从192.168.0.1-192.168.0.254的服务器都可以使用我们的NTP服务器来同步时间。
    最后,也是最重要的是默认的限制配置要从你配置文件中删除,否则它将覆盖你所有的配置选项,你将发现如果不删除该配置,你的时间服务器将只能和自己通讯。如果ntp.conf中有以下一行,请将它注释:
    # restrict default ignore
    保存你的配置文件,然后对每个你在ntp.conf里配置的时间服务器执行2编查询命令:
    # ntpdate ntp.research.gov
    27 Jun 10:12:01 ntpdate[25475]: adjust time server ntp.research.gov offset -0.127154 sec
    # ntpdate ntp.research.gov
    27 Jun 10:12:06 ntpdate[25478]: adjust time server ntp.research.gov offset 0.010008 sec
使NTP进程自启动
    为了使NTP服务可以在系统引导的时候自动启动,执行:
    # chkconfig ntpd on
    启动/关闭/重启NTP的命令是:
    # /etc/init.d/ntpd start
    # /etc/init.d/ntpd stop
    # /etc/init.d/ntpd restart
    切记每次修改了配置文件后都需要重新启动服务来使配置生效。可以使用下面的命令来检查NTP服务是否启动,你应该可以得到一个进程ID号:
    # pgrep ntpd
检查时间服务器是否正确同步
    使用下面的命令检查时间服务器同步的状态:
    # ntpq -p
    输出:
     remote          refid       st t when poll reach  delay   offset   jitter
==============================================================================
-jj.cs.umb.edu   gandalf.sigmaso  3 u   95 1024  377  31.681  -18.549    1.572
milo.mcs.anl.go  ntp0.mcs.anl.go  2 u  818 1024  125  41.993  -15.264    1.392
-mailer1.psc.edu ntp1.usno.navy.  2 u  972 1024  377  38.206   19.589   28.028
-dr-zaius.cs.wis ben.cs.wisc.edu  2 u  502 1024  357  55.098    3.979    0.333
+taylor.cs.wisc. ben.cs.wisc.edu  2 u  454 1024  347  54.127    3.379    0.047
-ntp0.cis.strath harris.cc.strat  3 u  507 1024  377 115.274   -5.025    1.642
*clock.via.net   .GPS.            1 u  426 1024  377 107.424   -3.018    2.534
ntp1.conectiv.c  0.0.0.0         16 u    - 1024    0   0.000    0.000  4000.00
 
    一个可以证明同步问题的证据是所有远程服务器的jitter值是4000并且delay和reach的值是0。
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
LOCAL(0)        LOCAL(0)        10 l    -   64    7    0.000    0.000   0.008
ntp-cup.externa 0.0.0.0         16 u    -   64    0    0.000    0.000 4000.00
snvl-smtp1.trim 0.0.0.0         16 u    -   64    0    0.000    0.000 4000.00
nist1.aol-ca.tr 0.0.0.0         16 u    -   64    0    0.000    0.000 4000.00
    可能的原因有:
        配置文件中的restrict default ignore没有被注释
        有防火墙阻断了与server之间的通讯
    此外每次重启NTP服务器之后大约要3-5分钟客户端才能与server建立正常的通讯连接,否则你执行ntpdate ip的时候将返回:
    27 Jun 10:20:17 ntpdate[21920]: no server suitable for synchronization found


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/83758/showart_1736006.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP