繁体   English   中英

用Java套接字拒绝连接?

[英]Connection refused with java socket?

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

就这个:

    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 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问题”

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM