一个简单的SNTP客户端
借鉴于python网络编程攻略
#/usr/local/bin/python3.5
#coding:utf-8 import socket, struct, time NTP_server = "0.uk.pool.ntp.org"
TIME1970 = 2208988800 def sntp_client():
client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
data = "\x1b" + 47 * "\0"
client.sendto(data.encode('utf-8'), (NTP_server, 123))
data, address = client.recvfrom(1024) if data:
print("Response received from:", address)
t = struct.unpack('!12I', data)[10]
t -= TIME1970
print('\tTime=%s' % time.ctime(t)) sntp_client()
效果图如下
aaarticlea/png;base64,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" alt="" />
END!
一个简单的SNTP客户端的更多相关文章
- 用Nodejs 实现一个简单的 Redis客户端
目录 0. 写在前面 1. 背景映入 2. 数据库选择 3. Nodejs TCP连接 3. 代码编写 4. 实验 5. wireshark 抓包分析 6. 杂与代码 0. 写在前面 大家如果有去看过 ...
- 使用IdentityServer4实现一个简单的Oauth2客户端模式授权
1.首先新建一个webAPI项目做为IdentityServer的服务端,提供生成Token的服务,首先修改Startup.cs文件,如下图: 2.增加一个Config.cs文件,以便于提供资源和认证 ...
- Python3实现一个简单的tcp客户端,用于测试服务端端口开放情况
需要Python的socket模块儿,windows使用netstat -an查看端口状态,Linux使用netstat -tunlp查看端口状态. # client 客户端 # TCP必须建立连接 ...
- 由一个简单需求到Linux环境下的syslog、unix domain socket
本文记录了因为一个简单的日志需求,继而对linux环境下syslog.rsyslog.unix domain socket的学习.本文关注使用层面,并不涉及rsyslog的实现原理,感兴趣的读者可以参 ...
- curl太复杂难用记不住?来试试Httpie一个简单的现代化命令行Http客户端
HTTPie 是一个简单的现代化命令行 HTTP 客户端. 交互友好,JSON支持,语法高亮,类wget下载,支持拓展等 功能特性 自然而且简单的命令语句 格式化且高亮显示输出内容 内置 JSON 支 ...
- 用C++写一个简单的服务器和客户端
我们将创建一个服务器节点add_two_ints_server,它将会收到两个整数,并且返回它们的和.切换目录到之前建立的beginner_tutorials包下: cd ~/catkin_ws/sr ...
- 在Openfire上弄一个简单的推送系统
推送系统 说是推送系统有点大,其实就是一个消息广播功能吧.作用其实也就是由服务端接收到消息然后推送到订阅的客户端. 思路 对于推送最关键的是服务端向客户端发送数据,客户端向服务端订阅自己想要的消息.这 ...
- 一个简单的webservice的demo(下)winform异步调用webservice
绕了一大圈,又开始接触winform的项目来了,虽然很小吧.写一个winform的异步调用webservice的demo,还是简单的. 一个简单的Webservice的demo,简单模拟服务 一个简单 ...
- 使用MongoDB和JSP实现一个简单的购物车系统
目录 1 问题描述 2 解决方案 2.1 实现功能 2.2 最终运行效果图 2.3 系统功能框架示意图 2.4 有关MongoDB简介及系统环境配置 2.5 核心功能代码讲解 ...
随机推荐
- (转)WHY DEEP LEARNING IS SUDDENLY CHANGING YOUR LIFE
Main Menu Fortune.com E-mail Tweet Facebook Linkedin Share icons By Roger Parloff Illustration ...
- ecshop中user.php中的$user说明---user表加字段
今天想对user表加个字段,打开user.php发现有个$user,其中它有很多方法,像登陆,注册,退出.都要用到它.可找了大半天也找不到这个函数调用的是哪个类.又坚持找了半天,发现$user在ini ...
- windows端加密程序,lua代码,ZeroBrane调试
发一个自己改的zerobrane版本(启动中文,快捷键改成和一样:F5启动调试,F9断点,F10逐过程,F11逐语句,F12跳出函数) 在zerobrane 1.0(2015.3.13)发布的基础上改 ...
- spring mvc 4数据校验 validator
注解式控制器的数据验证.类型转换及格式化——跟着开涛学SpringMVC http://jinnianshilongnian.iteye.com/blog/1733708Spring4新特性——集成B ...
- Spring MVC入门实战(一)
本文主要把一个菜鸟从“只是听说过Spring MVC”到“可以手动创建并运行一个Spring MVC工程”的过程记录下来,供以后复习. 0. 开发环境准备 计算机平台:Windows 7 X64. 需 ...
- Null modem接线
1.6 <-> 4 2 <-> 3 3 <-> 2 4 <-> 1.6 5 <-> 5 7 <-> 8 8 <-> ...
- android学习笔记55——ContentProvider_2
实现ContentProvider 创建ContentProvider的步骤: 1.开发一个ContentProvider的子类,该子类需要实现增.删.改.查等方法: 2.在AndroidMainfe ...
- python学习-day18、文件处理、
4.文件操作 武sir:http://www.cnblogs.com/wupeiqi/articles/4943406.html 林海峰:http://www.cnblogs.com/linhaife ...
- 【转载】Securing Kibana + Elasticsearch
from: http://tom.meinlschmidt.org/2014/05/19/securing-kibana-elasticsearch/ After some successful se ...
- 玩转单元测试之Testing Spring MVC Controllers
玩转单元测试之 Testing Spring MVC Controllers 转载注明出处:http://www.cnblogs.com/wade-xu/p/4311657.html The Spri ...