问题:

问题:

我使用的是基于 STM32MP1 的两个设备,它们在 Yocto Linux 平台上运行。其中一个有两个网络接口(wlan0、wlan1),其中 wlan0 用​​于连接互联网服务器,wlan1 将充当另一台设备与之连接的主机网络。我正在使用ntpd(版本:ntpd[电子邮件保护]ntp.conf) 用于时间同步。我对这两个设备都有一个共同点。

driftfile /var/lib/ntp/drift
server 127.127.1.0
fudge 127.127.1.0 stratum 14
restrict default

此外,两个设备的 DHCP 客户端配置也相同。

request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, host-name,
        netbios-name-servers, netbios-scope;

而且我既没有ntp.conf文件中提到的特定服务器,也没有ntp-servers明确请求我的设备的 DHCP 客户端。但我的主要设备(有两个网络接口)仍然可以与我的 Wi-Fi 路由器提供的时间服务器同步。

但我的辅助设备无法获得时间同步,可以理解的是它无法直接访问时间服务器。问题是主设备没有充当 NTP 服务器(在 wlan1 上),以便辅助设备获得时间同步。我已udhcpd在主设备上使用辅助设备进行连接,下面是udhcpd.conf使用过的,

start 192.168.10.100
end 192.168.10.200
interface wlan1
option subnet 255.255.255.0
option router 192.168.10.1
option lease 43200
option dns 192.168.10.1
option domain local

问题:

  1. NTPD 是否可以在同一设备上同时作为服务器(在一个接口上)和客户端(在另一个接口上)工作?
  2. 如果是,那么如何在没有互联网的本地网络中实现辅助设备?
  3. 如果没有,那么原因是什么以及如何克服它以实现辅助设备的时间同步?

答案1

NTPD 是否可以在同一设备上同时作为服务器(在一个接口上)和客户端(在另一个接口上)工作?

是的默认ISC NTPD 的模式是既是客户端又是服务器。有两个接口这一事实并不重要;操作系统负责处理路由。

如果是,那么如何在没有互联网的本地网络中实现辅助设备?

设置设备以使用面向互联网的设备作为 NTP 服务器。配置防火墙以允许此流量。

答案2

If yes means how to achieve that within local network without internet for the secondary device?

GPS 是时间同步的常用方法。许多数据中心都配备了 GPS。

https://timemachinescorp.com/product/gps-time-server-tm1000a/

相关内容