Prosty klient-serwer

0

Witam. Znalazłem na YT tutorial tworzenia aplikacji klient-serwer. Mam dwie takie aplikacje:

Serwer:

import java.net.*;
import java.io.IOException;
import java.sql.SQLOutput;

class Serwer
{
    public static void main(String []args) throws IOException
    {
        try
        {
        ServerSocket server = new ServerSocket(3002);
        Socket s = server.accept();


        System.out.println("Connected");
        } catch(Exception e) {}
    }
}

i klient:

import java.net.*;
import java.io.IOException;


class Klient
{
    public static void main(String[] args)
    {
        try {
            Socket s = new Socket("127.0.0.1", 3002);
            System.out.println("Connected!!");
        } catch (Exception e) {}
    }
}	

Na jednym komputerze wszystko działa ale jak próbowałem uruchomić klienta i serwer na dwóch innych komputerach to się nie łączyły. Co muszę zrobić aby te dwie aplikacje mogły się połączyć na osobnych komputerach?

0
  1. Poprawiłeś IP na odpowiednie dla komputerów?

  2. Być może Twoja aplikacja jest blokowana przez firewall.

0
IlikeJava napisał(a):

Na jednym komputerze wszystko działa ale jak próbowałem uruchomić klienta i serwer na dwóch innych komputerach to się nie łączyły. Co muszę zrobić aby te dwie aplikacje mogły się połączyć na osobnych komputerach?

A kolega wie, jak działają sieci ip?

W przykładzie klient próbuje się połączyć z serwerem działającym pod adresem 127.0.0.1. To jest adres lokalny działający na interfejsie loopback. Jeżeli użyłeś tego adresu w kliencie, to pakiety nawet nie opuszczą komputera. Powinieneś użyć poprawny adres ip, który jest osiągalny z komputera klienta (tzn. nie może być za NATem).

1 użytkowników online, w tym zalogowanych: 0, gości: 1