Client verbindet sich nicht

wwwmarc

Mitglied
Hallo Leute, ich habe ein kleines Problem. Und zwar habe ich mein Server-Programm zu Testzwecken auf einem gemieteten vServer laufen. Wenn ich den Client mit dem Server verbinden möchte, kann er aber keine Verbindung aufbauen. Die ip-Adresse ist definitiv richtig und auch mein Programm läuft auf dem Server ohne Probleme. Beide Codes sind unten beigefügt, ich hoffe mir kann einer helfen.

Client:
Code:
public class Test {
    public static void main(String[] args)  {
        try {
            Socket  serv = new Socket("91.200.102.137", 2556);
            
            if(serv.isConnected())  {
                System.out.println("Verbunden");
            }
            
            Scanner scan = new Scanner(new BufferedReader(new InputStreamReader(serv.getInputStream())));
            while(scan.hasNextLine())  {
                System.out.println(scan.nextLine());
            }
            
        } catch (IOException e) {
            e.printStackTrace();
            System.err.println("Nicht verbunden!");
        }
    }

Server:
Code:
public class Server {
    public static void main(String[] args)  {
        try {
            ServerSocket serv = new ServerSocket(2556);
            Socket socket = serv.accept();
            
            PrintWriter w = new PrintWriter(new OutputStreamWriter(socket.getOutputStream()));
            w.println("Verbindung erfolgreich!");
            w.close();
            serv.close();
            
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}
 

httpdigest

Top Contributor
SSH mal auf deinen Server und schaue dir die Liste der offenen TCP Ports an, z.B. mit `netstat -tulpn`.
Wenn du dort deinen Prozess und Port 2556 siehst, kann es noch sein, dass nur auf IPv6 gehorcht wird. Starte mal deinen Server mit `-Djava.net.preferIPv4Stack=true`.
Wenn das alles schon so ist und dein Server auf "0.0.0.0" horcht, schaue mal in iptables, ob eventuell Firewall Regeln gesetzt sind: `sudo iptables -S TCP`.
 
K

kneitzel

Gast
Meine erste Vermutung wäre, dass auf dem Server eine Firewall aktiv ist und daher keine Verbindung möglich ist.
==> Port freischalten und dann geht es.
 

wwwmarc

Mitglied
SSH mal auf deinen Server und schaue dir die Liste der offenen TCP Ports an, z.B. mit `netstat -tulpn`.
Wenn du dort deinen Prozess und Port 2556 siehst, kann es noch sein, dass nur auf IPv6 gehorcht wird. Starte mal deinen Server mit `-Djava.net.preferIPv4Stack=true`.
Wenn das alles schon so ist und dein Server auf "0.0.0.0" horcht, schaue mal in iptables, ob eventuell Firewall Regeln gesetzt sind: `sudo iptables -S TCP`.

Ich muss dazu sagen, es ist ein Windows Server. Wo muss ich die Kommandos eingeben? Muss ich was davon mit im Code einbauen? Sorry für die blöden Fragen. Kenne mich nur damit noch nicht super gut aus, da ich das noch am lernen bin.
 

httpdigest

Top Contributor
Wenn du dich weder mit Windows Server noch mit Linux auskennst, empfehle ich dir: Kündige den Window Server und wechsle zu einem Linux Server. Die Wahrscheinlichkeit ist dann sehr viel größer, dass du sowohl Hilfe online (Google, StackOverflow, Dokumentationen, ...) als auch hier findest.
 

wwwmarc

Mitglied
Wenn du dich weder mit Windows Server noch mit Linux auskennst, empfehle ich dir: Kündige den Window Server und wechsle zu einem Linux Server. Die Wahrscheinlichkeit ist dann sehr viel größer, dass du sowohl Hilfe online (Google, StackOverflow, Dokumentationen, ...) als auch hier findest.

Vielen dank, dann werde ich das versuchen, wenn ich es so nicht zum laufen bekomme
 
K

kneitzel

Gast
Wenn du dich weder mit Windows Server noch mit Linux auskennst, empfehle ich dir: Kündige den Window Server und wechsle zu einem Linux Server. Die Wahrscheinlichkeit ist dann sehr viel größer, dass du sowohl Hilfe online (Google, StackOverflow, Dokumentationen, ...) als auch hier findest.
Also ich widerspreche ungerne aber einen Server ohne KnowHow zu betreiben ist - egal welches System - nicht zu empfehlen!
Es gibt bereits genug Systeme in Bot-Netzen. Da müssen nicht noch mehr Systeme mit schneller Anbindung dazu kommen.

Ich habe lange Zeit einige Root-Server im Einsatz gehabt und ich glaube ich weiß, wovon ich rede. Habe mehr wie eine Attacke mitmachen dürfen auf Grund von irgendwelchen PHP Tools, die Kunden im Einsatz haben wollten. Sowohl auf Linux als auch auf Windows Basis habe ich da einiges mitgemacht.

Weißt du wie die auf einem Windows Server freischalten kann?
Je nach Version heißt das etwas anders. Aber in der Regel findet es sich über den Server Manager (im Tools Menü meine ich) oder in der Systemsteuerung oder im Start Menü unter Administration.
Aber ich habe keinen Windows Server mehr um irgendwas nach zu sehen. (Bin halt seid paar Monaten unter Unix / AIX unterwegs.)
 

httpdigest

Top Contributor
Da gebe ich dir völlig Recht und erst keinen Server einzusetzen wäre auch meine Antwort, wenn das denn die Frage gewesen wäre. Die Frage, ob er überhaupt einen Server betreiben sollte ist aber orthogonal zu der Frage, mit welchem Server/Betriebssystem er seine Anwendung bzw. seine Netzwerkprobleme am ehesten zum Laufen bekommt bzw. gelöst bekommt.
 
K

kneitzel

Gast
Mir ging es vor allem um die Äußerung meiner Bedenken. Ohne tiefes Know How halte ich es nun einmal für kritisch. Ob Linux oder Windows ist da eigentlich egal.
 

wwwmarc

Mitglied
Ich habe den Server auch nicht lange. Habe ihn mir nur für einen Monat zu Testzwecken geholt, ob das alles so funktioniert, wie ich es mir vorstelle. Trotzdem danke für eure Hilfe, ich schaue dann mal
 
X

Xyz1

Gast
Am Code und dem Kommunikationsverlauf sollte es nicht liegen, den habe ich gerade auf localhost gegengeprüft:
Java:
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;

public class Serv1 {
  public static void main(String[] args) {
    try {
      ServerSocket serv = new ServerSocket(2556);
      Socket socket = serv.accept();

      PrintWriter w = new PrintWriter(new OutputStreamWriter(socket.getOutputStream()));
      w.println("Verbindung erfolgreich!");
      w.close();
      serv.close();

    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.Socket;
import java.util.Scanner;

public class Serv2 {
  public static void main(String[] args) {
    try {
      Socket serv = new Socket("localhost", 2556);

      if (serv.isConnected()) {
        System.out.println("Verbunden");
      }

      Scanner scan = new Scanner(new BufferedReader(new InputStreamReader(serv.getInputStream())));
      while (scan.hasNextLine()) {
        System.out.println(scan.nextLine());
      }

    } catch (IOException e) {
      e.printStackTrace();
      System.err.println("Nicht verbunden!");
    }
  }
}


Wenn Du auf Windows Server startest, sollte er Dich eigentlich fragen ob Du die Kommunikation zulassen möchtest. Das erlauben. Wenn Du es wegklickst, erscheint die Meldung nicht mehr.

Schau auch hier mal https://docs.telerik.com/teststudio/features/testing-types/performance-testing/open-port-on-server
 

mihe7

Top Contributor
Ich habe lange Zeit einige Root-Server im Einsatz gehabt und ich glaube ich weiß, wovon ich rede. Habe mehr wie eine Attacke mitmachen dürfen auf Grund von irgendwelchen PHP Tools, die Kunden im Einsatz haben wollten. Sowohl auf Linux als auch auf Windows Basis habe ich da einiges mitgemacht.
Wir betreiben auch ein paar Server, die Zahl der Angriffe ist krass. Bei einigen Servern blockt die Firewall alles außer ssh und https. Dabei ist ssh ist nur noch mit Public-Key-Auth benutzbar, die Anwendungen laufen alle in Containern hinter einem nginx als Reverse Proxy. Außerdem werkelt fail2ban und besonders auffällige IP-Adressen werden auch mal manuell per statischen Regeln grundsätzlich ausgeschlossen. Kurz: man macht, was man kann, aber ein mulmiges Gefühl bleibt irgendwie immer...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
K Warum wird mir auf der Konsole des Servers nicht "xxxx" angezeigt (Server/Client) Java Basics - Anfänger-Themen 4
K Verständnis Problem bei Server/Client Java Basics - Anfänger-Themen 2
K Warum wird mir "Empfangen vom Client:" nicht sofort ausgegeben(Server/Client) Java Basics - Anfänger-Themen 3
K Verständnisproblem bei Server/Client Java Basics - Anfänger-Themen 3
A Server - Client Nachrichtenaustausch über Eventbus Java Basics - Anfänger-Themen 12
berserkerdq2 Sende eine Nachricht an den Client und leere den Ausgabestorm, was ist damit genau gemeint? Java Basics - Anfänger-Themen 3
S Java Client-je nach Heap Size Größe startet Applikation oder nicht Java Basics - Anfänger-Themen 4
D Verbesserungsvorschläge zur Struktur einer Client Server Desktop Chat App Java Basics - Anfänger-Themen 24
D Unerwartetes Verhalten bei Client Server Chat App Java Basics - Anfänger-Themen 12
D Welche GUI Library für eine Client Server Chat App Java Basics - Anfänger-Themen 14
K Verständnisfrage Server/Client BufferedReader, PrintWriter Java Basics - Anfänger-Themen 2
A Client-Server Kommunikation Java Basics - Anfänger-Themen 3
I Client ObjectInputStream error... Java Basics - Anfänger-Themen 5
B Email Client in der eigenen Software einbauen Java Basics - Anfänger-Themen 3
S Server - für jeden Client ein Serverthread Java Basics - Anfänger-Themen 2
E SocketServer/Client stürzt ab. Address already in use. Java Basics - Anfänger-Themen 2
I Wann ist Client plattformunabhängig? Java Basics - Anfänger-Themen 22
E MCLauncher eigener Client workt nicht? Java Basics - Anfänger-Themen 4
L Erste Schritte Erste Versuche mit Server und Client Java Basics - Anfänger-Themen 7
elischa Client-Server IO und Stream Steuerung ? Java Basics - Anfänger-Themen 2
I Print Client -> Server -> Client? Java Basics - Anfänger-Themen 1
I Unique client information in WebApp Java Basics - Anfänger-Themen 3
I lokales Programm mit Client/Server Programm kommunizieren Java Basics - Anfänger-Themen 3
J TCP MultiThreaded Server und Client - irgendwo ist der Fehler, aber ich find ihn nicht Java Basics - Anfänger-Themen 3
Joew0815 Error org.apache.xmlrpc.client.XmlRpcClientConfigImpl.setUserAgent Java Basics - Anfänger-Themen 2
N Was bedeutet "Implementierung vor dem Client verbergen" bei Design Patterns? Java Basics - Anfänger-Themen 2
K Java Client > Python Server Java Basics - Anfänger-Themen 0
O Verriegeln, aber wo? Finde den Client der zu schließem ist. Java Basics - Anfänger-Themen 0
S Java - Client/Server mit Stomp kurze Frage Java Basics - Anfänger-Themen 0
T Buffererwriter keine Exception obwohl Client weg Java Basics - Anfänger-Themen 2
E Client Server Java Basics - Anfänger-Themen 12
H Einfache Client/Server-Kommunikation Java Basics - Anfänger-Themen 16
O Server Client Problem Java Basics - Anfänger-Themen 2
N Client soll mehrere Antworten von Servern gleichzeitig empfangen Java Basics - Anfänger-Themen 8
H Java Server/Client, HTML Seite anzeigen Java Basics - Anfänger-Themen 2
L Server pingt Client und fordert Info Java Basics - Anfänger-Themen 2
T Client-Fenster bei Aufruf unvollständig Java Basics - Anfänger-Themen 12
E Senden von Objects an Client. Variablenwerte kommen nicht an Java Basics - Anfänger-Themen 5
R Server/Client für Spiel Java Basics - Anfänger-Themen 2
E Client hilfe!!! Java Basics - Anfänger-Themen 7
B RMI - Fehlermeldung auf dem Client Java Basics - Anfänger-Themen 6
X Applet - Client/Server Java Basics - Anfänger-Themen 2
E Client ergibt NULL? Java Basics - Anfänger-Themen 24
E Socket (Client) dauerhaft aktiv? Java Basics - Anfänger-Themen 9
E HTTP Client - Login durchführen? Java Basics - Anfänger-Themen 4
L Ip-Adresse für Client Java Basics - Anfänger-Themen 14
L Bild versenden über Client/Server Java Basics - Anfänger-Themen 10
L Wegwerf Client Java Basics - Anfänger-Themen 26
S Klassen Server und Client Java Basics - Anfänger-Themen 3
M Client - DB-Server Struktur Java Basics - Anfänger-Themen 7
L Client aktualisieren Java Basics - Anfänger-Themen 6
U Probleme mit Server-Client implementierung Java Basics - Anfänger-Themen 5
G Server-Client Kommunikation Java Basics - Anfänger-Themen 3
J DNS-Client Java Basics - Anfänger-Themen 2
J Simpler DNS Client Java Basics - Anfänger-Themen 20
Z Tomcat Server Kommunikation zu Client Applet Java Basics - Anfänger-Themen 5
B Server-Client mit Thread ausstatten Java Basics - Anfänger-Themen 3
D Client-Server Problem Java Basics - Anfänger-Themen 2
J Netzwerkrprogammierung Client - Server Java Basics - Anfänger-Themen 3
J Netzwerkprogrammierung Client/Server Java Basics - Anfänger-Themen 16
G ArrayListe vom Server nach Client schicken Java Basics - Anfänger-Themen 17
M Flexiblen Client programmieren Java Basics - Anfänger-Themen 2
G JMS -> Wie Anmeldung vom Client an Server? Java Basics - Anfänger-Themen 4
S Webservice: Dateien downloaden vom Webserver auf den Client Java Basics - Anfänger-Themen 7
G Ausg. in JSP erzeugen die als Antwort an Client gesch. wird Java Basics - Anfänger-Themen 2
I Server / Client Programm wie einen String übergeben? Java Basics - Anfänger-Themen 6
K Client-Liste im Chat Java Basics - Anfänger-Themen 2
B Client - Server Verbindung über sockets mysql DB ansprechen? Java Basics - Anfänger-Themen 6
G Java Server Client Programmierung Java Basics - Anfänger-Themen 3
B Bild/Datei von einem Server an einen Client senden Java Basics - Anfänger-Themen 6
A Problem mit Ausgabe einer Liste über einen Client Java Basics - Anfänger-Themen 5
rambozola zugriff auf client bei j2ee anwendung Java Basics - Anfänger-Themen 10
G Mail Client öffnen Java Basics - Anfänger-Themen 9
D Server/Client Java Basics - Anfänger-Themen 8
T Datei über UDP verschicken . Speicherprobleme am Client Java Basics - Anfänger-Themen 4
H Server Client, es kommt nichts an. Java Basics - Anfänger-Themen 5
R client-applikation? Java Basics - Anfänger-Themen 5
G [Hilfe] Fileupload: Client-Server Java Basics - Anfänger-Themen 9
S Server/Client Verbindung Java Basics - Anfänger-Themen 2
G Dateidownload Client-Server (jsp) Java Basics - Anfänger-Themen 4
G Zugriff vom 'Server auf Client' Java Basics - Anfänger-Themen 4
S smtp-Client programmieren Java Basics - Anfänger-Themen 9
S Client-Server Java Basics - Anfänger-Themen 18
X client soll bat auf server ansprechen Java Basics - Anfänger-Themen 7
C client/server programm fehler ! Java Basics - Anfänger-Themen 20
F Wie kommen die Applets zum Client? Java Basics - Anfänger-Themen 7
C string über server/client verbindung senden ? Java Basics - Anfänger-Themen 4
T Client-Authentifizierung Java Basics - Anfänger-Themen 6
K [servcer/Client] Suche Server /Client Tutorial. Java Basics - Anfänger-Themen 2
G http client Java Basics - Anfänger-Themen 4
N Klassen Hintergrundfarbe in JPanel ändert sich nicht Java Basics - Anfänger-Themen 3
KogoroMori21 Wann ist der richtige Zeitpunkt, um sich Hilfe zu suchen? (Bin Informatik-Student) Java Basics - Anfänger-Themen 10
N Hey Leute und zwar versuche ich gerade ein 2D Spiel zu Programmieren aber die Figur will sich nicht nach links oder rechts bewegen :( Java Basics - Anfänger-Themen 12
T code so schreiben das er von sich selber anpasst (code soll die anzahl aller bustaben bestimmen) Java Basics - Anfänger-Themen 16
P Probleme mit NetBeans: Wie lässt sich jar. Datei an einem MacBook öffnen Java Basics - Anfänger-Themen 21
G Variable aktualisiert sich nicht in rekursiver Methode Java Basics - Anfänger-Themen 4
F abbruch Exception lässt sich nicht erstellen Java Basics - Anfänger-Themen 2
G jar file lässt sich nicht öffnen Java Basics - Anfänger-Themen 1
xaerez Threads Boolean Wert verändert sich nicht Java Basics - Anfänger-Themen 5
xaerez Threads Boolean Wert verändert sich nicht Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben