java和nmap中的套接字

时间:2012-09-11 18:33:06

标签: java sockets networking nmap

我有程序在java中编写它等待端口连接

当我通过nmap扫描服务器时程序停止(erorr)

这是我的代码

SSLServerSocketFactory sslServerSocketfactory = (SSLServerSocketFactory)SSLServerSocketFactory.getDefault();
                sslServerSocket = (SSLServerSocket)sslServerSocketfactory.createServerSocket(intSSLport);

out = new PrintWriter(sslSocket.getOutputStream(), true);
                  in = new BufferedReader(new InputStreamReader(sslSocket.getInputStream()));
                  String value = in.readLine();

感谢jtahlborn ,,,,我通过使用try和catch解决了,,,并使catch返回

sslSocket = (SSLSocket)sslServerSocket.accept()

再次

1 个答案:

答案 0 :(得分:2)

nmap正在扫描开放端口,尝试连接它们(发送TCP SYN)。 由于您已打开服务器套接字,因此在客户端连接到它时会返回。 在你的情况下,它是nmap,它试图连接。

AFAIK,nmap不会完成TCP连接程序(3次握手)。 nmap将收到因调用accept()而发送的TCP SYN / ACK,并将结束端口打开。 这就是全部,nmap不会发送完成TCP连接过程(ACK)所需的第3条消息。