简单端口扫描器java的设计与实现.doc
《简单端口扫描器java的设计与实现.doc》由会员分享,可在线阅读,更多相关《简单端口扫描器java的设计与实现.doc(39页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-date简单端口扫描器java的设计与实现简单端口扫描器java的设计与实现简单端口扫描器java的设计与实现IPScan类的实现package scan.pratice;import .InetAddress;import .Socket;import .UnknownHostException;import java.util.ArrayList;import java.
2、util.ListIterator;public class IPScan static long startTime=System.currentTimeMillis(); /获取开始时间public static void main(String args) if(args.length !=2)System.out.println(参数不对);int startIP = Integer.parseInt(args0); /获得起始IP,因为args是String类型,所以要强制转换成int类型 int endIP = Integer.parseInt(args1); /获得终止IP,同上
3、 ArrayList result = new ArrayList();/ip地址扫描for(int id=startIP;id=endIP;id+)String addres= 10.28.23.;try Socket s=new Socket(addres+id,8000); /建立连接 catch (UnknownHostException e ) catch(Exception e)/System.out.println(e.toString();if(e.toString().endsWith(.ConnectException: Connection timed out: conn
4、ect)System.out.println(addres+id+:not exist.);elseSystem.out.println(addres+id+:exist.);ListIterator li = result.listIterator(); /获得ArrayList的ListIterator while(li.hasNext() /如果li里面有元素 System.out.println(li.next().toString(); /打印出指向的元素,同时将指向下一个元素 long endTime=System.currentTimeMillis(); /获取结束时间Syste
5、m.out.println(程序运行时间: +(endTime-startTime)+ms);PortScan类的实现package scan.pratice;import java.io.IOException;import .InetAddress;import .Socket;import .UnknownHostException;import java.util.ArrayList;import java.util.ListIterator;public class PortScan static long startTime=System.currentTimeMillis();
6、/获取开始时间public static void main(String args) if(args.length !=3)System.out.println(参数不对);String ip = args0; /获得我们指定的服务器地址 int startPort = Integer.parseInt(args1); /获得起始端口号,因为args是String类型,所以要强制转换成int类型 int endPort = Integer.parseInt(args2); /获得终止端口号,同上 if(startPort65535|endPort65535) /检查端口是否在合法范围1655
7、35 System.out.printf(端口范围必须在165535以内!); return; else if(startPortendPort) /比较起始端口和终止端口 System.out.println(端口输入有误! 起始端口必须小于终止端口); return; InetAddress address;try address = InetAddress.getByName(ip); /转换类型 catch(UnknownHostException e) System.out.println(无法找到 + ip); return; ArrayList result = new Arra
8、yList();/端口扫描for(int nport=startPort;nport=endPort;nport+) String typeport=;switch( nport )/其实这儿可以不用switch,直接用个hash表记录就可以 case 21: typeport = (FTP); break; case 23: typeport = (TELNET); break; case 25: typeport = (SMTP); break; case 80: typeport = (HTTP); break; case 110: typeport = (POP); break; ca
9、se 139: typeport = (netBIOS); break; case 1433: typeport = (SQL Server); break; case 3389: typeport = (Terminal Service); break; case 443: typeport = (HTTPS); break; case 1521: typeport = (Oracle); break; /从起始端口到终止端口进行循环 try /System.out.print(Scanning +nport); /打印扫描进度 System.out.println(ip + :+nport
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 简单 端口 扫描器 java 设计 实现
限制150内