LuaSocket (UDP) não recebe datagramas
Estou experimentando o LuaSocket para um projeto em que estou trabalhando. Eu escolhi o UDP como meu protocolo.
Procurando documentos e tutoriais online, tentei criar um par cliente-servidor para testar e aprender.
De acordo com o que eu li, o código a seguir deve funcionar. No entanto, apenas o servidor parece estar funcionando corretamente. O cliente envia uma mensagem, mas não receberá a resposta do servidor.
Obrigado por qualquer ajuda que alguém possa fornecer.
Servidor:
-- Server
#!/usr/bin/env lua5.1
local socket = require("socket")
udp = socket.udp()
udp:setsockname("*", 53474)
udp:settimeout(0)
while true do
data, ip, port = udp:receivefrom()
if data then
print("Received: ", data, ip, port)
udp:sendto(data, ip, port)
end
socket.sleep(0.01)
end
Cliente:
-- Client
#!/usr/bin/env lua5.1
local socket = require("socket")
udp = socket.udp()
udp:setpeername("127.0.0.1", 53474)
udp:settimeout(0)
udp:send("Data!")
data = udp:receive()
if data then
print("Received: ", data)
end