Winnetoupopper
Grünschnabel
Dem Compiler zum Gruße!
Ich komme mit dem scheinbar wohlbekannten Problem eines RMI-Servers innerhalb eines gerouteten LANs nicht zurecht.
Die IST-Situation:
Auf meinem Rechner läuft ein RMI-Server-Prozess ( Server/Reg. Port 1099 ).
Dieser Rechner hängt an so nem dämlichen DSL-Router inkl. Firewall mit externer IP.
Diesem Router hab ich gesagt, er soll Anfragen auf Port 1099 auf meine interne IP (192.1681.11) umleiten, die Firewall lässt den Port natürlich auch durch.
So nun starte ich den Serverprozess mit dem parameter
-Djava.rmi.server.hostname=<externe IP des Routers>,
und ein Client von draussen nimmt Verbindung auf.
Das funktioniert auch noch.
Aber sobald der Client richtig in Interaktion mit dem Server (erster Methodenaufruf) tritt, fällt clientseitig diese Exception:
Tja und da fällt auf, der Client versucht über meine lokale Adresse an den Server heranzutreten.
Aber das sollte ich doch mit der Property "-Djava.rmi.server.hostname" verhindert haben?
Ich bin am verzweifeln, man findet diese Frage beim recherchieren tierisch oft und die wenigen Antworten helfen einfach nicht. Aber das muss doch machbar sein!
bin wie immer für jede Idee SEHR dankbar
gruß kev
PS:
Innerhalb des LANs funktioniert das Programm natürlich fehlerfrei
Ich komme mit dem scheinbar wohlbekannten Problem eines RMI-Servers innerhalb eines gerouteten LANs nicht zurecht.
Die IST-Situation:
Auf meinem Rechner läuft ein RMI-Server-Prozess ( Server/Reg. Port 1099 ).
Dieser Rechner hängt an so nem dämlichen DSL-Router inkl. Firewall mit externer IP.
Diesem Router hab ich gesagt, er soll Anfragen auf Port 1099 auf meine interne IP (192.1681.11) umleiten, die Firewall lässt den Port natürlich auch durch.
So nun starte ich den Serverprozess mit dem parameter
-Djava.rmi.server.hostname=<externe IP des Routers>,
und ein Client von draussen nimmt Verbindung auf.
Code:
server = (ServerChatKommunikator)Naming.lookup(url);
Aber sobald der Client richtig in Interaktion mit dem Server (erster Methodenaufruf) tritt, fällt clientseitig diese Exception:
Code:
Connection refused to host: 192.168.1.11; nested exception is:
java.net.ConnectException: Connection timed out: connect
Tja und da fällt auf, der Client versucht über meine lokale Adresse an den Server heranzutreten.
Aber das sollte ich doch mit der Property "-Djava.rmi.server.hostname" verhindert haben?
Ich bin am verzweifeln, man findet diese Frage beim recherchieren tierisch oft und die wenigen Antworten helfen einfach nicht. Aber das muss doch machbar sein!
bin wie immer für jede Idee SEHR dankbar
gruß kev
PS:
Innerhalb des LANs funktioniert das Programm natürlich fehlerfrei