KajetanKozak22/network-toolkit
GitHub: KajetanKozak22/network-toolkit
一个基于 Python 的命令行网络工具,集多线程端口扫描与 IP 地理定位于一体,用于基础网络诊断与教学。
Stars: 0 | Forks: 0
# 🛠️ 网络工具包 — 端口扫描器与 IP 定位器
一个使用 Python 编写的简单、基于控制台的网络工具。该应用程序集成了两个实用的诊断脚本:一个针对最常见端口的多线程端口扫描器和一个 IP 地址地理定位器。
该项目非常适合作为学习网络编程基础知识、自动化(NetDevOps)以及网络安全的基础。
## 🚀 主要功能
### 1. 基础端口扫描器
* **多线程 (`threading`):** 所有定义的端口都会被同时扫描,使得整个过程能在几秒钟内完成。
* **已知端口数据库:** 程序会检查诸如 FTP (21)、SSH (22)、Telnet (23)、HTTP (80)、HTTPS (443)、RDP (3389) 以及备用 Web 端口 (8080) 等服务。
* **教学描述:** 当检测到开放端口时,该工具会显示有关该协议用途及其安全状态的信息(例如,针对 Telnet/FTP 的安全警告)。
### 2. IP 地址地理定位
* **外部 API 集成:** 程序向免费的 `ip-api.com` 服务发送 HTTP 请求。
* **广泛的数据范围:** 它返回有关国家(含国家代码)、地区、城市、互联网服务提供商 (ISP) 以及精确地理坐标的详细信息。
* **自动检测:** 如果您不提供 IP 地址而直接按 *Enter*,应用程序将自动定位您自己的公网 IP 地址。
### 3. 交互式菜单
* 用户友好的控制台界面,由 Python 3.10 中引入的现代 `match-case` 语法驱动。
## 📦 包含的依赖项 (`requirements.txt`)
该项目包含一个 `requirements.txt` 文件,其中包含了所需库及其辅助包(系统依赖)的完整列表,这些是在虚拟环境中自动生成的:
* **`requests`** – 负责向地理定位 API 发送 HTTP 请求。
* **`pyinstaller`** – 用于将脚本编译为独立的可执行文件。
* **辅助包** (`urllib3`, `idna`, `certifi`, `charset-normalizer`) – 确保安全的 SSL 加密、正确的字符编码以及正确处理网络连接。
## 💻 要求与安装
运行该程序需要 **Python 3.10 或更高版本**。
标签:IP定位, Python, 命令行应用, 插件系统, 数据统计, 无后门, 漏洞挖掘, 端口扫描, 网络工具, 逆向工具