您的位置:首页 > 编程语言 > Java开发

java实现端口扫描

2012-09-24 08:53 288 查看
 
import java.io.*;

public class MyTest {
public static void main(String[] args) {
Runtime runtime = Runtime.getRuntime();
Process process = null;
try {
process = runtime.exec("netstat -a");
} catch (IOException e) {
e.printStackTrace();
}
InputStreamReader inputStreamReader = new InputStreamReader(process.getInputStream());
BufferedReader br = new BufferedReader(inputStreamReader);
PrintWriter writer = new PrintWriter(System.out);

String line = null;
try {
while ((line = br.readLine()) != null) {
writer.println(line);
}
writer.flush();
writer.close();
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
 
 
import java.net.*;
import java.io.*;

public class TCPPort{
public static void main(String[] args) {
for (int i = 0; i < 4; i++) {
Runnable r = new SearchPort(i * 256, (i+1) * 256);
Thread t = new Thread(r);
t.start();
}
}
}

class SearchPort implements Runnable {
private int portBegin = 0;
private int portEnd = 0;

public SearchPort(int portBegin, int portEnd) {
this.portBegin = portBegin;
this.portEnd= portEnd;
}
public void run() {
this.searchPort();
}
private void searchPort() {
int i;
for (i = portBegin; i < portEnd; i++) {
try {
Socket socket = new Socket("localhost", i);
System.out.println(i + " 号端口正在使用。");
} catch (IOException e) {
continue;
}
}
}
}


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息