Не удается подключиться к порту 7 - PullRequest
0 голосов
/ 27 августа 2011

Запуск следующего кода дает исключение:

D: \ books \ tutorial \ network \ sockets \ examples> java EchoClient Отказ в соединении: соединение

На самом деле это код из учебных пособий по Java (из Oracle) Я даже пытался открыть icmp eco-запросы от брандмауэра, кто-нибудь может объяснить, почему это происходит? Я использую Windows 7 32 бит

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

public class EchoClient {
    public static void main(String[] args) throws Exception {
        Socket echoSocket = null;
        PrintWriter out = null;
        BufferedReader in = null;
        try {
            echoSocket = new Socket("localhost", 7);
            out = new PrintWriter(echoSocket.getOutputStream(), true);
            in = new BufferedReader(new InputStreamReader(
                                        echoSocket.getInputStream()));
        } catch (Exception e) {
            System.err.println(e.getMessage());
            System.exit(1);
        }

    BufferedReader stdIn = new BufferedReader(
                                   new InputStreamReader(System.in));
    String userInput;

    while ((userInput = stdIn.readLine()) != null) {
        out.println(userInput);
        System.out.println("echo: " + in.readLine()); 
    }

    out.close();
    in.close();
    stdIn.close();
    echoSocket.close();
    }
}

1 Ответ

1 голос
/ 27 августа 2011

На Unix-машинах в любом случае вы должны иметь привилегии суперпользователя (более или менее эквивалентные привилегиям администратора в Windows), чтобы открыть номера портов менее 1024 для прослушивания.Вы можете столкнуться с аналогичной проблемой в Windows.С другой стороны, более внимательный взгляд на код показывает, что вы пытаетесь подключиться к нему как к клиенту, что не требует повышенных привилегий.

Возможно, проблема в том, что нет прослушивания службы (демона)по порту - так нечего отвечать на ваш эхо-запрос?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...