当前位置:  技术问答>linux和unix

NTP服务器接收端的问题

    来源: 互联网  发布时间:2016-11-17

    本文导语:  本帖最后由 hefa880 于 2011-03-30 04:15:14 编辑 急急~~~~~ 为了测试NTP服务器的处理能力,写了两个文档,一个用来专门发送请求,一个专门用来接收服务器返回的请求。我的发送端分可以正常发数据,但是接收那一端却是...

本帖最后由 hefa880 于 2011-03-30 04:15:14 编辑
急急~~~~~
为了测试NTP服务器的处理能力,写了两个文档,一个用来专门发送请求,一个专门用来接收服务器返回的请求。我的发送端分可以正常发数据,但是接收那一端却是一个数据也收不到,将两个整合在一起却又可以正常收发,弄不明白是为什么?原来想用bind()来绑定一个NTP端口的,但是运行时提示“无法分配请求的地址”,百思不得其解。后来将端口改大了,就可以通过,但是我要的NTP专用的端口 123,请问如何解决接收数据的问题啊?用了那些强制允许重复绑定的函数也不能正常运行,还是提示“bind error: Cannot assign requested address
”不知道哪位大侠能指点下小弟,感激不尽。


接收端的代码如下:

//ntp_rev.c

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 


#define  int8      char
#define  uint8     unsigned char
#define  uint32    unsigned int
#define  ulong32   unsigned long
#define  long32    long
#define  int32     int
#define  long64    long long

#define  debug 

//3600s*24h*(365days*70years+17days)
#define  From00to70 0x83aa7e80U

#define  NTPSVR  "192.168.2.8"        //myserver


#define  NTPPORT  123
typedef struct NTPPACKET
{
  uint8     li_vn_mode;
  uint8     stratum;
  uint8     poll;
  uint8     precision;                                         //有符号整数表示本地时钟精确度
  ulong32   root_delay;                                   //到达服务器的一次往返的总延时,是15到16位有符号的定点小数
  ulong32   root_dispersion;                           // 到达服务器的一次标准误差,是15-16位的无符号的定点小数
  int8      ref_id[4];
  ulong32   reftimestamphigh;                      //本地时钟最后被设定或校正的时间T4
  ulong32   reftimestamplow;
  ulong32   oritimestamphigh;                //向服务器请求分离客户机的时间戳,采用64位时标格式T1
  ulong32   oritimestamplow;
  ulong32   recvtimestamphigh;             //向服务器请求到客户机的时间戳,采用64位时标格式T2
  ulong32   recvtimestamplow;
  ulong32   trantimestamphigh;           //向客户机答复分离服务器的时间戳,采用64位时标格式T3,用T3来校正本地时间 
  ulong32   trantimestamplow;
}NTPPacket;

NTPPacket  ntppack,newpack;

//定义为long64,解决32位数的符号位问题
long64   firsttimestamp,finaltimestamp;
long64   diftime,delaytime;

void NTP_Init()
{
  bzero(&ntppack,sizeof(ntppack));
  ntppack.li_vn_mode=0x1b;//0|(3

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请教各位:一台机器如何实现既做NTP服务器又做NTP客户端
  • 在设备上配置NTP服务器时出现了下列问题导致服务器同步失败
  • NTP 客户端服务器 chrony
  • ntp服务器配置问题
  • NTP时间同步
  • 网络时间协议 NTP
  • 关于NTP协议的问题
  • 客户端ntp配置问题
  • 如何利用crond通过NTP同步系统时间
  • 关于时间同步(ntp)的问题
  • AIX下ntp同步时间无效
  • NTP
  • 局域网内两台linux ntp时间不能同步
  • 升级NTP时出现的问题
  • 求助!ntp协议客户端实现时,select超时


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3