python实现多播数据的发送和接收
在项目中,YS私有协议用到多播技术,在验证其安全特性时用到python去发送多播包,在此做个记录。
多播服务器用于向多播组发送多播数据包,其实现代码如下:
#coding:utf-8, import socket import time ANY = ‘0.0.0.0‘ SENDERPORT=1501 MCAST_ADDR = ‘224.168.2.9‘ MCAST_PORT = 1600 sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP) sock.bind((ANY,SENDERPORT)) #绑定发送端口到SENDERPORT,即此例的发送端口为1501 sock.setsockopt(socket.IPPROTO_IP, socket.IP_MULTICAST_TTL, 255) #设置使用多播发送 while 1: time.sleep(10) sock.sendto(‘Hello World‘, (MCAST_ADDR,MCAST_PORT) ); #将‘hello world‘发送到多播地址的指定端口,属于这个多播组的成员都可以收到这个信息
通过wireshark捕抓到的数据包如下:
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。