NTP时间服务器配置

loading 分享 2026-9-1 下载文档

NTP时间服务器学习笔记

引言

NTP时间服务器就是提供时间授权(对时)的服务器,它可以用Linux或Windows系统来架设。总来说NTP时间服务器理解和配置都相对简单,我们只在此提醒一点NTP通信端口采用udp的 123端口。以下我们以Windows 2008/Redaht5.4作为时间服务器为服务端,Linux和Windows系统为客户端来学习一下。

服务端

Windows NTP服务器

默认情况下,独立服务器WINDOWS SERVER 2008是作为NTP客户端工作的 ,所以必须通过修改注册表,以使系统作为NTP服务器运行。工作之前请先备份注册表文件。 1、修改以下选项的键值

HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\W32Time\\TimeProviders\\NtpServer内的[Enabled]设定为1。打开NTP服务器功能(默认是不开启NTP Server服务,除非电脑升级成为域控制站)。 2、修改以下键值

HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\W32Time\\Config\\AnnounceFlags设定为5.该设定强制主机将它自身宣布为可靠的时间源,从而使用内置的互补金属氧化物半导体 (CMOS) 时钟。如果要采用外面的时间服务器就用默认的a值即可. # 210.72.145.44 (国家授时中心服务器IP地址) 3、修改以下键值

HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\W32Time\\Parameters\\Type内的[Type]设定为NTP。

4、重启Win32Time服务:先关闭 windows time 服务,再开启该服务。可以在“管理工具”的“服务”界面下完成,也可以以 DOS 方式输入“net stop w32time”、“net start w32time”。 至此,已完成服务器端设定.

注意:

1) 通讯端口:123 必须打开

2) Windows Time服务设置为\自动\模式,以便重启系统后,继续提供时间授权。 3)时区不能进行同步,时区是在安装系统时选择或者配置修改。

命令行模式下启动服务: net stop w32time 停止服务 / net start w32time 启动服务

Linux NTP服务器

1、安装NTP软件版本 # rpm -qa | grep ntp ntp-4.2.2p1-9.el5_3.2 chkfontpath-1.10.1-1.1

没有安装,加载光盘进行安装。 2、编辑配置文件 修改二个文件即可。 # vi /etc/ntp.conf

# Please consider joining the pool (http://www.pool.ntp.org/join.html). server 192.168.2.151 server 192.168.2.152

# Hosts on local network are less restricted.

restrict 192.168.2.0 mask 255.255.255.0 nomodify notrap # 解释

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

校时。

? notrap 的真正含义是不响应ntp mode6控制消息模式 。 ntp mode6 通常是使用

ntpq来监视ntpd操作。

? nomodify和notrap其实使用这两个参数的目的 是从安全角度考虑 防止恶意修改

ntp服务端事件参数 3、重启NTP服务

#chkconfigntpd on #开机启动服务

#/etc/init.d/ntpdstart 或者 service ntpd start #启动服务 #/etc/init.d/ntpdstop 或者 servicentpd stop #停止服务 #/etc/init.d/ntpdrestart #重启服务 4、等待后同步

重启服务后 需要于ntp服务器端同步 通常ntp同步是温和的,不会一次同步成功,同步完 慢慢缩小时间差,这是一个原因。通常要等5分钟左右!! 5、状态查看

检查服务器同步状态:

# netstat-an |grep 123 #123端口开放 #ntpq –p

查看日志

# tail -f /var/log/message

6、可能出现的问题及解决方案

1)如果出现 jitter的值 为4000则是防火墙或者网络问题 解决方法:service iptables stop 关闭防火墙 2)如果客户端更新时间时报错入下:

3 Dec 16:26:42ntpdate[12489]: the NTP socket is in use, exiting 因为客户端也启动的ntp服务的缘故,

所以关闭后就可以了 service ntpd stop

3)nux 下防火墙规则如果极严格的话可能会影响 ntpd 对时,打开 sport 123 即可(假设 OUTPUT 链全 ACCEPT):

iptables -I INPUT -pudp -m udp --sport 123 -j ACCEPT

客户端

Windows 客户端

命令行下:w32tm /resync 桌面同步:

客户端的设定更改注册表即可

HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\W32Time\\TimeProviders\\NtpClient SpecialPollInterval 值修改成十进制43200 (单位为秒,43200为12小时) SpecialPollTimeRemaining 值修改成[时间同步服务器],0 如:192.168.1.1,0 客户端设置完成.说法二:

HKEY_LOCAL_MACHINE\\SYSTEM\\ControlSet001\\Services\\W32Time\\Parameters\\NtpServer 修改时间服务器地址。(修改NTP地址;注:后面的0X1 一定不能删掉)windows 2008 是0x9 说明:SpecialPollInterval 定时间同步时间,如:10分钟同步一次。

脚本同步

基于w32tm /resync 命令只返回本条命令是否成功执行参数,不考虑网络以及服务端的情况。 因为只从脚本无法实现自动主备服务器进行切换。但利用iTimeSync 这个小程序可以实现。 脚本

******************************************************************************* 脚本一 @echo off

REG ADD HKEY_LOCAL_MACHINE\\SYSTEM\\ControlSet001\\Services\\W32Time\\Parameters /v NtpServer /t REG_SZ /d \net stop w32time net start w32time w32tm /resync

脚本二 @echo off

w32tm /config /update /manualpeerlist:\net stop w32time net start w32time w32tm /resync

******************************************************************************* 脚本说明

测试脚本使用环境平台:

Windows2008R2_64bit、Windows2003_32bit、Windows2003R2_32bit、Windows2003_64bit 注意:

1)根据实际环境修改IP地址。

2)不同的Windows平台,只需修改NTPServer路径:在注册表中的位置

Linux 客户端

手动同步

同步命令:# ntpdte IP地址 #确保ntpd服务器开启。/etc/init.d/ntpd start

若出现:the NTP socket is in use, exiting,停用一下 ntpd服务/etc/init.d/ntpd stop 或在 # setup 进入服务关闭ntpd服务。 指定NTP地址:

# vi /etc/ntp.conf 中指定NTP服务器 IP地址 # 可以指定多个 开机启用服务

开机启动ntp服务:

chkconfig --level ntpd 35 on 定时同步

linux 默认3-5分钟同步,可以定时同步:

1、创建自己的一个crontab文件,随便建立一个文件date.cron,首先可以使用任何文本 编辑器建立一个新文件,然后向其中写入需要运行的命令或脚本和要定期执行的时间。 vi date.cron加入下面要运行的命令和要定期执行的时间

*/10 * * * * /usr/sbin/ntpdate 192.168.1.32 # 10分钟同步一次 # minute hour day month dayofweek command

minute - 从0到59的整数 hour - 从0到23的整数

day - 从1到31的整数 (必须是指定月份的有效日期) month - 从1到12的整数 (或如Jan或Feb简写的月份)

dayofweek - 从0到7的整数,0或7用来描述周日 (或用Sun或Mon简写来表示) command - 需要执行的命令(可用as ls /proc >> /tmp/proc或 执行自定义脚本的命令) 0 3 * * * /home/dbbackup/db1backup.sh backup


NTP时间服务器配置.doc 将本文的Word文档下载到电脑
搜索更多关于: NTP时间服务器配置 的文档
相关推荐
相关阅读