Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Socket connectoin problems / 7 сообщений из 7, страница 1 из 1
14.07.2013, 22:33:24
    #38330687
6o6epYi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Socket connectoin problems
Помогите разобраться в чем проблема, когда запускаю Сервер в городе А и Клиент в городе Б то нечево не происходит, но если я делаю тоже самоэ на локали то все работает. Я делал тест на розстояние 2000 километров.

========================= SOURCE ======================
CLIENT CLASS START
----------------------------------------------------------------------
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
import java.io.IOException;
import java.io.ObjectOutputStream;

import java.net.Socket;
import java.net.UnknownHostException;

import javax.swing.JOptionPane;


public class ClientA {
    public ClientA() {
    }

    public static void main(String[] args) {
        runAll();
    }

    public static void runAll() {
        Socket s = null;
        ObjectOutputStream oos = null;
        try {
            s = new Socket(getIP(), 2013);
            oos = new ObjectOutputStream(s.getOutputStream());
            oos.writeObject("Waiting for connection..."); 
            oos.writeObject("Client conected...");
            String str1 = "12345";
            while (!str1.equals("poka")) {
                oos.writeObject(str1);
                str1 = JOptionPane.showInputDialog(null, "send?");
            }
        } catch (UnknownHostException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                oos.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
            try {
                s.close();
            } catch (IOException ioe) {
                // TODO: Add catch code
                ioe.printStackTrace();
            }
        }
    }
	private static String getIP(){
		String s;
		s = JOptionPane.showInputDialog(null, "conect to?");
		if(s!=null){
			return s;
		}
		return "localhost";
	}
}



//// Client END........

#################################################

SERVER CLASS START
----------------------------------------------------------------------
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
import java.io.EOFException;
import java.io.IOException;
import java.io.ObjectInputStream;

import java.net.ServerSocket;
import java.net.Socket;
import javax.swing.*;

public class ServerA {
    public ServerA() {
    }

    public static void main(String[] args) {
        runAll();
    }
	private static void sendObject msg{
		JOptionPane.showMessageDialog(null, msg.toString());
	}
    public synchronized static void runAll() {
        int port = 2013;
        ServerSocket ss = null;
        ObjectInputStream ois = null;
        try {
            ss = new ServerSocket(port);
            Socket s = ss.accept();
            ois = new ObjectInputStream(s.getInputStream());
            Object o = ois.readObject();
            while (o != null) {
                ///System.out.println(""+o.toString());
                ///JOptionPane.showMessageDialog(null, "SERV-"+o.toString());
				sendo;
                o = ois.readObject();
                if (o == null) {
                    System.out.println("eto ya:BREAK");
                    break;
                }
            }

        } catch (EOFException eof) {
            System.out.println("Client Disconected!.....");
        } catch (IOException e) {
            System.out.println("problema I/O");
        } catch (ClassNotFoundException e) {
            System.out.println("Net klasa");
        } finally {
            try {
                ois.close();
                ss.close();
            } catch (IOException ioe) {
                // TODO: Add catch code
                ioe.printStackTrace();
            }
        }
    }
}



///// Server END
...
Рейтинг: 0 / 0
15.07.2013, 01:09:26
    #38330735
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Socket connectoin problems
Что говорит
Код: sql
1.
tracert -d адрес

указываемого адреса?
Host/network unreachable?
...
Рейтинг: 0 / 0
15.07.2013, 01:28:17
    #38330742
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Socket connectoin problems
Basil A. SidorovЧто говорит
Код: sql
1.
tracert -d адрес

указываемого адреса?
Host/network unreachable?

Это-то как раз неважно, важно, что скажет

telnet target-host target-port
...
Рейтинг: 0 / 0
15.07.2013, 11:35:39
    #38331052
6o6epYi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Socket connectoin problems
MasterZiv,

Хост стандартный типа 127.аа.бб.вв и порт свободный от 1024 до 65535 с этим все в порядке.
...
Рейтинг: 0 / 0
15.07.2013, 11:47:11
    #38331077
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Socket connectoin problems
Причем здесь, блин, вообще расстояние? Даже компы на противоположных концах планеты могут быть объединены в подобие локальный сети.
Вам нужно подтянуть понимание TCP.
Сервер должен иметь белый внешний IP. Иначе клиент его просто не увидит. Порт 2013 должен быть открыт. Хороший админ все порты блокирует, кроме нужных.
Биндить серверный сокет нужно не на localhost, а на тот сетевой интерфейс, который подключен к сети, через которую может прийти запрос от клиента.
У сервер может бы несколько сетевых интерфейсов, например.
...
Рейтинг: 0 / 0
15.07.2013, 15:02:51
    #38331470
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Socket connectoin problems
6o6epYiMasterZiv,

Хост стандартный типа 127.аа.бб.вв и порт свободный от 1024 до 65535 с этим все в порядке.

Ты телнет-то попробуй...
...
Рейтинг: 0 / 0
15.07.2013, 17:27:18
    #38331735
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Socket connectoin problems
6o6epYiХост стандартный типа 127.аа.бб.ввСлов нет - одни маты.
IP-адрес и втыкать раздел "Частные IP-адреса", пока в вашей гениальной головке не уляжется простая мысль: все адреса из сети 127.0.0.0/8 это "мой компьютер".
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Socket connectoin problems / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]