端口扫描接口_端口扫描器界面制作

hacker|
227

如何在 OS X 的网络工具中使用端口扫描器

Mac OS X 自带了端口扫描的工具包,只要一个 Network Utility App 就集成了很多特性,这就意味着你不需要使用令人乏味的CML (原话,俺只是翻译哈) 命令行,或者安装更高级的扫描工具 例如 nmap (当然,这个绝对很NB) 去快速扫描一个指定的域或者给定的IP地址,取而代之的是友好的GUI图形界面,尽管如此作为一款相当高级的工具,他事实上非常易于使用。

求:网络端口扫描器的算法

闪电1.0 是一个多线程的端口扫描工具,用于进行狂速端口扫描。它具有极快的速度 和方便友好的操作界面,能快速地对大网段范围进行 Connect方式端口扫描。同时具有获取端口标识的功能,可以用来快速地获取端口标识(Banner),能对80端口标识进行特别处理,能方便地获取Web Server类型。当扫描到木马程序端口时,可以提示常见木马。 主要功能如下 ( 1) 发现因特网上的一个网络或者一台主机。 (2) 一旦发现一台主机,就能扫描到开放端口号和提供的服务, 能对常见木马端口返回标识。 (3)可以进行域名正向解析和反向解析。 (4)可以获取局域网在线主机的MAC地址和主机名。 (5)提供了基于窗口Ping功能和局域网信使服务。 (6)可以获取本机网络配制相关信息,如本机IP, 子网掩码,MAC地址,网卡类型和网关IP和DNS的IP。

你可以到 去下载

那里有端口扫描器的源代码程序

#include string.h

#include winsock.h

#include windows.h

#include iostream.h

#pragma comment (lib,"ws2_32.lib")

int main (int argc, char *argv[])

{

int iportFrom,iportTo;

int testsocket;

int iopenedport = 0;

struct sockaddr_in target_addr;

WSADATA wsaData;

WORD wVersionRequested=MAKEWORD(1,1);

if (argc = 3)

{

cout "使用格式 : " argv[0] " 主机IP地址 开始端口号 结束端口号\n" endl;

exit(1);

}

if (atoi (argv[2]) atoi (argv[3]))

{

cout "错误!开始端口号必须小于结束端口号" endl;

exit(1);

}

else

{

if (WSAStartup (wVersionRequested , wsaData) )

{

cout "连接socket库失败,请检查版本号是否为1.1\n" endl;

exit(1);

}

iportFrom=atoi (argv[2]);

iportTo=atoi (argv[3]);

for (int i=iportFrom; i = iportTo; i++)

{

cout "正在建立socket................................" endl;

if ((testsocket=socket (AF_INET,SOCK_STREAM,0) ) == INVALID_SOCKET)

{

cout "Socket建立失败!" endl;

exit(0);

}

target_addr.sin_family = AF_INET;

target_addr.sin_port = htons(i);

target_addr.sin_addr.s_addr = inet_addr (argv[1]);

cout "正在扫描端口:" i endl;

if (connect (testsocket, (struct sockaddr *) target_addr, sizeof(struct sockaddr)) == SOCKET_ERROR)

cout "端口" i "关闭!" endl;

else

{

iopenedport++;

cout "端口" i "开放\n" endl;

}

}

cout "目标主机" argv[1] "从" iportFrom "--" iportTo "共有" iopenedport "个端口开放" endl;

closesocket (testsocket);

WSACleanup();

}

return 0;

}

vc6.0 下 编译

0条大神的评论

发表评论