我正在搜索c/c ++中的工作代码,它从服务器获取时间和日期(ntp.belnet.be).它适用于UDP并使用端口123.
有人可以帮忙吗?
//sending pakket
memset(&sntp_msg_header, 0, sizeof sntp_msg_header);
sntp_msg_header.flags = 27;
sntp_msg_header.originate_timestamp_secs = time(NULL);
// Get data in rxmsg
...
...
// print time
timeval = ntohl(rxmsg.transmit_timestamp_secs) - ((70ul * 365ul + 17ul) * 86400ul);
printf("%s", ctime(&timeval));
Run Code Online (Sandbox Code Playgroud)
这就是我到目前为止所拥有的.但我无法从中获得正确的数据.我希望这是更多的信息.
如果发现这个:
import socket
import struct
import sys
import time
TIME1970 = 2208988800L # Thanks to F.Lundh
client = socket.socket( socket.AF_INET, socket.SOCK_DGRAM )
data = '\x1b' + 47 * '\0'
client.sendto( data, ( sys.argv[1], 123 ))
data, address = client.recvfrom( 1024 ) …Run Code Online (Sandbox Code Playgroud)