Hallo,
ich habe eine Java-Server-Applikation, die gewöhnlich unter Windows läuft, nun auch mal unter Linux installiert. Diese wird als „Dienst“ gestartet. Dazu nutze ich einen Dienst-Wrapper, zu finden unter http://wrapper.tanukisoftware.org
Mit der Server-Applikation verbinden sich per RMI mehrere Client-Applikationen. Als Rückkanal wird eine Socket-Verbindung geöffnet.
Starte ich meine Server-Applikation unter Linux und verbinde einen Client von einem Windows-Rechner oder aber einem anderen Linux-Rechner aus mit diesem Server, so bekomme ich stets die Meldung „Connection refused to 127.0.0.2“.
Starte ich den Server und einen Client auf dem gleichen Linux-Rechner, so habe ich keinerlei Probleme.
Nach Analyse des Codes habe ich festgestellt, dass bei Erzeugen des Rückkanals kein Port für den ServerSocket übergeben wird, was in Java bedeutet, dass ein beliebiger freier Port verwendet wird. Das scheint unter Linux aber so nicht zu wollen, weil ich vermute, dass eben hier die Restriktionen etwas härter sind, als bei Windows.
Eine Firewall war bei den Tests deaktiviert. Gibt es eine einfache Möglichkeit, das Problem zu umgehen? Ich möchte ungern eine eigene Portverwaltung in die Server-Applikation einbauen, da prinzipiell viele Clients gleichzeitig verbunden werden.
Danke für Tipps oder Schelte, falls ich lieber im Java-Forum bleiben sollte
Ciao, Bill