vaishaldsouza/Network_Port_Scanner
GitHub: vaishaldsouza/Network_Port_Scanner
一个零依赖的跨平台 TCP 端口扫描器,提供简洁的 Tkinter 图形界面,支持多线程快速扫描并识别常见服务。
Stars: 0 | Forks: 0
# 🔍 网络端口扫描器
一个轻量级、跨平台的 TCP 端口扫描器,使用 Python 构建并提供简洁的 Tkinter GUI。
无需第三方库 —— 可在纯 Python 3 环境下运行。



## 📋 功能特性
- 扫描任意 IP 地址或主机名的自定义端口范围
- 实时显示发现的开放端口
- 识别知名端口的服务(HTTP, SSH, FTP, MySQL 等)
- 实时进度条和耗时追踪
- 优雅停止 —— 随时取消扫描
- 将结果导出为 `.txt` 文件
- 多线程扫描(最多 500 个并发线程)
- 零外部依赖 —— 仅使用标准库
## 🚀 快速开始
### 前置条件
- 系统已安装 Python 3.x
- Tkinter(大多数 Python 发行版自带)
如果 Linux 上缺少 Tkinter:
```
sudo apt install python3-tk
```
### 运行应用
```
# Clone the repository
git clone https://github.com/vaishaldsouza/Network_Port_Scanner.git
# Navigate into the folder
cd Network_Port_Scanner
# Run the scanner
python3 port_scanner.py
```
## 🛠️ 使用方法
1. 输入 **目标** —— IP 地址(例如 `192.168.1.1`)或主机名(例如 `scanme.nmap.org`)
2. 设置 **起始端口** 和 **结束端口**(默认:1 到 1024)
3. 点击 **开始扫描 (Start Scan)**
4. 开放端口将实时显示在结果面板中
5. 点击 **保存结果 (Save Results)** 将发现的内容导出到 `.txt` 文件
## 📡 支持的服务
| 端口 | 服务 |
|------|---------|
| 21 | FTP |
| 22 | SSH |
| 23 | Telnet |
| 25 | SMTP |
| 53 | DNS |
| 80 | HTTP |
| 110 | POP3 |
| 143 | IMAP |
| 443 | HTTPS |
| 3306 | MySQL |
| 3389 | RDP |
| 5900 | VNC |
| 8080 | HTTP-Alt|
## ⚙️ 技术细节
| 细节 | 值 |
|--------|-------|
| 语言 | Python 3.x |
| GUI 框架 | Tkinter / ttk |
| 并发机制 | 带信号量的多线程 |
| 最大线程数 | 500(默认) |
| 单端口超时 | 0.5 秒(默认) |
| 协议 | TCP (connect_ex) |
## ⚠️ 法律免责声明
本工具仅供在 **您拥有或明确获得扫描授权的系统** 上使用。
未经授权的端口扫描在您所在的司法管辖区可能 **属于违法行为**。
请负责任且合乎道德地使用。
## 📁 项目结构
```
network-port-scanner/
│
├── port_scanner.py # Main application file
├── README.md # Project documentation
└── .gitignore # Git ignore rules
```
标签:AES-256, DNS查询工具, IP 扫描, Python, Qt框架, Socket 编程, TCP 扫描, Tkinter GUI, 密码管理, 开源安全工具, 插件系统, 数据泄露防护, 无后门, 服务识别, 漏洞评估, 端口扫描器, 系统独立性, 网络安全, 网络探测, 轻量级工具, 逆向工程平台, 隐私保护