我们的SNTP服务器没有响应我的请求 [英] Our SNTP server is not responding for my requests

查看:125
本文介绍了我们的SNTP服务器没有响应我的请求的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,



我写了一个SNTP客户端代码来检索时间信息,如下所示。在这里,代码停在第_sntpMessageRequest.SNTPData = _udpClient.Receive(ref _ipEndpoint);因为SNTP服务器没有响应。

Hi all,

I have written a SNTP Client code to retrieve time information as below. In this, the code stops at line _sntpMessageRequest.SNTPData = _udpClient.Receive(ref _ipEndpoint); as SNTP Server is not responding.

public bool QueryTimeSynchronizationServer()
{
	UdpClient _udpClient = null;
	IPEndPoint _ipEndpoint = null;
	string _ipString = null;
	IPAddress _ipAddress = null;
	int _portNumber = 123;

	try
	{
		_ipString = "ip address";
		IPAddress.TryParse(_ipString, out _ipAddress);
		_ipEndpoint = new IPEndPoint(_ipAddress, _portNumber);

		 //SNTPMessageRequest-> a object holds the Byte array for SNTP request and do other supporting functions
		SNTPMessageRequest _sntpMessageRequest = FrameSNTPMessageRequest();

		using (_udpClient = new UdpClient(123))
		{
			_udpClient.Client.SendTimeout = 5000;
			_udpClient.Client.ReceiveTimeout = 5000;
			_udpClient.Connect(_ipEndpoint);

			_udpClient.Send(_sntpMessageRequest.SNTPData, _sntpMessageRequest.SNTPData.Length);

			 //Code stops at below line as SNTP Server is not responding.
			_sntpMessageRequest.SNTPData = _udpClient.Receive(ref _ipEndpoint);
			_sntpMessageRequest.ReceptionTimestamp = DateTime.Now;

			string _serverTime = _sntpMessageRequest.TransmitTimeStamp.ToString();
		}
	}
	catch (Exception ex)
	{
		
	}
	return true;
}

private SNTPMessageRequest FrameSNTPMessageRequest()
{
	 
	SNTPMessageRequest _sntpMessageRequest = new SNTPMessageRequest();

	_sntpMessageRequest.VersionNumber = VersionNumber.Version3;
	_sntpMessageRequest.Mode = Mode.Client;

	for (int i = 1; i < 48; i++)
	{
		_sntpMessageRequest.SNTPData[i] = 0;
	}

	_sntpMessageRequest.TransmitTimeStamp = DateTime.Now.ToLocalTime();
	return _sntpMessageRequest;
}



请帮助我解决我的错误。

先谢谢。

Ranjith。



我尝试了什么:



我试过发送SNTP请求所有四个版本(1-4),但服务器没有响应。


Kindly help me with where i am doing mistake.
Thanks in Advance.
Ranjith.

What I have tried:

I have tried sending SNTP request with all four versions(1-4), but the server is not responding.

推荐答案

这对我有用:日期 - 如何使用C#查询NTP服务器? - 堆栈溢出 [ ^ ]

这篇关于我们的SNTP服务器没有响应我的请求的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆