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

Reply via email to