I am attempting to create an RMI server that can be accessed from the internet.
In order to do this, I installed a clean copy of Windows XP on an old computer (no firewall enabled) and set up port forwarding on my router so ports 1098 and 1099 are forwarded to this computer. I also put this computer in the DMZ.
From inside my home network I can connect to the RMI server either via that computers IP or by my external IP (found with www.whatismyip.com) but i cannot connect from outside my home network, so i believe the problem to be with my router.
I am using Verizon FIOS, and the router is the ActionTec version MI424-WR (default with FIOS)
here is the relevant sections of my code:
client: (MY_IP is my external IP, but i'm not giving that out)
relevant sections of server:
the method is included in the interface
and how i start the server:
When i say that it doesnt work, i mean that the client applet displays a 0 instead of a 5
I don't know what the error was because i cannot test from my computer, but instead must send the applet to friends who arent very tech-savy and walk them through how to run it.
is there something wrong with my code that is preventing access from outside my home network, or did i forget to do something with my router? for instance, do I somehow need to tell my router to allow the RMI protocol? Or must it be something else not mentioned here?
I think you were right. I managed to make the program work by changing my RMI server to run on port 110, and setting my router to forward port 110 to my server machine.
now the client program can connect remotely, as port 110-outbound is left unblocked by default on firewalls.
I just want to know, is there any reason to avoid port 110? For instance, is there a legal reason not to sue this port for custom non-email programs, or could forwarding all port 110 traffic to my server cause problems?