如何在 CentOS 中设置 NTP 服务器
配置的环境及要求:
1假设在19216800网段内,要以IP为1921680240的Linux机器时间服务器。
21921680240服务器能上外网,能与比较权威的公网时间服务器同步
3同网段内的其他机器每小时自动向1921680240同步时间
一、安装
yum -y install ntp ntpdate
二、配置
21NTP server的主配置文件为/etc/ntpconf 现对/etc/ntpconf的各项进行说明
cp /etc/ntpconf /etc/ntpconfbak
vim /etc/ntpconf
2vi /etc/ntpconf(以下是ntpconf文件的内容)
#设置此服务器同上层服务器做时间同步的IP地址,prefer意味着首选IP地址
#经试验,下面的几个时间服务器速度还不错(默认配置即可)
server 2107214544 prefer
server 2182113042
server 0asiapoolntporg
server 1asiapoolntporg
server 2asiapoolntporg
#记录上次的NTP server与上层NTP server联接所花费的时间
driftfile /etc/ntp/drift
#设置默认策略为允许任何主机进行时间同步
restrict default ignore
#设置允许访问此时间服务器的时间服务的IP地址
#根据自己实际情况配置
restrict 127001
restrict 192168102 # 指定某台机器时间同步
restrict 19216800 mask 2552552550 #允许19216800/254子网内主机时间同步
restrict 0000 mask 0000 nomodify notrap #允许任何主机跟进行时间同步
#指定阶层编号为10,降低其优先度。
fudge 12712711 stratum 10
#设置ntp日志的path
statsdir /var/log/ntp/
#设置ntp日志文件
logfile /var/log/ntp/ntplog
三、维护
----添加为服务
chkconfig --level 345 ntpd on
----启动
service ntpd start
或
/etc/rcd/initd/ntpd start
----停止
service ntpd stop
或
/etc/rcd/initd/ntpd stop
----管理命令
ntpq –p #查看本机和上层服务器的时间同步结果
ntptrace #可以用来追踪某台时间服务器的时间对应关系
ntpdate IP #客户端要和NTP server进行时钟同步。
/var/log/ntp/ntplog #查看ntp日志
----------------------------------
开启防火墙端口
iptables -A INPUT -p udp -dport 123 -j ACCEPT
/etc/initd/iptables save
service iptables restart
四、配置客户端
测试同步:
ntpdate ip地址
设置自动同步:
echo “00 /1 root /usr/sbin/ntpdate 1921680240;/sbin/hwclock -w”>>/etc/crontab
每小时同NTP server进行一次时钟同步,并写入本机BIOS
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:ntpsjtueducn”,这里我们指定ntpsjtueducn是主时间服务器,也可以是其它地址(2107214544)。
2、自由设定XP时间同步间隔:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\
NtpClient的「SpecialPollInterval」默认设定为604800(或86400)
PS:
对话框中的“基数栏”选择到“十进制”上,显示的数字正是自动对时的间隔(以秒为单位),比如默认的604800就是由7(天)×24(时)×60(分)×60(秒)计算来的如果您想让WINODWS以多长时间自动对时,只要按这个公式算出具体的秒数
第一步,选择最好的NTP服务地址
具体命令为ntpdate -q IP地址或域名
广东地区NTP优选结果如下:
①time4cloudtencentcom
②server timeasiaapplecom
③server cnntporgcn
④server ntpaliyuncom
⑤server cnpoolntporg
检查BIOS主板时间的命令
hwclock -r
NTP服务启停命令
sudo systemctl start/stop ntpd
检查查看ntp服务器有无和上层ntp连通
ntpstat
查看ntp服务器与上层ntp的状态
ntpq -pn
===server选项格式===
server host [ key n ] [ version n ] [ prefer ] [ mode n ] [ minpoll n ] [ maxpoll n ] [ iburst ]
其中host是上层NTP服务器的IP地址或域名,随后所跟的参数解释如下所示:
◆ key: 表示所有发往服务器的报文包含有秘钥加密的认证信息,n是32位的整数,表示秘钥号。
◆ version: 表示发往上层服务器的报文使用的版本号,n默认是3,可以是1或者2。
◆ prefer: 如果有多个server选项,具有该参数的服务器优先使用。
◆ mode: 指定数据报文mode字段的值。
◆ minpoll: 指定与查询该服务器的最小时间间隔为2的n次方秒,n默认为6,范围为4-14。
◆ maxpoll: 指定与查询该服务器的最大时间间隔为2的n次方秒,n默认为10,范围为4-14。
◆ iburst: 当初始同步请求时,采用突发方式接连发送8个报文,时间间隔为2秒。
===同步硬件时钟===
ntp服务,默认只会同步系统时间。
如果想要让ntp同时同步硬件时间,可以设置/etc/sysconfig/ntpd文件,
在/etc/sysconfig/ntpd文件中,添加SYNC_HWCLOCK=yes这样,就可以让硬件时间与系统时间一起同步。
允许BIOS与系统时间同步,也可以通过hwclock -w 命令。
hwclock命令用来查询和设置硬件时钟。
hwclock -r 读取并打印硬件时钟
hwclock -s 将硬件时钟同步到系统时钟
hwclock -w 将系统时钟同步到硬件时钟
系统时钟与硬件时钟
在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的时钟。当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作。所有Linux相关指令与函数都是读取系统时钟的设定。
参考文档:
Linux服务器NTP客户端配置——https://wwwcnblogscom/paul8339/p/10059364html
NTP服务、客户端配置详解——https://blog51ctocom/u_11392081/1784080
0条评论