端口扫描程序java实现

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

怎么样扫描计算机系统本地和远程的端口,监测其是打开还是关闭的在很多应用程序中都要用到,下面是用java实现的简单的端口扫描程序。

Source Code:

/*
 * Created on 2005-3-22
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */

/**
 * @author whandey    connect to me: [email protected]
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
import java.io.*;
import java.net.*;
import java.util.*;


public class SocketPort {

 public static void main(String[] args) {
  
  String ip = "159.162.39.27";   
  String hostname = new String();
  
     try{ //get the target ip address and hostname
   InetAddress address = InetAddress.getByName(ip);
   System.out.println(address);
   hostname = address.getHostName();
   System.out.println(hostname);
   }
   catch(UnknownHostException e)
   {
    System.out.println("Could not find "+ ip);
    
    }
  
  
  try
  {   // creat the output file
   PrintWriter fout = new PrintWriter( new FileWriter("PortInf.txt"));
   fout.println("Information Of The Port On the " + hostname +"computer ");
   fout.println();
  
  // do ports scan
  for(int nport = 25;nport < 30;++nport)
  {
   try
  {
   
   Socket s = new Socket(hostname,nport);
   fout.println("The port " + nport + " is open!");
   
   fout.println("Connected to "+ s.getInetAddress() + " on port " + s.getPort() + " from port "+ s.getLocalPort() + " of " + s.getLocalAddress());
   //print the connected socket information
   }
   
   catch(IOException e)
   {
    fout.println("The port " + nport + " is closed!");
    }
   
  }
  fout.close();
  
  }
  catch(IOException e){}
  
 }
}

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