Salve,

abbiamo in cantiere di realizzare una comuncazione bidirezionale punto-punto e siamo molto propensi di utilizzare rmi nel nostro scenario. Abbiamo ancora dei dubbi però da risolvere e uno di questi riguarda i problemi di macchine nattate o dietro firewall.

nell'attuale comunicazione che avevamo, dove avevamo un server remoto che poteva accedere ai suoi client (non il viceversa), avevamo come unica limitazione di rete il fatto che il client dovesse poter vedere una specifica porta del server per istanziare la comunicazione.

Ora vogliamo passare a java+rmi, e leggendo nella documentazione ho visto che rmi proverebbe in 3 modi diversi a connettersi: 1) socket diretto tra le macchine ; 2) invio di una http post (ma su che porta non l'ho capito) ; 3) richiesta http su porta 80. Diciamo che i punti 2 e 3 mi paiono critici per quanto rigaurda i client (sui server non ho problemi), perchè tendenzialmente i client sono su reti private di cui non ho controllo e che in genere sono molto chiuse. Quindi non capisco se devo appoggiarmi ad una infrastruttura vpn in maniera che i problemi di nat/firewall vengano risolti da questa, o se javarmi possa vivere da sola e risolvere questi problemi.

soprattutto mentre penso che ci siano pochi problemi ad aprire la comunicazione che va dal client al server, immagino che i problemi maggiori siano dal server al client, visto che in genere è il client che è nattato/firewallato.

Spero di esser riuscito ad illustrare il problema