Sera que alguem poderia me ajudar a resolver.
Comecei este ano em Java na faculdade e o professor é muito ruim. Tenho
que entregar este trabalho e o tempo é curto. Conto com a cooperacao de
todos!! Valeu!!
Situacao:
Modificar a aplicacao PortScanner (anexa) para
que seja otimizado o tempo de pesquisa das portas.
Otimizacao feita atraves de threads. O programa devera pergunta ao usuario: - qual o nome ou endereco IP do servidor a ser pesquisado; - quais os intervalos de portas a serem pesquisados pelo programa (intervalo maximo devera ser 1 ate 65536). O numero de intervalos fica a criterio do usuario. Ex.: intervalo "a"(1 ate 200), intervalo "b"(201 ate 1000)... - qual a prioridade para cada intervalo? logo apos a informacao do limite de um intervalo, o usuario devera informar a prioridade do mesmo. Podem existir intervalos com prioridades iguais. Caso nao seja definida, devera seu utilizada a pioridade default. Documentacao: classes utilizadas, relacao
hierarquica, conceitos, variaveis, metodos e objetivos.
Aplicacao PortScanner:
import java.net.*;
import java.io.*; public class PortScanner {
public static void main(String[]
args) {
String host = "x.x.x.x"; if (args.length > 0) { host = args[0]; } try { InetAddress the Address = InetAddress.getByName(host); for (int i =1; i < 65536; i++) { Socket connection = null; try { connection = new Socket(host, i); System.out.println ("Existe um servico habilitado na porta " + i + "of" + host); } catch (IOException e) { // nao ha um servidor nesta porta } finally { try { if (connection ! = null) connection.close(); } catch (IOException e) {} } }// end for }// end try catch (UnknownHostException e) { System.err.println(e); } }//end main }//end PortScanner |