JohannesGuzman/network-scanner-tool

GitHub: JohannesGuzman/network-scanner-tool

一个基于 Python socket 的轻量级 TCP 端口扫描器,用于教学目的的基础网络探测与主机发现。

Stars: 0 | Forks: 0

# 网络扫描工具 一个轻量级的基于 Python 的网络扫描器,用于检测活跃主机并通过 socket 连接识别开放的 TCP 端口。 该项目旨在展示基础的网络通信与系统概念,包括 TCP 通信、端口扫描技术以及命令行界面设计。 它是一个初级水平的个人项目,用于展示对网络服务在底层是如何被发现的理解。 ## 预览 ![网络扫描器截图](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/7ea847016b135726.png) ## 展示的概念 - TCP/IP 网络 - Python 中的 Socket 编程 - TCP 连接扫描技术 - 端口状态(开放、关闭) - 基础输入验证与 CLI 设计 ## 安装 克隆仓库: ``` git clone https://github.com/JohannesGuzman/network-scanner-tool.git cd network-scanner-tool ``` 无需依赖。 ``` ## Usage ```bash python main.py --start --end --timeout ``` 示例: python main.py 127.0.0.1 --start 80 --end 445 --timeout 0.1 ## 示例输出 ``` [+] Checking if host 127.0.0.1 is active... [+] Host appears to be active. [+] Scanning ports from 80 to 445... [OPEN] Port 135 [OPEN] Port 445 [+] Scan completed. [+] Total open ports found: 2 [+] Open ports found: - Port 135 - Port 445 ``` ## 限制 - 主机检测并非确定性(依赖常见 TCP 端口) - 无法区分过滤状态与关闭状态端口 - 仅支持 TCP(无 UDP 扫描) - 顺序扫描(无多线程) - 无服务或操作系统检测 ## 免责声明 本工具仅供教育用途。 未经授权不得扫描网络或系统。 ## 使用技术 - Python 3 - 内置 `socket` 模块 ## 工作原理 扫描器使用 TCP socket 连接尝试与目标端口通信。 如果连接成功建立,则认为端口是开放的。 此方法称为 TCP 连接扫描,依赖操作系统的网络协议栈。 ## 作者 Johannes Guzman ## 许可证 本项目采用 MIT 许可证。
标签:CLI, DNS解析, Python, Socket编程, TCP, TCP连接扫描, WiFi技术, 云存储安全, 初级项目, 基础网络, 开源项目, 教育学习, 数据泄露防护, 数据统计, 无后门, 端口扫描, 端口状态, 网络安全, 网络工具, 网络扫描, 网络探测, 逆向工具, 隐私保护