munkasirhaque0x1/Port-Scanner-Tool

GitHub: munkasirhaque0x1/Port-Scanner-Tool

一个使用 Python 开发的多线程端口扫描器,配有图形界面,用于检测网络主机的开放端口、服务和 MAC 地址。

Stars: 1 | Forks: 0

# 🔍 端口扫描器 一款快速多线程的 Python 端口扫描器,配有 tkinter 图形界面 — 可检测任意网络主机的开放端口、服务及 MAC 地址。 ## 📸 预览 ## ✨ 功能特性 - ✅ 多线程扫描(最多100个线程)— 结果快速 - ✅ 检测**开放端口**及其**服务名称** - ✅ 获取目标主机的 **MAC 地址** - ✅ 跨平台 **ping 检查**(Windows & Linux/Mac) - ✅ 图形界面中 **实时更新进度** - ✅ 可随时点击停止按钮 **中断扫描** - ✅ 输出为整齐的 **排序表格** - ✅ 简单直观的 **tkinter 图形界面** ## 🛠️ 技术栈 - **Python 3** - `tkinter` — 图形界面 - `socket` — TCP 端口扫描 - `subprocess` — 执行 Ping 和 ARP 命令 - `threading` + `concurrent.futures` — 多线程扫描 - `platform` — 跨平台支持 ## 🚀 快速开始 ### 前置条件 - 系统中已安装 Python 3.x - 无需额外库 — 仅使用 Python 标准库 ### 安装 ``` # 克隆 repository git clone https://github.com/your-username/port-scanner.git # 进入 project directory cd port-scanner ``` ### 运行 ``` python port_scanner.py ``` ## 🖥️ 使用方法 1. 输入 **目标 IP**(例如输入 `127.0.0.1` 扫描本机) 2. 设置 **起始端口** 和 **结束端口**(例如 `1` 到 `1024`) 3. 点击 **开始扫描** 4. 在输出区域查看结果 5. 随时点击 **停止** 可取消扫描 ## 📊 示例输出 ``` Pinging 127.0.0.1... ✔ Host 127.0.0.1 is UP. MAC Address: 00-14-22-01-23-45 Scanning 127.0.0.1 | Ports 1–1024 | Total: 1024 ────────────────────────────────────────────────── Progress: 50/1024 ports (4%) Progress: 100/1024 ports (9%) ... ────────────────────────────────────────────────── PORT STATUS SERVICE ────────────────────────────────────────────────── 631 Open ipp ────────────────────────────────────────────────── ✔ 1 open port(s) found out of 1024 scanned. ``` ## ⚠️ 免责声明 本工具仅用于 **教育目的** 以及 **授权的网络测试**。 未经授权扫描网络或系统是 **违法** 且 **不道德** 的行为。 作者对滥用本工具造成的任何后果概不负责。 ## 📄 许可证 本项目采用 [MIT 许可证](LICENSE) 授权。 ## 🙋‍♂️ 作者 **Md. Munkasir Haque** 网络安全爱好者 | Python 开发者 在 LinkedIn 上与我联系:[linkedin.com/in/munkasirhaque0x1](https://www.linkedin.com/in/munkasirhaque0x1/)
标签:DNS解析, GUI应用, MAC地址获取, ping命令, 交叉平台, 停止扫描, 图形用户界面, 多线程编程, 开源项目, 排序输出, 插件系统, 数据统计, 服务检测, 端口扫描, 网络安全, 网络工具, 网络扫描器, 隐私保护