1
Здесь транслируются сервераНе удается получить UDP вещания в питоне
from time import sleep
from socket import *
PORT = 50000
s = socket(AF_INET, SOCK_DGRAM)
s.bind(('', 0))
s.setsockopt(SOL_SOCKET, SO_BROADCAST, 1)
data = "I am server"
while 1:
s.sendto(data, ('<broadcast>', PORT))
print "sent data"
sleep(5)
Здесь транслируются приемник
from socket import socket, AF_INET, SOCK_DGRAM
PORT = 50000
client = socket(AF_INET, SOCK_DGRAM)
client.bind(('0.0.0.0', PORT))
data, addr = s.recvfrom(1024) #sticks here forever!
if data:
print "Found Broadcast server at : " + addr
Но проблема в том, что мой приемник просто прилипает на s.recvfrom(1024)
Хотя через ТСРйитр я могу чтобы увидеть пакет, то почему этот клиент python не может его поймать? команда sudo tcpdump -i wlan0 ip -X dst host 255.255.255.255
Возможно, вы предлагаете какие-либо изменения в коде? –
@AbhishekSingh, я не буду писать код для вас. Полагаю, мои предложения ясны. – SergeyA
Скажите хотя бы, какие параметры мне нужно настроить для сокета, а для сервера я уже настроил параметры сокета –