中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 网络应用 > 网络技术
在局域网中设置Linux时间服务器
作者:佚名 时间:2007-08-13 20:40 出处:qqread 责编:月夜寒箫
              摘要:在局域网中设置Linux时间服务器

一 概述:

本文主要目的是简单介绍如何在局域网上设置一台Linux时间服务器与互联网上的时间服务器同步并且如何使局域网上其它Linux及Windows客户向该Linux时间服务器同步。

二 服务器设置 

首先说明我们如何设置LAN上的时间服务器同互联网上的第一或者第二级时间服务器同步来保证精确的时间。

1. 如何让LAN的时间服务器(第三级)与互联网上的时间服务器(第一或者第二级)同步

a. XNTP包,包含在大多数Linux CD里面。

主页在http://www.eecis.udel.edu/~ntp/

你只需要在/etc/ntp.conf中设置server和driftfile两项参数即可,server项你可以从上面的主页中找公共的时间服务器域名。例如

server rackety.udel.edu

server umd1.umd.edu

server lilben.tn.cornell.edu

driftfile /etc/ntp/drift

然后启动XNTPD后台程序

#/etc/rc.d/init.d/xntpd start

b. "getdate",随Slackware而来的小程序,推荐使用,大多数时候,我们对时间的精确性要求不是非常的苛刻,所以这个程序完全够用而且很方便。

下载ftp://metalab.unc.edu/pub/Linux/system/network/misc/getdate_rfc868-1.2.tar.gz

然后设置下面的scripts 取名为/usr/local/sbin/get-date.sh

#!/bin/sh

timehosts="otc2.psu.edu wwvb.erg.sri.com ntp.nasa.gov"

if /usr/local/bin/getdate -adjust 10 200 $timehosts > /dev/null; then

/sbin/clock --systohc

fi

现在可以设置cronjob每小时进行同步

0 0-23 * * * /usr/local/sbin/get-date.sh

2. 如何使得LAN上其它linux/windows客户与该台服务器同步

a. 如果该台时间服务器也是局域网上的Samba服务器,则对Windows来说,不需要安装任何时间同步软件,因为windows客户可以用

net time \timeserver /set /yes来与之同步。可以放该命令在startup

中自次启动windows时自动同步

net time 命令利用Netbios over TCP/IP协议来同步时间

但仅对Windows客户有效,Linux客户无法使用。

b. 如果服务器运行NTP后台服务程序,例如前面讲的XNTPD,则对

Windows:

可以安装下面的两个免费软件与服务器同步

http://home.att.net/~Tom.Horsley/ntptime.html (ntptime)

单一的后台程序,自动寻找LAN上的NTP服务器,可在控制面板中设置同步条件

http://nettime.sourceforge.net/ (Nettime)

支持NTP(udp/123) , time(udp/37), time(tcp/37)

Linux:

则可以用ntpdate(随XNTPD而来)运行作为cronjob 与 该局域网上的时间服务器同步。

c. 如果该台服务器使用getdate与互联网上时间服务器同步,则

你可以设置/etc/inetd.conf,打开time udp和time tcp服务,让linux/windows客户与之同步。对windows,你可以使用象上面介绍的Nettime软件。

对Linux客户,你可以用rdate -s 运行作为cronjob 与之同步

time stream tcp nowait root internal

time dgram udp wait.200 root internal

Linux下的rdate -s 命令使用time (37/tcp) , Nettime 你可以指定37/tcp或者37/udp

三 FAQ

1. 怎样确定net time用的是Netbios over TCP/IP?

在Samba服务器上运行tcpdump

# /usr/sbin/tcpdump host 192.168.1.3

(192.168.1.3是windows客户端的IP地址)

2. 怎样确定windows NTP客户ntptime正在后台与Linux NTP时间服务器同步?

在NTP服务器上运行

# tcpdump udp port 123

查看输出

默认是每五分钟ntptime向NTP服务器查询一次,你可以从主页上下载控制面板中的控制条件设置程序

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有