java - java套接字连接被拒绝?

标签 java sockets tcp

我正在使用一个简单的程序连接到服务器:

这是:

    public static void main(String[] args) throws Exception {
        String sentence;
        String modsent;

        //input Stream
        BufferedReader fromclient = new BufferedReader(new InputStreamReader(System.in));
        //client Socket
        Socket clientsock = new Socket("stockholm.serverdhse2.se", 9000);
        //output Stream attached to socket
        DataOutputStream serverout = new DataOutputStream(clientsock.getOutputStream());
        //input from Server
        BufferedReader fromserver = new BufferedReader(new InputStreamReader(clientsock.getInputStream()));

        sentence = fromclient.readLine();

        serverout.writeBytes(sentence + "\n");

        modsent = fromserver.readLine();

        System.out.println("From Server: " + modsent);

        clientsock.close();
    }

}

但现在我得到了异常(exception):

Exception in thread "main" java.net.ConnectException: Connection refused: connect
    at java.net.DualStackPlainSocketImpl.connect0(Native Method)
    at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
    at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
    at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
    at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
    at java.net.PlainSocketImpl.connect(Unknown Source)
    at java.net.SocksSocketImpl.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.<init>(Unknown Source)
    at java.net.Socket.<init>(Unknown Source)
    at register.main(register.java:22)

可能是什么问题?

最佳答案

也许它只能通过网络中的范围 DNS 服务器访问,请使用 nmap 检查:

nmap -A stockholm.serverdhse2.se -p 9000

给我一​​个:

无法解析给定的主机名/IP:stockholm.serverdhse2.se。

要确保它是 DNS 问题,请尝试使用 IP。 如果与您获得的 IP 连接成功:“dns 问题”

关于java - java套接字连接被拒绝?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12742030/

相关文章:

c - 类型转换 sockaddr 结构

c - 是否可以循环接收/读取以从套接字读取所有数据

tcp - 如何为多个消费者重用服务器端 TCP 端点?

qt - 使用Qt通过TCP接收原始图像数据进行显示

java - 使用 POST 请求将值从 HTTP 客户端发送到 HTTP 服务器,用 Java 编码

Java 程序在 Microsoft Server 上每个用户一个进程

java - java中的Eclipse代码checkstyle缩进模块?

java - 通过为单个线程分配唯一的 ID 来提高输出的清晰度

php - 通过 apache 运行 stream_socket_server 和客户端时连接被拒绝

java - 配置 TcpInboundGateway 以发送对同一消息的多个响应