c语言下的端口扫描代码(转)
原始出处:http://www.antcodes.cn/post/10.html
Code Language : C
-
#include <stdafx.h>
-
#include <stdio.h>
-
#include <string.h>
-
#include <winsock.h>
-
#pragma comment (lib,"ws2_32.lib")
-
int main(int argc, char *argv[]) {
-
-
int mysocket;
-
-
int pcount = 0;
-
-
struct sockaddr_in my_addr;
-
-
WSADATA wsaData;
-
-
WORD wVersionRequested=MAKEWORD(1,1);
-
-
-
if(argc < 3) {
-
-
-
exit(1);
-
-
}
-
-
-
if (WSAStartup(wVersionRequested , &wsaData)){
-
-
-
exit(1);
-
-
}
-
-
-
for(int i=1; i < atoi(argv[2]); i++){
-
-
if((mysocket = socket(AF_INET, SOCK_STREAM,0)) == INVALID_SOCKET){
-
-
-
exit(1);
-
-
}
-
-
-
my_addr.sin_family = AF_INET;
-
-
my_addr.sin_port = htons(i);
-
-
my_addr.sin_addr.s_addr = inet_addr(argv[1]);
-
-
-
if(connect(mysocket, (struct sockaddr *)&my_addr, sizeof(struct sockaddr)) == SOCKET_ERROR)
-
-
closesocket(mysocket);
-
-
else{
-
-
pcount++;
-
-
-
}}
-
-
-
-
closesocket(mysocket);
-
-
WSACleanup();
-
-
return 0;
-
}
Parsed in 0.012 seconds
成功者找方法,失败者找借口!