1. 如何搭建自己的NTP服务器
NTP服务器【Network Time Protocol(NTP)】是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。时间按NTP服务器的等级传播。按照离外部UTC源的远近把所有服务器归入不同的Stratum(层)中。
网络时间协议(NTP)用来同步网络上不同主机的系统时间。你管理的所有主机都可以和一个指定的被称为 NTP 服务器的时间服务器同步它们的时间。而另一方面,一个 NTP 服务器会将它的时间和任意公共 NTP 服务器,或者你选定的服务器同步。由 NTP 管理的所有系统时钟都会同步精确到毫秒级。
在公司环境中,如果他们不想为 NTP 传输打开防火墙,就有必要设置一个内部 NTP 服务器,然后让员工使用内部服务器而不是公共 NTP 服务器。在这个指南中,我们会介绍如何将一个 CentOS 系统配置为 NTP 服务器。在介绍详细内容之前,让我们先来简单了解一下 NTP 的概念。
为什么我们需要 NTP?
由于制造工艺多种多样,所有的(非原子)时钟并不按照完全一致的速度行走。有一些时钟走的比较快而有一些走的比较慢。因此经过很长一段时间以后,一个时钟的时间慢慢的和其它的发生偏移,这就是常说的 “时钟漂移” 或 “时间漂移”。为了将时钟漂移的影响最小化,使用 NTP 的主机应该周期性地和指定的 NTP 服务器交互以保持它们的时钟同步。
在不同的主机之间进行时间同步对于计划备份、入侵检测记录、分布式任务调度或者事务订单管理来说是很重要的事情。它甚至应该作为日常任务的一部分。
NTP 的层次结构
NTP 时钟以层次模型组织。层级中的每层被称为一个 stratum(阶层)。stratum 的概念说明了一台机器到授权的时间源有多少 NTP 跳。
Stratum 0 由没有时间漂移的时钟组成,例如原子时钟。这种时钟不能在网络上直接使用。Stratum N (N > 1) 层服务器从 Stratum N-1 层服务器同步时间。Stratum N 时钟能通过网络和彼此互联。
NTP 支持多达 15 个 stratum 的层级。Stratum 16 被认为是未同步的,不能使用的。
准备 CentOS 服务器
现在让我们来开始在 CentOS 上设置 NTP 服务器。
首先,我们需要保证正确设置了服务器的时区。在 CentOS 7 中,我们可以使用 timedatectl 命令查看和更改服务器的时区(比如,"Australia/Adelaide",LCTT 译注:中国可设置为 Asia/Shanghai )
代码如下:
# timedatectl list-timezones | grep Australia
# timedatectl set-timezone Australia/Adelaide
# timedatectl
继续并使用 yum 安装需要的软件
代码如下:
# yum install ntp
然后我们会添加全球 NTP 服务器用于同步时间。
代码如下:
# vim /etc/ntp.conf
server 0.oceania.pool.ntp.org
server 1.oceania.pool.ntp.org
server 2.oceania.pool.ntp.org
server 3.oceania.pool.ntp.org
默认情况下,NTP 服务器的日志保存在 /var/log/messages。如果你希望使用自定义的日志文件,那也可以指定。
复制代码
代码如下:
logfile /var/log/ntpd.log
如果你选择自定义日志文件,确保更改了它的属主和 SELinux 环境。
复制代码
代码如下:
# chown ntp:ntp /var/log/ntpd.log
# chcon -t ntpd_log_t /var/log/ntpd.log
现在初始化 NTP 服务并确保把它添加到了开机启动。
代码如下:
# systemctl restart ntp
# systemctl enable ntp
验证 NTP Server 时钟
我们可以使用 ntpq 命令来检查本地服务器的时钟如何通过 NTP 同步。
下面的表格解释了输出列。
remote 源在 ntp.conf 中定义。‘*’ 表示当前使用的,也是最好的源;‘+’ 表示这些源可作为 NTP 源;‘-’ 标记的源是不可用的。
refid 用于和本地时钟同步的远程服务器的 IP 地址。
st Stratum(阶层)
t 类型。 'u' 表示单播(unicast)。其它值包括本地(local)、多播(multicast)、广播(broadcast)。
when 自从上次和服务器交互后经过的时间(以秒数计)。
poll 和服务器的轮询间隔,以秒数计。
reach 表示和服务器交互是否有任何错误的八进制数。值 337 表示 100% 成功(即十进制的255)。
delay 服务器和远程服务器来回的时间。
offset 我们服务器和远程服务器的时间差异,以毫秒数计。
jitter 两次取样之间平均时差,以毫秒数计。
控制到 NTP 服务器的访问
默认情况下,NTP 服务器允许来自所有主机的查询。如果你想过滤进来的 NTP 同步连接,你可以在你的防火墙中添加规则过滤流量。
# iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 123 -j ACCEPT
# iptables -A INPUT -p udp --dport 123 -j DROP
该规则允许从 192.168.1.0/24 来的 NTP 流量(端口 UDP/123),任何其它网络的流量会被丢弃。你可以根据需要更改规则。
配置 NTP 客户端
1. Linux
NTP 客户端主机需要 ntpupdate 软件包来和服务器同步时间。可以轻松地使用 yum 或 apt-get 安装这个软件包。安装完软件包之后,用服务器的 IP 地址运行下面的命令。
代码如下:
# ntpdate
基于 RHEL 和 Debian 的系统命令都相同。
2. Windows
如果你正在使用 Windows,在日期和时间设置(Date and Time settings)下查找网络时间(Internet Time)。
3. Cisco 设备
如果你想要同步 Cisco 设备的时间,你可以在全局配置模式下使用下面的命令。
代码如下:
# ntp server
来自其它厂家的支持 NTP 的设备有自己的用于网络时间的参数。如果你想将设备和 NTP服务器同步时间,请查看设备的说明文档。
结论
总而言之,NTP 是在你的所有主机上同步时钟的一个协议。我们已经介绍了如何设置 NTP 服务器并使支持 NTP 的设备和服务器同步时间。
2. 如何将PC配置为时钟服务器即NTP
我就是这样用的,很好。
Windows(2003)下配置NTP时间服务器
一、服务端设置:
因为默认情况下,WINDOWS SERVER 2003 是作为NTP客户端工作的 ,所以必须通过修改注册表,以使系统作为NTP服务器运行。注意,工作之前请先备份注册表文件。
1、通过开始菜单,输入regedit命令后打开注册表设定画面,此时请一定备份尘山注册表文件。
2、修改以下选项的键值
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\
NtpServer内的“Enabled”设定为1,打开NTP服务器功岁敬能
3、修改以下键值
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\
AnnounceFlags设定为5,该设定强制主机将它自身宣布为可靠的时间源,从而使用内置的互补金属氧化物半导体(CMOS) 时钟。
4、在dos命令行执行以下命令,确保以上修改起作用
net stop w32time
net start w32time
推荐计划;如果该服务器和internet连接,那么为了避免服务器和internet上的ntp同步,最好追加以下配置:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\
NtpClient的“enable”设定为0 以防止作为客户端自动同步外界的时派雀中间服务
二、客户设置:
1、指定主时间服务器。在DOS方式输入“net time /setsntp:ntp.sjtu.e.cn”,这里我们指定ntp.sjtu.e.cn是主时间服务器,也可以是其它地址(210.72.145.44)。
2、自由设定XP时间同步间隔:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\
NtpClient的“SpecialPollInterval”默认设定为604800(或86400)
3. win7镞堕棿钖屾ユ湇锷″櫒璁剧疆
鍦ㄦ垜浠镞ュ父浣跨敤鐢佃剳镄勮繃绋嬩腑锛屾湁镞朵细鍙戠幇鐢佃剳镞堕棿涓嶅嗳纭锛岄偅链変粈涔埚姙娉曞彲浠ヨВ鍐宠繖涓闂棰桦憿锛熶笅闱㈠皬缂栨暀浣犲备綍镙″嗳镞堕棿銆
镓揿紑钬淲indows璁剧疆钬濓纴镣瑰嚮钬沧椂闂村拰璇瑷钬
镣瑰嚮钬滃尯锘颎濋”阃夋嫨钬滃叾浠栨棩链熴佹椂闂村拰鍖哄烟璁剧疆钬濓纸鎴栬呯洿鎺ユ墦寮鎺у埗闱㈡澘锛岀偣鍑烩沧椂阍熷拰鍖哄烟钬濓级
镣瑰嚮钬滆剧疆镞堕棿鍜屾棩链颎
镓揿紑钬沧椂闂村拰镞ユ湡钬濈獥鍙e悗阃夋嫨钬泪nternet镞堕棿钬濓纴铹跺悗镣瑰嚮钬沧洿鏀硅剧疆钬
镣瑰嚮链嶅姟鍣ㄥ悗镄勬柟妗呜緭鍏ntp.ntsc.ac.cn锛堢绣鍧涓哄浗瀹舵巿镞朵腑蹇 NTP 链嶅姟鍣锛,铹跺悗镣瑰嚮钬灭珛鍗虫洿鏂扳濓纴鍐岖偣鍑烩灭‘瀹气濆氨鍙浠ヤ简锛屼互钖巜indows绯荤粺灏变细浣跨敤镟存敼钖庣殑链嶅姟鍣ㄨ繘琛岃嚜锷ㄥ悓姝
闄や简涓婃柟灏忕紪鎻愪緵镄勭绣鍧鍙浠ヨ繘琛屾牎鍑嗘椂闂村栵纴浠ヤ笅缃戝潃閮藉彲浠ョ敤𨱒ュ悓姝ユ椂闂达细
涓锲 NTP 蹇阃熸巿镞舵湇锷
cn.ntp.org.cn
阒块噷浜戝叕鍏 NTP 链嶅姟鍣
ntp1.aliyun.com
ntp2.aliyun.com
ntp3.aliyun.com
ntp4.aliyun.com
ntp5.aliyun.com
ntp6.aliyun.com
ntp7.aliyun.com
鑵捐浜戝叕鍏 NTP 链嶅姟鍣
time1.cloud.tencent.com
time2.cloud.tencent.com
time3.cloud.tencent.com
time4.cloud.tencent.com
time5.cloud.tencent.com
4. 如何正确的建立windows的时间服务器
一、选择服务器基准时钟,可选择内部硬件时钟和外部NTP授时服务器。 (首先要保证自己的时间准确)x0dx0aA.配置 Windows 时间服务以使用服务器内部硬件时钟x0dx0a(1). 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。x0dx0a(2). 找到并单击下面的注册表子项:x0dx0a程序代码x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlagsx0dx0a(3). 在右窗格中,右键单击“AnnounceFlags”,然后单击“修改”。x0dx0a(4). 在“编辑 DWORD 值”的“数值数据”框中键入 A,然后单击“确定”。x0dx0aB.配置 Windows 时间服务以使用外部时间源x0dx0a(1). 指定时间源。为此,请按照下列步骤操作:x0dx0aa. 找到并单击下面的注册表子项:x0dx0a程序代码x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\NtpServerx0dx0ab. 在右窗格中,右键单击“NtpServer”,然后单击“修改”。x0dx0ac. 在“编辑值”的“数值数据”框中键入 Peers,然后单击“确定”。x0dx0a注意:Peers 是一个占位符,应替换为您的计算机从中获取时间戳的对等端列表(以空格分隔)。列出的每个 DNS 名称都必须是唯一的。必须在每个 DNS 名称后面附加 ,0x1。如果不在每个 DNS 名称后面附加 ,0x1,则在下面步骤中所做的更改将不会生效。x0dx0a(2). 选择轮询间隔。为此,请按照下列步骤操作:x0dx0aa. 找到并单击下面的注册表子项:x0dx0a程序代码x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClientx0dx0a\SpecialPollIntervalx0dx0ab. 在右窗格中,右键单击“SpecialPollInterval”,然后单击“修改”。x0dx0ac. 在“编辑 DWORD 值”的“数值数据”框中键入 TimeInSeconds,然后单击“确定”。x0dx0a注意:TimeInSeconds 是一个占位符,应替换为您希望各次轮询之间的间隔秒数。建议值为 900(十进制)。该值将时间服务器配置为每隔 15 分钟轮询一次。x0dx0a(3). 配置时间校准设置。为此,请按照下列步骤操作:x0dx0aa. 找到并单击下面的注册表子项:x0dx0a程序代码x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Configx0dx0a\MaxPosPhaseCorrectionx0dx0ab. 在右窗格中,右键单击“MaxPosPhaseCorrection”,然后单击“修改”。x0dx0ac. 在“编辑 DWORD 值”的“基数”框中单击以选择“十进制”。x0dx0ad. 在“编辑 DWORD 值”的“数值数据”框中键入 TimeInSeconds,然后单击“确定”。x0dx0a注意:TimeInSeconds 是一个占位符,应替换为适当的值,如 1 小时 (3600) 或 30 分钟 (1800)。您选择的值将因轮询间隔、网络状况和外部时间源而异。x0dx0ae. 找到并单击下面的注册表子项:x0dx0a程序代码x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\. 在右窗格中,右键单击“MaxNegPhaseCorrection”,然后单击“修改”。x0dx0ag. 在“编辑 DWORD 值”的“基数”框中单击以选择“十进制”。x0dx0ah. 在“编辑 DWORD 值”的“数值数据”框中键入 TimeInSeconds,然后单击“确定”。x0dx0a注意:TimeInSeconds 是一个占位符,应替换为适当的值,如 1 小时 (3600) 或 30 分钟 (1800)。您选择的值将因轮询间隔、网络状况和外部时间源而异。x0dx0a二、配置NTP授时服务器x0dx0a(1). 将服务器类型更改为 NTP。为此,请按照下列步骤操作:x0dx0aa. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。x0dx0ab. 找到并单击下面的注册表子项:x0dx0a程序代码x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\Typex0dx0ac. 在右窗格中,右键单击“Type”,然后单击“修改”。x0dx0ad. 在“编辑值”的“数值数据”框中键入 NTP,然后单击“确定”。x0dx0a(2). 将 AnnounceFlags 设置为 5。为此,请按照下列步骤操作:x0dx0aa. 找到并单击下面的注册表子项:x0dx0a程序代码x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlagsx0dx0ab. 在右窗格中,右键单击“AnnounceFlags”,然后单击“修改”。x0dx0ac. 在“编辑 DWORD 值”的“数值数据”框中键入 5,然后单击“确定”。x0dx0a(3). 启用 NTPServer。为此,请按照下列步骤操作:x0dx0aa. 找到并单击下面的注册表子项:x0dx0a程序代码x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServerx0dx0ab. 在右窗格中,右键单击“Enabled”,然后单击“修改”。x0dx0ac. 在“编辑 DWORD 值”的“数值数据”框中键入 1,然后单击“确定”。x0dx0a三、使配置即时生效x0dx0a1. 退出注册表编辑器。x0dx0a2. 在命令提示符处,键入以下命令以重新启动 Windows 时间服务,然后按 Enter:x0dx0a程序代码x0dx0anet stop w32time && net start w32timex0dx0a四、配置防火墙允许NTP访问x0dx0a如果你需要在服务器所在区域外访问该服务器的NTP服务,需要在防火墙上添加允许:x0dx0a程序代码x0dx0a名称 端口 协议 方向x0dx0aSNTP时间基准 123 UDP 入x0dx0a五、相关注册表说明x0dx0a注册表项 MaxPosPhaseCorrectionx0dx0a路径 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Configx0dx0a注意: 该项指定服务可进行的最大正时间校准量(以秒为单位)。如果服务确定某个更改幅度大于所需的幅度,它将记录一个事件。(0xFFFFFFFF 是一种特殊情况,它表示总是校准时间。)域成员的默认值是 0xFFFFFFFF。独立客户端和服务器的默认值是 54,000,即 15 小时。x0dx0a注册表项 MaxNegPhaseCorrectionx0dx0a路径 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Configx0dx0a注意: 该项指定服务可进行的最大负时间校准量(以秒为单位)。如果服务确定某个更改幅度大于所需的幅度,它将转而记录一个事件。(-1 是一种特殊情况,它表示总是校准时间。)域成员的默认值是 0xFFFFFFFF。独立客户端和服务器的默认值是 54,000,即 15 小时。x0dx0a注册表项 MaxPollIntervalx0dx0a路径 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Configx0dx0a注意: 该项指定系统轮询间隔所允许的最大间隔(单位是对数表示的秒)。尽管系统必须根据预定的间隔进行轮询,但是提供程序可以根据请求拒绝生成示例。域成员的默认值是 10。独立客户端和服务器的默认值是 15。x0dx0a注册表项 SpecialPollIntervalx0dx0a路径 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClientx0dx0a注意: 该项指定手动对等端的特殊轮询间隔(以秒为单位)。当启用 SpecialInterval 0x1 标志时,W32Time 将使用此轮询间隔而非操作系统确定的轮询间隔。域成员的默认值是 3,600。独立客户端和服务器的默认值是 604,800。x0dx0a注册表项 MaxAllowedPhaseOffsetx0dx0a路径 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Configx0dx0a注意: 该项指定 W32Time 尝试使用时钟速率调整计算机时钟的最大偏移量(以秒为单位)。当偏移量大于该速率时,W32Time 将直接设置计算机时钟。域成员的默认值是 300。独立客户端和服务器的默认值是 1。x0dx0a备注说明:x0dx0a1、一般操作:x0dx0a1)将时间服务器改成,授时中心地址(210。72。145。44)x0dx0anet time /setsntp:210.72.145.44x0dx0a2)启动时间同步服务x0dx0asc start w32timex0dx0a3)同步时间x0dx0aw32tm /resync (实际上,大多数情况下,光作第三步即可。) 2、启动前提:x0dx0a DOS启动Window Time服务: net stop w32time 、 net start w32timex0dx0a 要启动 Window Time 服务,必须先启动 Remote Access Connection Manager 服务。
5. 如何正确的建立windows的时间服务器
一、选择服务器基准时钟,可选择内部硬件时钟和外部NTP授时服务器。 (首先要保证自己的时间准确)
A.配置 Windows 时间服务以使用服务器内部硬件时钟
(1). 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
(2). 找到并单击下面的注册表子项:
程序代码
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlags
(3). 在右窗格中,右键单击“AnnounceFlags”,然后单击“修改”。
(4). 在“编辑 DWORD 值”的“数值数据”框中键入 A,然后单击“确定”。
B.配置 Windows 时间服务以使用外部时间源
(1). 指定时间源。为此,请按照下列步骤操作:
a. 找到并单击下面的注册表子项:
程序代码
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\NtpServer
b. 在右窗格中,右键单击“NtpServer”,然后单击“修改”。
c. 在“编辑值”的“数值数据”框中键入 Peers,然后单击“确定”。
注意:Peers 是一个占位符,应替换为您的计算机从中获取时间戳的对等端列表(以空格分隔)。列出的每个 DNS 名称都必须是唯一的。必须在每个 DNS 名称后面附加 ,0x1。如果不在每个 DNS 名称后面附加 ,0x1,则在下面步骤中所做的更改将不会生效。
(2). 选择轮询间隔。为此,请按照下列步骤操作:
a. 找到并单击下面的注册表子项:
程序代码
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient
\SpecialPollInterval
b. 在右窗格中,右键单击“SpecialPollInterval”,然后单击“修改”。
c. 在“编辑 DWORD 值”的“数值数据”框中键入 TimeInSeconds,然后单击“确定”。
注意:TimeInSeconds 是一个占位符,应替换为您希望各次轮询之间的间隔秒数。建议值为 900(十进制)。该值将时间服务器配置为每隔 15 分钟轮询一次。
(3). 配置时间校准设置。为此,请按照下列步骤操作:
a. 找到并单击下面的注册表子项:
程序代码
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
\MaxPosPhaseCorrection
b. 在右窗格中,右键单击“MaxPosPhaseCorrection”,然后单击“修改”。
c. 在“编辑 DWORD 值”的“基数”框中单击以选择“十进制”。
d. 在“编辑 DWORD 值”的“数值数据”框中键入 TimeInSeconds,然后单击“确定”。
注意:TimeInSeconds 是一个占位符,应替换为适当的值,如 1 小时 (3600) 或 30 分钟 (1800)。您选择的值将因轮询间隔、网络状况和外部时间源而异。
e. 找到并单击下面的注册表子项:
程序代码
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\
MaxNegPhaseCorrection
f. 在右窗格中,右键单击“MaxNegPhaseCorrection”,然后单击“修改”。
g. 在“编辑 DWORD 值”的“基数”框中单击以选择“十进制”。
h. 在“编辑 DWORD 值”的“数值数据”框中键入 TimeInSeconds,然后单击“确定”。
注意:TimeInSeconds 是一个占位符,应替换为适当的值,如 1 小时 (3600) 或 30 分钟 (1800)。您选择的值将因轮询间隔、网络状况和外部时间源而异。
二、配置NTP授时服务器
(1). 将服务器类型更改为 NTP。为此,请按照下列步骤操作:
a. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
b. 找到并单击下面的注册表子项:
程序代码
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\Type
c. 在右窗格中,右键单击“Type”,然后单击“修改”。
d. 在“编辑值”的“数值数据”框中键入 NTP,然后单击“确定”。
(2). 将 AnnounceFlags 设置为 5。为此,请按照下列步骤操作:
a. 找到并单击下面的注册表子项:
程序代码
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlags
b. 在右窗格中,右键单击“AnnounceFlags”,然后单击“修改”。
c. 在“编辑 DWORD 值”的“数值数据”框中键入 5,然后单击“确定”。
(3). 启用 NTPServer。为此,请按照下列步骤操作:
a. 找到并单击下面的注册表子项:
程序代码
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer
b. 在右窗格中,右键单击“Enabled”,然后单击“修改”。
c. 在“编辑 DWORD 值”的“数值数据”框中键入 1,然后单击“确定”。
三、使配置即时生效
1. 退出注册表编辑器。
2. 在命令提示符处,键入以下命令以重新启动 Windows 时间服务,然后按 Enter:
程序代码
net stop w32time && net start w32time
四、配置防火墙允许NTP访问
如果你需要在服务器所在区域外访问该服务器的NTP服务,需要在防火墙上添加允许:
程序代码
名称 端口 协议 方向
SNTP时间基准 123 UDP 入
五、相关注册表说明
注册表项 MaxPosPhaseCorrection
路径 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
注意: 该项指定服务可进行的最大正时间校准量(以秒为单位)。如果服务确定某个更改幅度大于所需的幅度,它将记录一个事件。(0xFFFFFFFF 是一种特殊情况,它表示总是校准时间。)域成员的默认值是 0xFFFFFFFF。独立客户端和服务器的默认值是 54,000,即 15 小时。
注册表项 MaxNegPhaseCorrection
路径 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
注意: 该项指定服务可进行的最大负时间校准量(以秒为单位)。如果服务确定某个更改幅度大于所需的幅度,它将转而记录一个事件。(-1 是一种特殊情况,它表示总是校准时间。)域成员的默认值是 0xFFFFFFFF。独立客户端和服务器的默认值是 54,000,即 15 小时。
注册表项 MaxPollInterval
路径 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
注意: 该项指定系统轮询间隔所允许的最大间隔(单位是对数表示的秒)。尽管系统必须根据预定的间隔进行轮询,但是提供程序可以根据请求拒绝生成示例。域成员的默认值是 10。独立客户端和服务器的默认值是 15。
注册表项 SpecialPollInterval
路径 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient
注意: 该项指定手动对等端的特殊轮询间隔(以秒为单位)。当启用 SpecialInterval 0x1 标志时,W32Time 将使用此轮询间隔而非操作系统确定的轮询间隔。域成员的默认值是 3,600。独立客户端和服务器的默认值是 604,800。
注册表项 MaxAllowedPhaseOffset
路径 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
注意: 该项指定 W32Time 尝试使用时钟速率调整计算机时钟的最大偏移量(以秒为单位)。当偏移量大于该速率时,W32Time 将直接设置计算机时钟。域成员的默认值是 300。独立客户端和服务器的默认值是 1。
备注说明:
1、一般操作:
1)将时间服务器改成,授时中心地址(210。72。145。44)
net time /setsntp:210.72.145.44
2)启动时间同步服务
sc start w32time
3)同步时间
w32tm /resync (实际上,大多数情况下,光作第三步即可。) 2、启动前提:
DOS启动Window Time服务: net stop w32time 、 net start w32time
要启动 Window Time 服务,必须先启动 Remote Access Connection Manager 服务。
6. 如何在 CentOS 中搭建 NTP 服务器
备 CentOS 服务器
现在让我们来开始在 CentOS 上设置 NTP 服务器。
首先,我们需要保证正确设置了服务器的时区。在 CentOS 7 中,我们可以使用 timedatectl 命令查看和更改服务器的时区(比如,"Australia/Adelaide",LCTT 译注:中国可设置为 Asia/Shanghai )
# timedatectl list-timezones | grep Australia
# timedatectl set-timezone Australia/Adelaide
# timedatectl
控制到 NTP 服务器的访问
默认情况下,NTP 服务器允许来自所有主机的查询。如果你想过滤进来的 NTP 同步连接,你可以在你的防火墙中添加规则过滤流量。
# iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 123 -j ACCEPT
# iptables -A INPUT -p udp --dport 123 -j DROP
该规则允许从 192.168.1.0/24 来的 NTP 流量(端口 UDP/123),任何其它网络的流量会被丢弃。你可以根据需要更改规则。
配置 NTP 客户端
1. Linux
NTP 客户端主机需要 ntpupdate 软件包来和服务器同步时间。可以轻松地使用 yum 或 apt-get 安装这个软件包。安装完软件包之后,用服务器的 IP 地址运行下面的命令。
# ntpdate <server-IP-address>
基于 RHEL 和 Debian 的系统命令都相同。
2. Windows
如果你正在使用 Windows,在日期和时间设置(Date and Time settings)下查找网络时间(Internet Time)。
3. Cisco 设备
如果你想要同步 Cisco 设备的时间,你可以在全局配置模式下使用下面的命令。
# ntp server <server-IP-address>
来自其它厂家的支持 NTP 的设备有自己的用于网络时间的参数。如果你想将设备和 NTP服务器同步时间,请查看设备的说明文档。
结论
总而言之,NTP 是在你的所有主机上同步时钟的一个协议。我们已经介绍了如何设置 NTP 服务器并使支持 NTP 的设备和服务器同步时间。
7. 如何在 Windows XP 中配置权威时间服务器
在Windows XP 中,Windows 时间服务使您计算机的内部时钟可与网络中的其他时钟自动同步。此同步的时间源取决于计算机是在 Active Directory 域中还是在工作组中。
当计算机为工作组的一部分时,您必须手动配置时间同步设置。通过配置使用一个公认精确的时间源的计算机上的 Windows 时间服务,您可以将某一台计算机确定为为本地可靠的时间源,可以使用特定的硬件也可使用 Internet 上的可用时间源。您可以手动配置工作组中的所有其他计算机以便将它们的时间与此本地时间源同步。
如果计算机属于 Active Directory 域,则 Windows 时间服务使用域控制器上可用的 Windows 时间服务自动配置其自身。Windows 时间服务将其域中的一个域控制器配置为一个可靠的时间源,并周期性地让其自身与此时间源同步。根据特定的需要您可以修改或覆盖这些设置。
如何同步域中计算机的时间单击开始,指向所有程序,指向附件,然后单击命令提示符。键入w32tm /resync,然后按 ENTER 键。如何使用外部源同步内部时间服务器单击开始,指向所有程序,指向附件,然后单击命令提示符。键入下列行,(其中的 peerlist 为合适时间源的域名系统 (DNS) 名称或 IP 地址的逗号分隔列表),然后按 ENTER 键。
w32tm /config /syncfromflags:manual /manualpeerlist:peerlist键入w32tm /config /update,然后按 ENTER 键。注意: 此过程最常见的用途是将内部网络的权威时间源与一个非常精确的外部时间源进行同步。不过,您可以在任何基于 Windows XP 的计算机上运行此过程。 如果计算机不能够到达服务器,此过程将失败而且将在事件日志中写入一项记录。 您可以使用 Internet 上的计算机来提供精确的时间信息。例如,可以使用 National Institute of Standards and Technology (NIST),它提供 NIST 网络时间服务。如何配置服务如何启动、停止、暂停、恢复或重新启动服务备注:必须以管理员或 Administrators 组成员的身份登录才能完成此步骤。如果您的计算机已联网,则网络策略设置也可能使您无法完成此过程。 单击开始,单击控制面板,单击“性能和维护”,单击管理工具,然后双击服务。在“详细信息”窗格中,单击该服务。在操作菜单上,单击开始、停止、暂停、恢复或重新启动。若要为某项服务配置启动参数,请右键单击此服务,单击属性,然后在单击开始前,在“启动参数”框中键入参数。这些设置只能使用一次并且不能够保存。反斜杠字符 (\) 作为转义符使用,对于参数中的每一个反斜杠字符都要键入两个反斜杠字符。 注意: 如果您停止、启动或重新启动一项服务,任何相关的服务也会受到影响。 更改默认服务设置可能会使某些重要服务不能正常运行。当您为配置为自动启动的服务更改启动类型和登录身份设置时务必格外谨慎。 如何配置服务的启动方式备注:必须以管理员或 Administrators 组成员的身份登录才能完成此步骤。如果您的计算机已联网,则网络策略设置也可能使您无法完成此过程。 单击开始,单击控制面板,单击“性能和维护”,单击管理工具,然后双击服务。右键单击要配置的服务,然后单击属性。单击常规选项卡,然后在“启动类型”框中,单击自动、手动或禁用。若要指定此服务可用来进行登录的用户帐户,请单击登录选项卡,然后使用下列操作方法之一: 若要指定此服务使用 LocalSystem 帐户,请单击“本地系统帐户”。 若要指定此服务使用 LocalService 帐户,请单击“此帐户”,然后键入 NT AUTHORITY\LocalService。 若要指定此服务使用 NetworkService 帐户,请单击“此帐户”,然后键入 NT AUTHORITY\NetworkService。 若要再指定一个帐户,请单击“此帐户”,单击浏览,然后在选择用户对话框中指定一个用户帐户。完成之后,单击确定。在密码框和“确认密码”框中键入用户帐户的密码,然后单击确定。注意: 更改默认服务设置可能会使某些重要服务不能正常运行。当您为配置为自动启动的服务更改启动类型和登录身份设置时务必格外谨慎。如果您启用或禁用一项服务后在启动计算机时出现问题,您可以在安全模式下启动计算机。接着您可以更改此服务配置或恢复默认配置。 如果您选中“允许服务与桌面交互”复选框,此服务就配置为在桌面上提供一个用户界面。只有在您单击“本地系统帐户”和此服务配置为与桌面交互时此功能才可用。疑难解答 如果Windows 时间服务被手动停止,则可能会发生客户机与服务器不同步的情况。为解决此问题,请启动 Windows 时间服务。
要启动 Windows 时间服务,请: 单击开始,指向所有程序,指向附件,然后单击命令提示符。键入net start w32time,然后按 ENTER 键。