Frage von Albert30103, 79

Wie kann ich einen Server in meinem Computer bauen?

Socket socket = new Socket("localhost", port); Ich möchte hier nicht "localhost" benutzen sondern Meine IPAdress. Also ich will 2 Computer mithilfe Socket verbinden.

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von gsys1337, 58

Wieso schreibst Du dann nicht einfach die IP-Adresse in den Code ... ?

Kommentar von Albert30103 ,

Kann das funktionieren? Muss ich nicht einen ServerProgram installieren?

Kommentar von gsys1337 ,

Natürlich, Du benötigst auf dem Rechner, zu welchem Du Dich verbinden möchtest, ein Programm, welches quasi am entsprechenden Port lauscht, ob sich ein anderer Rechner über den Port mit ihm verbinden möchte.

Aufgrund der Fragestellung war ich davon ausgegangen, dass ein solches Programm bereits vorhanden ist.

Kommentar von Albert30103 ,

Was muss Client hiere schreiben : Socket client = new Socket("", port); ich teste das in meinem computer und schreibe localhost. Aber was muss von einem anderem Computer geschrieben werden?

Kommentar von gsys1337 ,

Du musst einfach dort, wo "localhost" steht, die IP-Adresse des Rechners eingeben, zu welchem sich der Client verbinden soll.

Auf dem Rechner, zu welchem verbunden werden soll, muss aber auch eine Server Software laufen, welche auf eingehende Verbindungen über den angegebenen Port wartet.

Antwort
von phigeek, 18

Dein Beispiel ist für den Client. Verwende "ServerSocket", um einen Server zu bauen:


int port = /* z. B. */ 8765;
ServerSocket serverSocket;
serverSocket = new ServerSocket(port);


Mit

Socket clientSocket             = serverSocket.accept();

kannst Du danach in einer Schleife auf neue Verbindungen der Clients warten.

Kommentar von Albert30103 ,

Was muss Client hiere schreiben : Socket client = new Socket("", port); ich teste das in meinem computer und schreibe localhost. Aber was muss von einem anderem Computer geschrieben werden?

Kommentar von phigeek ,

Auf Client Seite:

z.B. String host = "127.0.0.1"; // oder entfernte Adresse.

und dann den entsprechenden Port angeben:

Socket s1 = new Socket(host, 8765);

Keine passende Antwort gefunden?

Fragen Sie die Community