precioussammy/C-program--Port-scanner

GitHub: precioussammy/C-program--Port-scanner

一个基于C语言的跨平台端口扫描工具,通过TCP连接检测本机指定端口的开放状态。

Stars: 0 | Forks: 0

# C程序--端口扫描器 #include #include #ifdef _WIN32 #include #define CLOSE_SOCKET closesocket #else #include #include #include #define CLOSE_SOCKET close #define SOCKET int #endif void scan_host(int port_number); int main(void) { ``` #ifdef _WIN32 WSADATA wsa; WSAStartup(MAKEWORD(2,2), &wsa); #endif printf("Enter port to scan: "); fflush(stdout); int target_port; if (scanf("%d", &target_port) != 1) { printf("Invalid input\n"); return 1; } printf("\nScanning local machine...\n"); scan_host(target_port); #ifdef _WIN32 WSACleanup(); #endif return 0; ``` } void scan_host(int port_number) { ``` SOCKET my_socket = socket(AF_INET, SOCK_STREAM, 0); if (my_socket == -1) { printf("Failed to create socket\n"); return; } struct sockaddr_in target; target.sin_family = AF_INET; target.sin_port = htons(port_number); target.sin_addr.s_addr = inet_addr("127.0.0.1"); int result = connect(my_socket, (struct sockaddr *)&target, sizeof(target)); if (result == 0) { printf("Port %i --> [OPEN]\n", port_number); } else { printf("Port %i --> [CLOSED]\n", port_number); } CLOSE_SOCKET(my_socket); ``` }
标签:DNS查询工具, 套接字编程, 插件系统, 本地网络探测, 端口扫描器, 网络安全, 隐私保护