python监听udp端口_python检测远程udp端口是否打开
python检测远程udp端口是否打开
import socket
import threading
import time
import struct
import Queue
queue = Queue.Queue()
def udp_sender(ip,port):
try:
ADDR = (ip,port)
sock_udp = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
sock_udp.sendto("abcd...",ADDR)
sock_udp.close()
except:
pass
def icmp_receiver(ip,port):
icmp = socket.getprotobyname("icmp")
try:
sock_icmp = socket.socket(socket.AF_INET, socket.SOCK_RAW, icmp)
except socket.error, (errno, msg):
if errno == 1:
# Operation not permitted
msg = msg + (
" - Note that ICMP messages can only be sent from processes"
" running as root."
)
raise socket.error(msg)
raise # raise the original error
sock_icmp.settimeout(3)
try:
recPacket,addr = sock_icmp.recvfrom(64)
except:
queue.put(True)
return
icmpHeader = recPacket[20:28]
icmpPort = int(recPacket.encode('hex')[100:104],16)
head_type, code, checksum, packetID, sequence = struct.unpack(
"bbHHh", icmpHeader
)
sock_icmp.close()
if code == 3 and icmpPort == port and addr[0] == ip:
queue.put(False)
return
def checker_udp(ip,port):
thread_udp = threading.Thread(target=udp_sender,args=(ip,port))
thread_icmp = threading.Thread(target=icmp_receiver,args=(ip,port))
thread_udp.daemon= True
thread_icmp.daemon = True
thread_icmp.start()
time.sleep(0.1)
thread_udp.start()
thread_icmp.join()
thread_udp.join()
return queue.get(False)
if __name__ == '__main__':
import sys
print checker_udp(sys.argv[1],int(sys.argv[2]))
python监听udp端口_python检测远程udp端口是否打开相关推荐
- python探测端口_python检测远程服务器tcp端口的方法
本文实例讲述了python检测远程服务器tcp端口的方法.分享给大家供大家参考.具体如下: python检测远程服务器tcp端口的代码,这段代码可以用来做服务器监控实用 #!/usr/bin/env ...
- python监听鼠标事件_Python中使用PyHook监听鼠标和键盘事件实例
Python 中使用 PyHook 监听鼠标和键盘事件实例 PyHook 是一个基于 Python 的"钩子"库,主要用于监 听当前电脑上鼠标和键盘的事件.这个库依赖于另一个 Py ...
- python监听串口数据_python 读取串口数据的示例
python3 读取串口数据 demo 最近在写一个demo,zigbee串口连接树莓派,树莓派使用串口通信接受zigbee穿过来得值.其中我是用的树莓派是3代B+,zigbee每隔三秒钟从串口输出数 ...
- 基于网络监听的摄像头遮挡检测
本文由本人原创,仅作为自己的学习记录 最近研究物联网安全,需求之一就是要实现摄像头遮挡的检测,调研了很久,很多都是基于视频帧分析的,这样不仅处理繁琐,而且对不同编码格式的视频处理也不尽相同,结合最近在 ...
- 【做一下1】python 监听数据库变化
前言 用的yolov5,作者自己写的loadStream函数就是依据 streams.txt里面的rtsp流地址列表来新建线程,然后实现多路监控的. 大体就是这个图里面说的,我已经是为了个整体业务,去 ...
- python监听多个udp端口_Python的Socket编程过程中实现UDP端口复用的实例分享
关于端口复用 一个套接字不能同时绑定多个端口,如果客户端想绑定端口号,一定要调用发送信息函数之前绑定( bind )端口,因为在发送信息函数( sendto, 或 write ),系统会自动给当前网络 ...
- python监听udp端口,Python和UDP监听
我有一个应用程序,软件定义无线电,在一个端口上广播UDP数据包,告诉听众已经设置了什么频率和解调模式(等等). 我编写了一个演示python客户端(下面的代码)来监听端口,并将相应数据包中的信息转储到 ...
- python监听多个udp端口_尝试实现非阻塞python-udp多端口获取wierd异常
我试图实现一个非阻塞的pythonudp服务器,它监听多个端口.在 我在这个Stackover posting中找到了一些代码,并将其修改为监听多个套接字,到目前为止,非常好.在 我的代码如下.在#! ...
- python 监听tcp端口_创建TCP监听_创建TCP监听_功能示例_Python SDK示例_SDK 参考_开发指南_负载均衡 - 阿里云...
# encoding=utf-8 import json import sys # 调用AcsClient参数进行身份验证 from aliyunsdkcore.client import AcsCl ...
最新文章
- 数据库备份到文件服务器,数据库文件备份到云服务器上
- 李宏毅线性代数笔记8 :坐标系变换8
- 我是一只IT小小鸟读书笔记
- mvc2中如何在下拉列表中显示含有子类的项(子类前加--)
- HDU1425 A Chess Game
- Web开发者不可不知的16条原则
- middle函数C语言,C语言函数调用栈(三)
- linq to js使用汇总
- laravel 5 自定义全局函数,怎么弄呢?
- 2015计算机二级java真题_2015年计算机二级考试java试题
- 14种模式解决面试算法编程题(PART II)
- 神经网络仿真实验matlab,神经网络及其matlab实现
- T60 Fan Error 解决办法.转自ZOL产品论坛-作者zxymb
- Scrapy框架以及scrapy-redis实现分布式爬虫
- ShareX:一款你值得拥有的截图识别工具ShareX
- Vue创建app及App挂载和渲染
- JavaScript的全局作用域、全局对象window
- Android 9.0 行为变更(一)针对所有 API 级别的应用
- 学习云计算技术前景在哪里?云计算技术发展趋势
- .net core QuartzUI 执行定时任务
热门文章
- 9. 混合模型和EM(2)
- 计算机考研我该如何准备,计算机考研该如何准备呢-考研初试
- 3.4 滑动窗口的卷积实现-深度学习第四课《卷积神经网络》-Stanford吴恩达教授
- 一起学nRF51xx 21 - 蓝牙项目工程的初始化流程解读
- TCL with SNPS collection_limitget_lib_pins
- 【DIY】嫌arduino太贵?太大?试试ATTINY85!DIY温湿度计入门级教程请收下
- Android 8.0新特性(看这篇文章就够了)
- hihoCoder #1195 : 高斯消元·一
- 操作系统基本分段存储管理方式
- Altium Designer学习---如何进行SI仿真