`
yyzhpq
  • 浏览: 309691 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

端口扫描程序(java)

    博客分类:
  • java
阅读更多

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


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 <options> <Hostname>\n\n";
  str += "<options> 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多线程端口扫描器

    **JAVA多线程端口扫描器** 在计算机网络中,端口扫描是一种常见的技术,用于检测目标主机上开放的服务和应用程序。此项目是基于Java语言实现的多线程端口扫描器,它允许用户对本地系统或指定的远程IP地址进行快速...

    Java多线程端口扫描程序(IP地址段)

    Java多线程端口扫描程序是一种利用Java编程语言实现的工具,它能够对指定的IP地址段进行TCP端口的快速扫描。这个程序基于MyEclipse开发环境编写,利用了Java的强大功能,尤其是其在网络编程和多线程方面的优势。 在...

    java端口扫描程序

    Java端口扫描程序是一种利用Java编程语言实现的工具,它能够探测目标主机或特定IP地址范围内的网络设备上开放的端口。这个程序基于客户端/服务器(C/S)架构,通常采用图形用户界面(GUI)设计,如SWING库来构建用户...

    JAVA端口扫描程序

    【JAVA端口扫描程序】 在计算机网络中,端口扫描是一项重要的技术,它用于发现远程或本地主机上开放的服务和应用程序。端口扫描通常由网络安全专业人员、系统管理员以及恶意黑客执行,目的是评估网络安全性或者寻找...

    基于java的多线程端口扫描软件(源码)

    本项目是基于Java实现的多线程端口扫描软件,旨在利用多线程技术来提高端口扫描的速度和效率。端口扫描是网络安全领域中的一个关键操作,用于发现网络上开放的服务和可能的安全漏洞。 1. **Java多线程** 在Java中...

    java实现的端口扫描程序

    本文将详细解析使用Java实现的端口扫描程序,旨在帮助程序员理解和应用这一技术。 首先,我们需要理解端口的概念。在TCP/IP协议中,端口是一个标识服务的逻辑地址,范围为0到65535,其中0到1023是知名端口,通常由...

    java端口扫描程序输入线程数ip地址端口范围开始扫描

    java端口扫描程序 java端口扫描程序 输入线程数 ip地址 端口范围 开始扫描

    Java端口扫描程序

    ### Java端口扫描程序知识点详解 #### 一、概述 Java端口扫描程序是一种网络工具,主要用于检测目标主机上开放的TCP端口。通过这种方式,用户可以了解远程计算机上哪些服务是可访问的,这对于网络安全审计及渗透...

    java端口扫描器,简单

    Java端口扫描器是一种利用Java编程语言实现的工具,它用于探测网络中特定主机上开放的端口。在计算机网络中,每个端口都对应一个服务或应用,通过监听特定的端口号来接收数据。端口扫描是网络安全评估、系统漏洞检测...

    一个简单的Java端口扫描程序,希望大家指正

    在这个场景中,我们有一个名为"一个简单的Java端口扫描程序"的项目,它是一个基础的学习资源,可以帮助初学者理解如何在Java中实现端口扫描功能。下面,我们将深入探讨这个主题。 端口扫描是指通过网络发送特定的...

    java本地监听与远程端口扫描源码.zip

    java本地监听与远程端口扫描源码java本地监听与远程端口扫描源码java本地监听与远程端口扫描源码java本地监听与远程端口扫描源码java本地监听与远程端口扫描源码java本地监听与远程端口扫描源码java本地监听与远程...

    java开发的端口扫描程序

    在Java编程语言中开发端口扫描程序,可以利用其跨平台性、强大的I/O库以及丰富的类库支持。下面将详细介绍Java端口扫描程序的相关知识点。 1. **Java网络编程基础** - Java中的`java.net`包提供了进行网络编程所需...

    Java多线程端口快速扫描

    Java多线程端口扫描是网络管理与安全领域...通过以上技术,Java多线程端口扫描程序能够有效地探测网络环境,为网管和网络安全从业者提供有力的工具。同时,对程序进行持续优化和改进,可以进一步提升扫描效率和准确性。

    JAVA本地监听与远程端口扫描(源代码+论文)

    在这个主题中,"JAVA本地监听与远程端口扫描"涉及到两个关键概念:本地监听和远程端口扫描。 本地监听通常指的是一个Java程序开启一个网络服务,监听特定的网络端口,等待来自其他网络设备的连接请求。这是许多网络...

    Java端口扫描IP程序

    Java具有丰富的类库,包括网络编程相关的API,这使得用Java编写端口扫描程序变得相对简单。 二、网络套接字(Sockets) 在Java中,进行端口扫描主要涉及到Socket类和ServerSocket类。Socket用于建立客户端与服务器...

    java实现的多线程端口扫描程序

    在这个场景中,我们讨论的是一个基于Java实现的多线程端口扫描程序。端口扫描是网络安全和网络管理中的常见操作,用于发现远程主机上开放的服务和端口。这种程序可以帮助系统管理员检查网络的脆弱性,定位潜在的安全...

    基于多线程的端口扫描器

    该扫描器实现了不同方式进行扫描,同时支持端口范围和线程数的手动设定,并且实现了扫描结构的保存功能。

    Java端口扫描器.课程设计

    Java端口扫描器.课程设计 Java端口扫描器.课程设计 Java端口扫描器.课程设计 Java端口扫描器.课程设计 Java端口扫描器.课程设计

Global site tag (gtag.js) - Google Analytics