linux下简易端口扫描器

 1 #include<iostream>
 2 #include<string.h>
 3 #include<sys/types.h>
 4 #include<sys/socket.h>
 5 #include<arpa/inet.h>
 6 #include<unistd.h>
 7 using namespace std;
 8 
 9 int main(int argc,char *argv[])
10 {
11     int s;
12     struct sockaddr_in server_addr;
13     
14     s=socket(AF_INET,SOCK_STREAM,0);
15     if(s<0){
16         cout<<"Init socket error"<<endl;
17         return -1;
18     }
19 
20     bzero(&server_addr,sizeof(server_addr));
21     server_addr.sin_family=AF_INET;
22     inet_pton(AF_INET, argv[1], &server_addr.sin_addr);
23     
24     for(int port=1;port<=65534;port++)
25     { 
26         server_addr.sin_port=htons(port);
27         int err=connect(s,(struct sockaddr*)&server_addr,sizeof(server_addr));
28         if(err!=-1){
29             cout<<port<<":"<<"true"<<endl;
30         }
31     }
32     return 0;
33 }

 

posted @ 2018-10-17 18:52  wa小怪兽  阅读(1014)  评论(0编辑  收藏  举报