QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7432|回复: 9

tcp端口扫描源程序(java)

[复制链接]
发表于 2004-7-11 22:57:44 | 显示全部楼层 |阅读模式
简单得超乎你想象吧,其实socket编程并不难,Java在这方面比C++要简单,但功能并不差于C++。


// Author: Mark Hall (Maybe)

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

public class lookForPorts {

// locate which of the first 1024 ports seem to be hosting TCP servers
// host is read in from the command line or defaults to localhost

   public static void main(String[] args) {

Socket theSocket;
String host = "localhost";

if (args.length > 0)
{ host = args[0]; }

for (int i = 0; i < 1024; i++)
{
  try {
   theSocket = new Socket(host, i);
   System.out.println("There is a server on port " + i + " of " + host);
  }
  catch (UnknownHostException e)
  { System.err.println(e); break;}
  catch (IOException e)
  { // must not be a server on this port
  }
    }
   }
}
发表于 2004-8-13 08:41:31 | 显示全部楼层
说实话,没任何用处。。。。。。
回复

使用道具 举报

发表于 2004-8-13 09:15:49 | 显示全部楼层
这段代码,可能会导致大量的c程序员转行了。
回复

使用道具 举报

发表于 2004-10-25 02:45:27 | 显示全部楼层
速度慢于本地实现多少呢?
想要更短的吗? try Jython, which I dreamed but never tried
这个帖子发得跑题ing
回复

使用道具 举报

发表于 2004-10-25 18:39:22 | 显示全部楼层
最容易的
不是最技术的,不是最快的,也不是体积最小的
跨平台的,也不是最通用的.
回复

使用道具 举报

发表于 2004-12-16 23:18:21 | 显示全部楼层
反正和c相比,短得吓人。效率大概也不低多少。
呵呵,一秒钟给客人端一杯茶,和20秒钟给客人端一杯茶又相差多少哪?
回复

使用道具 举报

发表于 2005-1-26 17:06:25 | 显示全部楼层
[quote:fadba18826="huyongzs"]最容易的
不是最技术的,不是最快的,也不是体积最小的
跨平台的,也不是最通用的.[/quote]
对!
回复

使用道具 举报

发表于 2005-2-2 17:19:48 | 显示全部楼层
……
这个又不是Java的功劳,是Java的库比较多,做得比较完善而已,我来做一个C的库,把socket封装一下,完全可以做到同样的效果。纯粹的用代码长短进行比较有意思吗?
回复

使用道具 举报

发表于 2005-9-13 16:04:13 | 显示全部楼层
目前来说还是C效率最高一点
回复

使用道具 举报

发表于 2006-1-23 01:31:26 | 显示全部楼层
不是用什么语言的问题,主要还是对网络协议的理解。
端口扫描程序对编程效率的要求并不高,但是这个算法不好。
一般的端口扫描程序都是用半连接的方法来扫描的。只要发送一个syn包就可以了。用java可能实现不了。因为java标准库不支持RawSocket。要是想省事,可以用C#,不过也是相当麻烦,不见得能省多少事。用C#的好处是编程灵活,可以将扫描程序做成一个类库,以后用起来方便。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-22 06:24 , Processed in 0.073338 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表