Windows Portscanner C++
-
na ich scann mich selbst^^ zu test zwecken als in meinem netzwerk "192.168.178.22"
-
Hast du denn überhaupt Programme offen die auf Port 1-100 lauschen?
-
Genau das ist die Frage - wo nichts lauscht da sollte auch kein Port ansprechbar sein! Am besten du startest einfach einen simplen Server: (ungetestet - wenn da was nicht geht frag einfach kurz
)int main() { int sock, acc_sock; struct sockaddr_in addr; int addr_size; WSADATA wsadata; if (WSAStartup(MAKEWORD(2,2), &wsadata) != 0) printf("WSAStartup() failed with error: %i.\n", WSAGetLastError()); while (1) { sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP); if (sock == INVALID_SOCKET) printf("socket() failed with %i.\n", WSAGetLastError()); memset(&addr, 0, sizeof(addr)); addr.sin_addr.s_addr = INADDR_ANY; addr.sin_family = AF_INET; addr.sin_port = 2500; addr_size = sizeof(addr); if (bind(sock, (struct sockaddr*)&addr, sizeof(addr)) == SOCKET_ERROR) printf("bind() failed with %i.\n", WSAGetLastError()); if (listen(sock, 3) == SOCKET_ERROR) printf("listen() failed with %i.\n", WSAGetLastError()); if (accept(sock, (struct sockaddr*)&addr, &addr_size) == INVALID_SOCKET) printf("accept() failed with %i.\n", WSAGetLastError()); printf("client connected<!>\n"); closesocket(sock); } WSACleanup(); return 0; }
-
mit WSAIoctl, habe ich doch da hingeschrieben. giyf
-
ok ich hab jetzt mal probiert den server selbst zu programmieren
ich wollt mal fragen ob das so geht
#include <QtCore/QCoreApplication> #include <windows.h> #include <winsock2.h> #include <unistd.h> #include <iostream> #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <conio.h> using namespace std; int main() { WSAData wsa; if(WSAStartup(MAKEWORD(2,2),&wsa)!=0) { printf("WSAStartup() failed with error: %i.\n", WSAGetLastError()); return 1; } cout << "Bitte Warten!"; while (1) { int s = socket(AF_INET,SOCK_STREAM,0); int addr_size; struct sockaddr_in addr; addr.sin_addr.s_addr = INADDR_ANY; addr.sin_family = AF_INET; addr.sin_port = 21; addr_size = sizeof(addr); if (bind(s,(struct sockaddr*)&addr,sizeof(addr))==-1) { perror("bind() failed"); return 2; } if (listen(s,3)==-1) { perror("listen() failed"); return 3; } if (accept(s,(struct sockaddr*) &addr, &addr_size)==-1) { perror("accept() failed"); return 4; } printf("client connected<!>\n"); getch(); closesocket(s); } WSACleanup(); return 0; }ach ja und der compiler sagt mir bei dem code das bei accept was nicht stimmt
