JAVA Client benutzt high Port (größer 50.000)
Hi,
wir haben hier ein Problem mit dem Java Client unter Windows Terminal Server 2008 und unserer Firewall.
Der Java Client öffnet immer high Ports größer 50.000 und die werden für das Management der Firewall benötigt. (Tritt auch auf einem Windows 7 Rechner auf). Die möchten wir nicht aufmachen, blöderweise startet dann aber Java nicht ....
Gibt es eine Möglichkeit dem Java Client dieses Verhalten abzugewöhnen so dass er niedrigere Ports benutzt??
Danke
Nagus
wir haben hier ein Problem mit dem Java Client unter Windows Terminal Server 2008 und unserer Firewall.
Der Java Client öffnet immer high Ports größer 50.000 und die werden für das Management der Firewall benötigt. (Tritt auch auf einem Windows 7 Rechner auf). Die möchten wir nicht aufmachen, blöderweise startet dann aber Java nicht ....
Gibt es eine Möglichkeit dem Java Client dieses Verhalten abzugewöhnen so dass er niedrigere Ports benutzt??
Danke
Nagus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 248316
Url: https://administrator.de/forum/java-client-benutzt-high-port-groesser-50-000-248316.html
Ausgedruckt am: 22.12.2024 um 11:12 Uhr
6 Kommentare
Neuester Kommentar
Hallo Nagus,
Wenn es um die Sourceports also die sogenannten Ephemeral ports geht, ist das Betriebsystem und die bind() Funktion dafür zuständig. Neuere Windows OS (ab Vista) verwenden hierfür die Ports die die IANA dafür vorsieht : 49152 - 65535.
Es gibt einen Registry-Eintrag mit dem man bestimmte Port-Bereiche für die Nutzung ausschliessen kann.
Dort einen REG_MULTI_SZ-Eintrag mit dem Namen ReservedPorts anlegen und den auszuschließenden Portrange eintragen, z.B. 50000-52000. Einzelne Ports lassen sich ebenfalls durch Leerzeichen voneinander getrennt eintragen.
Sollte der Registry-Eintrag keine Wirkung zeigen kann das ganze auch mit einem Netsh-Befehl konfiguriert werden.
Achtung: Pro Aufruf können immer nur maximal 2048 Ports ausgeschlossen werden!
Grüße Uwe
Zitat von @Nagus:
Der Java Client öffnet immer high Ports größer 50.000 und die werden für das Management der Firewall benötigt.
wovon reden wir hier, von Source- oder Destination Ports der Clientsoftware?Der Java Client öffnet immer high Ports größer 50.000 und die werden für das Management der Firewall benötigt.
Wenn es um die Sourceports also die sogenannten Ephemeral ports geht, ist das Betriebsystem und die bind() Funktion dafür zuständig. Neuere Windows OS (ab Vista) verwenden hierfür die Ports die die IANA dafür vorsieht : 49152 - 65535.
Es gibt einen Registry-Eintrag mit dem man bestimmte Port-Bereiche für die Nutzung ausschliessen kann.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
Sollte der Registry-Eintrag keine Wirkung zeigen kann das ganze auch mit einem Netsh-Befehl konfiguriert werden.
netsh int ipv4 Add excludedportrange protocol=tcp startport=50000 numberofports=2000
Grüße Uwe
Für Acknowledgements müssen keine Ports geöffnet werden wenn du auf dem Router NAT machst. Das sind ja "related" Ports die zu einer Verbindung gehören die der Client in eurem Netz nach draußen aufgebaut hat, und diese muss man nicht freischalten, außer eure Firewall ist extrem restriktiv eingestellt.