配置树莓派3和局域网NTP服务器实现内网时间校准

一、配置局域网NTP服务器

1.安装ntp-4.2.8p5-win32-setup.exe

下载地址:https://www.meinbergglobal.com/english/sw/ntp.htm
按默认步骤安装即可。

2.修改配置文件ntp.conf

配置文件默认路径为:C:\Program Files (x86)\NTP\etc\ntp.conf
去掉

[plain] view plain copy

  1. #server 127.127.1.0
  2. #fudge 127.127.1.0 stratum 12

前的#
保存

笔者改完后的配置文件内容如下

[plain] view plain copy

  1. # NTP Network Time Protocol
  2. # **** ATTENTION ****: *You have to restart the NTP service when you change this file to activate the changes*
  3. # PLEASE CHECK THIS FILE CAREFULLY AND MODIFY IT IF REQUIRED
  4. # Configuration File created by Windows Binary Distribution Installer Rev.: 1.27  mbg
  5. # please check http://www.ntp.org for additional documentation and background information
  6. # restrict access to avoid abuse of NTP for traffic amplification attacks
  7. # see http://news.meinberg.de/244 for details
  8. restrict default noquery nopeer nomodify notrap
  9. restrict -6 default noquery nopeer nomodify notrap
  10. # allow status queries and everything else from localhost
  11. restrict 127.0.0.1
  12. restrict -6 ::1
  13. # if you need to allow access from a remote host, you can add lines like this:
  14. # restrict <IP OF REMOTE HOST>
  15. # Use drift file
  16. driftfile "D:\Program Files (x86)\NTP\etc\ntp.drift"
  17. # your local system clock, could be used as a backup
  18. # (this is only useful if you need to distribute time no matter how good or bad it is)
  19. server 127.127.1.0
  20. # but it should operate at a high stratum level to let the clients know and force them to
  21. # use any other timesource they may have.
  22. fudge 127.127.1.0 stratum 12
  23. # Use a NTP server from the ntp pool project (see http://www.pool.ntp.org)
  24. # Please note that you need at least four different servers to be at least protected against
  25. # one falseticker. If you only rely on internet time, it is highly recommended to add
  26. # additional servers here.
  27. # The ‘iburst‘ keyword speeds up initial synchronization, please check the documentation for more details!
  28. server 0.asia.pool.ntp.org iburst minpoll 6 maxpoll 7
  29. server 1.asia.pool.ntp.org iburst minpoll 6 maxpoll 7
  30. server 2.asia.pool.ntp.org iburst minpoll 6 maxpoll 7
  31. server 0.us.pool.ntp.org iburst minpoll 6 maxpoll 7
  32. server 1.us.pool.ntp.org iburst minpoll 6 maxpoll 7
  33. server 2.us.pool.ntp.org iburst minpoll 6 maxpoll 7
  34. # End of generated ntp.conf --- Please edit this to suite your needs

3.重启服务

计算机--右键 管理--服务与应用程序--服务,找到Network Time Protocol Daemon,右键重启
或者通过开始菜单重启。两者作用一样
开始--Meinberg--Network Time Protocol--Service Control--Restart NTP Service

4.本地测试

命令行输入
ntpq -p
结果中的第一行如果出现LOCAL,说明NTP服务器进程存在

[plain] view plain copy

  1. Microsoft Windows [版本 6.3.9600]
  2. (c) 2013 Microsoft Corporation。保留所有权利。
  3. C:\Windows\system32>ntpq -p
  4. remote           refid      st t when poll reach   delay   offset  jitter
  5. ==============================================================================
  6. LOCAL(0)        .LOCL.          12 l  201   64   10    0.000    0.000   0.000
  7. +ntp2.aliyun.com 10.137.38.86     2 u   61   64    7   55.655    1.918   7.038
  8. *118.189.211.186 .PPS.            1 u   62   64    7  117.009   10.206   3.703
  9. +shim.active-app 218.186.3.36     2 u  124   64    2  105.239   -4.597   2.797
  10. -104.156.99.226  192.12.19.20     2 u   61   64    5  256.067   -2.231   7.130
  11. -y.ns.gin.ntt.ne 249.224.99.213   2 u   10   64    5  138.076   11.235   8.025
  12. C:\Windows\system32>

5.添加防火墙例外

将ntp.exe添加到防火墙例外或者将UDP的123端口添加到防火墙例外

6.再次重启服务

步骤同第三步

二、配置树莓派同步时间

首先熟悉几个关于时间命令

[plain] view plain copy

  1. date #查看当前时间
  2. date -s "2016-03-31 10:18:00" #设置当前时间为2016年3月31日10:18:00
  3. date -s 2016-03-31 #设置当前日期为2016年3月31日0:00:00
  4. date -s 10:18:00 #设置当前时间为10:18:00

1.安装ntpdate

[plain] view plain copy

  1. sudo apt-get install ntpdate

2.对时

[plain] view plain copy

  1. sudo ntpdate 172.26.69.87

其中172.26.69.87为局域网NTP服务器的IP地址
对时后可用date命令查看时间

tip1:如果遇到the NTP socket is in use, exiting的提示,这是因为ntpd也是用的UDP123端口更新时间,我们先将ntp这个服务关掉

[plain] view plain copy

  1. sudo service ntp stop

然后再执行

[plain] view plain copy

  1. sudo ntpdate 172.26.69.87

tip2:如果遇到no server suitable for synchronization found的提示,多半是因为网络不通或者对应的NTP服务器没有启动。

3.修改时区

默认情况下树莓派使用的是UTC时间,与北京时间相差8小时,所以需要修改时区
tzselect命令并不能真正的修改
正确的做法是替换掉时区文件

[plain] view plain copy

  1. sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

修改之后用date查看到的是CST时间

4.添加局域网NTP服务器地址

修改配置文件ntp.conf

[plain] view plain copy

  1. sudo nano /etc/ntp.conf

在server项目前面添加如下内容

[plain] view plain copy

  1. server 172.26.69.87 prefer
  2. server 192.168.42.254 iburst
  3. server cn.pool.ntp.org iburst
  4. server asia.pool.ntp.org iburst
  5. server pool.ntp.org iburst

这个配置文件用于ntpd程序同步时间,每次树莓派开机启动后都会启动这个程序,同步的时间需要5分钟。

5.查看时间

[plain] view plain copy

  1. date

三、配置开机自启

在实际运行中,如果计算机的时间与网络时间相差超过30分钟,那么ntpd就不会自动同步了,笔者处于每天断电7~8个小时的校园网,所以每次开机必须先用ntpdate强制同步时间,但这个进程不能执行得太早,太早的话可能还没联网。所以加了个延迟40秒启动。

编辑

[plain] view plain copy

  1. sudo nano /usr/bin/synctime

内容

[plain] view plain copy

  1. #! /bin/sh
  2. #延迟40秒启动
  3. sleep 40s
  4. #停止ntpd服务
  5. killall ntpd
  6. #对时
  7. ntpdate -u 202.199.131.1
  8. #开启ntpd服务器
  9. ntpd -c /etc/ntp.conf

保存
修改脚本执行权限

[plain] view plain copy

  1. sudo chmod a+x /usr/bin/synctime

加入开机启动

[plain] view plain copy

  1. sudo nano /etc/rc.local

#在exit 0前面添加

[plain] view plain copy

  1. sudo /usr/bin/synctime > /dev/null 2>&1

保存
修改执行权限

[plain] view plain copy

  1. sudo chmod +x /etc/rc.local

重启

[plain] view plain copy

  1. reboot

附:

DJTU内网推荐NTP配置

[plain] view plain copy

    1. server 222.26.224.216 prefer
    2. server 202.199.131.1 iburst
    3. server 202.120.2.100 iburst
    4. server cn.pool.ntp.org iburst
时间: 2024-10-10 14:14:39

配置树莓派3和局域网NTP服务器实现内网时间校准的相关文章

CentOS7搭建NTP服务器及客户端同步时间

一.服务器配置 1.查看服务器.客户端操作系统版本 [[email protected] ~]# cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) 2.查看服务器是否安装ntp,系统默认安装ntpdate: [[email protected] ~]# rpm -qa | grep ntp fontpackages-filesystem-1.44-8.el7.noarch ntpdate-4.2.6p5-28.el7.cen

linux外网服务器跳转内网服务器实现内网访问(iptables)

服务器信息如下 外网服务器:eth0:公网IP eth1:内网IP(192.168.10.205) 公网对外提供服务,内网IP与内部局域网通信. 配置过程: (1)开启iptables service iptables restart   (临时开启) chkconfig  iptables on    (永久开启) (2)配置iptables          (2-1)配置filter选项,使得IP和PORT可以通过防火墙 注意:在filter选项下配置 例如:#18081(tomcat-O

局域网 和 广域网(内网和外网)

有空的时候 搭建一个 局域网 看看能不能用 所谓内网就是我们平常说的局域网.局域网就是在固定的一个地理区域内由2台以上的电脑用网线和其他网络设备搭建而成的一个封闭的计算机组.它可以是邻居之间的2台电脑,也可以是一幢100层大楼里的1000台电脑.局域网可以是独立封闭运行的,也可以是和外网相连接的. 所谓外网,也就是广域网.是一种地域跨度非常大的网络集合.它是由无数个局域网+独立服务器构成的.注意,此处所说的局域网既可以是小型的广域网,也可以是局域网. 实际上,从规模上来看我们很难分辨局域网与广域

利用云服务器搭建内网映射服务器

应用背景:众所周知,随着公网IP地址的短缺,即使电信联通这样的一级运营商在提供宽带服务的时候有时候也会使用私网IP地址,更不用说长城.鹏博士这样的二级运营商了,肯定都是提供的私网IP地址,那么对于一个计算机发烧友来讲,经常会使用很多服务,但是这些服务往往都是搭建在自己本地的电脑上的,可是为了让公网能够测试访问,就必须使用端口映射技术,如果有幸获取到公网IP则可以不必继续读下去,如果为了省钱,购买了二级运营商的宽带,抑或是教育网的同学们想利用自己的校园网搭建一些公网服务进行测试或者学习怎么办呢?那

SVN服务器搭建 内网可用外网不可用的问题

检查1:内网端口映射到了外网端口,这样外网才能够访问到 映射的方式有两种: 1.通过路由器的虚拟服务器功能,网上一搜一大把. 2.将路由器的DMZ功能开启,并把DMZ主机设置为目标计算机. 检查2:SVN服务器的设置 .VisualSVN -> "操作" -> "Properties" ->"Network": Server name:改为自己的局域网ip port:改为常用端口号,一般使用默认的443或者自己设置的都可以(需要

配置windows路由表,使电脑同时连接内网外网方法

1.环境一(系统:windows xp,内网.外网不是同一类地址,内网地址固定): 外网:通过笔记本的无线网卡连接: 内网:通过笔记本的本地连接: 第一步,连接网线,配置本地连接地址,注意IP地址不要与其它在用ip冲突: 下图,本地连接配置10.9.1.189的内网地址. 外网地址,则由笔记本的无线网卡连接到路由器,自动获得的p地址,本机获得的IP地址为192.168.1.115. 现在测试,内网可以ping通其它任意主机,外网也连接,但打开浏览器,不能上网: 如果拔掉网线,外网就可以上网. 第

【NetApp】配置NetApp控制器与Linux NTP服务器同步

Linux NTP服务器端配置: 1)设置/etc/ntp.conf配置文件 [[email protected] etc]# vi /etc/ntp.conf # For more information about this file, see the man pages# ntp.conf(5), ntp_acc(5), ntp_auth(5), ntp_clock(5), ntp_misc(5), ntp_mon(5). driftfile /var/lib/ntp/drift # Pe

多台Exchange服务器设置内网MX记录

MX记录(邮件交换记录)用于指出某个DNS区域中的邮件服务器的主机名(A记录),所以在创建MX记录之前先为邮件服务器创建A记录,现在绝大部分企业都采用了多台邮件服务器做高可用户设置,所以你可以在同一个DNS域内配置多个MX记录,设置不同的邮件服务器优先级数值,数值越低,优先级越高. 我现在测试环境是2台Exchange2010服务器,都是标准角色安装,域名就是test.com,Exchange2010-01对应ip是192.168.80.6.Exchange2010-02对应ip是192.168

阿里云ecs服务器wamp内网可以访问,外网ip,域名无法访问

问题:用的阿里云服务器,windows2008 R2,域名解析正常.本地localhost,127.0.0.1可以正常打开网站,说明80端口没有被占用. 解决办法: 关闭防火墙之后,外部可以正常访问网站. 网站不可能一直关闭windows防火墙,所以判断是80端口尚未开启. 用一下办法打开80端口入站规则,开启防火墙之后可以正常访问.(做一下操作的前提是在阿里云ecs控制台->本实例安全组规则中设置好80端口允许访问,否则一样无法访问) http://jingyan.baidu.com/arti