端口扫描程序(java)

类别:Java 点击:0 评论:0 推荐:

import java.net.*;
import java.io.*;

public class Scanner implements Runnable
{
 private InetAddress IPAddress;
 private int Port;
 private Thread allportThread;

 public Scanner(String IPAddress, int port)
 {
  try
  {
   this.IPAddress = this.IPAddress.getByName(IPAddress);
   this.Port = port;
  }
  catch(Exception e)
  {
   System.out.println("The host does not exist.");
  }
 }

 public void run()
 {

  try
  {
   Socket TestPort = new Socket(this.IPAddress, this.Port); //if this port cannot been connected, throw a exception.
   System.out.println(this.Port + ": exist"); //if connected, print out.
  }
  catch(Exception e){}
 }

 public static void main(String[] args)
 {
  String str;
  str =  "TPoI Scanner 1.0 - Network Host Scanner\n";
  str += "Author: T.T (TPoI:http://www.tpoi.net)\n\n";
  str += "Usage: Scanner <options> <Hostname>\n\n";
  str += "<options> List:\n";
  str += "   -allport : scan the status of all the ports of the specified host\n";
  str += "   -port %0 : scan the status of the specified ports(%0) of the specified host\n\n";
  str += "Examples:\n";
  str += "   Scanner -allport www.microsoft.com\n";
  str += "   Scanner -port 80 21.64.34.191";

  if(args.length==0)
  {
   System.out.println(str);
  }
  else
  {   
   args[0] = args[0].toUpperCase().trim();
   char switchArgs = args[0].charAt(1);
   switch(switchArgs)
   {
    case 'A':
    {
     for(int i=1;i<=65535;i++)
     {
      Scanner mainScanner = new Scanner(args[1],i);
      if(mainScanner.allportThread.activeCount()>100)
       mainScanner.run();
      else
      {
       mainScanner.allportThread = new Thread(mainScanner);
       mainScanner.allportThread.start();
      }
     }
     break;
    }
    case 'P':
    { 
     Scanner mainScanner = new Scanner(args[2],java.lang.Integer.parseInt(args[1],10));
     try
     {
      mainScanner.run();
     }
     catch(Exception e)
     {
      System.out.println("parameter error");
     }
     break;
    }
    default:
     System.out.println(str);
   }
  }
 }
}

小弟是个刚开始念degree的学生,属于新手中的新手,如果有什么比较弱智的地方,请原谅

很想与高人交朋友 msn: [email protected]
QQ:367271

本文地址:http://com.8s8s.com/it/it16984.htm