java端口扫描器课程设计_java版端口扫描器

package com.hejx.ftp;

import java.net.*;

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 /n/n ";

str += " 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);

}

}

}

}

你可能感兴趣的:(java端口扫描器课程设计)