我需要做的:向 pool.ntp.org 发送一个数据包(我假设我会自动收到一个数据包)。
以下内容对我不起作用。我不知道自己在做什么,所以现在如果我能到达地址并取回数据包,我会很满意。下面的代码只是挂起。任何和所有的帮助将不胜感激。
require 'socket'
sock = UDPSocket.new
sock.connect("pool.ntp.org", 123)
sock.recvfrom(10)
UDPSocket 上的文档指出:
connect(host, port)
Connects udpsocket to host:port.
This makes possible to send without destination address.
这意味着您可以使用send(mesg, flags)
的形式,仅此send
而已。您需要向 NTP 服务器发送请求消息以获得回复
您可以在此处查看 NTPv4 协议规范:RFC 5905