将UDP数据包发送到NTP以获取数据包(在ruby中)

时间:2012-10-14 01:38:55

标签: ruby udp ntp

我需要做什么: 将数据包发送到pool.ntp.org(我假设我自动收回数据包)。

以下内容对我不起作用。我对我正在做的事情一无所知,所以现在如果我能够到达地址并收回数据包,我会感到满意。下面的代码只是挂起。任何和所有的帮助将不胜感激。

require 'socket'
sock = UDPSocket.new
sock.connect("pool.ntp.org", 123)
sock.recvfrom(10)

1 个答案:

答案 0 :(得分:0)

documentation on UDPSocket州:

connect(host, port) 
Connects udpsocket to host:port.

This makes possible to send without destination address.

这意味着您可以使用send(mesg, flags)的{​​{1}}形式,仅此而已。您需要向NTP服务器发送请求消息以获得回复

您可以在此处查看NTPv4协议规范:RFC 5905