如何扫描局域网内固定ip段的某个端口?

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


public class SocketPort {

public static void main(String[] args) {

 String ip = "192.168.0.1"; 
 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 ");
    System.out.println("Information Of The Port On the " + hostname +"computer ");
    fout.println();

 // do ports scan
 for(int nport = 24;nport <= 60;++nport){
   try{

   Socket s = new Socket(hostname,nport);
   fout.println("The port " + nport + " is open!");
   System.out.println("The port " + nport + " is open!");

   fout.println("Connected to "+ s.getInetAddress() + " on port " + s.getPort() + " from port "+       s.getLocalPort() + " of " + s.getLocalAddress());
   System.out.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!");
   System.out.println("The port " + nport + " is closed!");

}

}
fout.close();

}
catch(IOException e){}

}
}


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值