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

questionAnswers(1)

yourAnswerToTheQuestion