Salve a tutti, sto tentando di creare un server udp che lavori in
remoto.Mentre in locale il tutto funziona correttamente, non appena
provo a connettermi da remoto, Il server non riceve alcuna richiesta di
connessione quindi è il client che non comunica. Ovviamente su tutte e
due i router le porte in questione sono aperte, eccezioni sui firewall
create. A volte viene fuori un errore, “impossibile connettersi
all’host, server non autorevole”. Non capisco qual’è il problema:
ecco il codice:
-------------------------------Lato Server :
require “socket”
server = UDPSocket.open
server.bind(‘192.168.1.91’, 12345) #----ip macchina del server e porta
aperta sul firewall e sul router
loop do
data, sender = server.recvfrom(100)
chost = sender[3]
cport = sender[1]
puts “Richiesta da #{chost}:#{cport}”
server.send(“ok”, 0, chost, cport)
end
-----------------------------Lato client:
require “socket”
client = UDPSocket.open
client.connect(‘79...***’, 12345) ip pubblico del router e
portmapping su l indirizzo del server
puts ‘numero da inviare:’
num = gets.chomp
client.send("#{num}", 0)
while msg=client.gets
puts msg
end