TechLuddite/NetReady

GitHub: TechLuddite/NetReady

一个基于 React 和 TypeScript 构建的纯客户端浏览器网络诊断套件,集成本地端口扫描、带宽测速、DNS 解析、WebRTC 探测等十余种网络分析工具。

Stars: 0 | Forks: 0

# NetReady 🌐⚡ NetReady 是一个现代化、高性能的客户端网络诊断套件和本地端口扫描器,旨在使用标准的 Web API、WebSockets、DNS-over-HTTPS (DoH) 和 WebRTC ICE 探测,100% 在您的浏览器中运行。 ## 🛠️ 核心诊断工具 ### 1. 📡 本地端口扫描器 - **目标指定**:输入主机名、IPv4 地址、环回接口(`127.0.0.1`)或子网(`192.168.1.0/24`)。 - **自动检测子网**:使用 WebRTC candidate gathering 发现活跃的本地网络接口。 - **端口范围**: - **类别预设**:Web & Dev (`80, 443, 3000, 5000, 8080`)、前 15 个常用端口、数据库 (`1433, 3306, 5432, 6379, 27017`)、远程管理 & 邮件 (`21, 22, 23, 25, 3389, 5900`)。 - **自定义端口与范围**:灵活的输入方式,支持以逗号分隔的端口和范围(例如 `80, 443, 3000-3010, 8080`)。 - **Socket 探测引擎**:报告 `Open`(开放)、`Closed`(关闭)或 `Filtered`(被过滤)端口状态,包含往返延迟、目标 IP/主机、服务名称和描述。 ### 2. ⚡ WebRTC 带宽与速度测试 - 无需外部插件,直接通过标准的 Web 边缘节点探测下载/上传容量、ping 延迟和抖动。 ### 3. 🎯 多主机 Ping 与抖动监控器 - 测量实时数据包往返时间(RTT)、最小/最大延迟差异以及连接抖动。 ### 4. 🔒 DoH DNS 解析器 - 使用 DNS-over-HTTPS 提供商(Cloudflare、Google Public DNS)查询域名记录(`A`、`AAAA`、`MX`、`TXT`、`NS`、`CNAME`)。 ### 5. 🌐 WebRTC ICE Candidate 分析器 - 使用 STUN 服务器发现公共 WAN IP 地址、内部 LAN 接口 candidate 以及 NAT 穿透拓扑。 ### 6. 🧮 子网与 CIDR 计算器 - 为任意 CIDR 表示法计算网络边界、广播地址、可用主机数、子网掩码以及 IP 二进制表示。 ### 7. 🔍 MAC OUI 硬件供应商查询 - 解析 IEEE 组织唯一标识符(OUI)以识别网络设备制造商。 ### 8. 🛡️ HTTP 安全标头探测 - 检查 HTTP 状态码、服务器标头以及安全强制标头(`HSTS`、`CORS`、`CSP`、`X-Frame-Options`)。 ### 9. 🔌 WebSocket Echo 与延迟测试器 - 测量 `ws://` 和 `wss://` 上的 WebSocket 握手建立时间、消息帧往返延迟以及 echo 数据包的可靠性。 ### 10. 💾 持久化 LocalStorage 历史记录 - 所有扫描结果会自动持久化保存在浏览器的 `localStorage` 中。 - 支持搜索、过滤、检查原始 JSON payload,并以 **JSON** 或 **CSV** 格式导出报告。 ## 🚀 快速入门 ### 前置条件 - **Node.js**:v18.0.0 或更高版本 - **npm** 或 **yarn** ### 安装 ``` # 克隆仓库 git clone https://github.com/your-username/netready.git # 进入 workspace cd netready # 安装依赖 npm install # 启动开发服务器 npm run dev ``` 应用程序将在 `http://localhost:3000` 上启动。 ### 生产环境构建 ``` npm run build npm run start ``` ## 🔒 隐私与安全声明 NetReady 采用严格的**隐私优先与安全优先**架构: - **100% 客户端执行**:所有网络诊断、Socket 探测、DNS-over-HTTPS 查询和 WebRTC candidate 分析均严格在您的浏览器内执行。 - **零服务器遥测**:我们不收集、传输、存储或分析任何用户 IP 地址、扫描目标或诊断日志。 - **仅本地持久化**:所有扫描历史记录、速度测试指标和配置选项均保存在您浏览器的本地 `localStorage` 中。清除浏览器数据将彻底删除所有保存的记录。 - **合规扫描须知**:端口扫描和网络诊断探测仅应在您拥有或获得明确授权审查的网络、设备和主机上执行。 ## 🔄 漂移检查与系统完整性 NetReady 强制执行严格的客户端构建完整性和零配置漂移: - **TypeScript 验证**:`npm run lint` 通过严格的 `tsc --noEmit` 检查确保类型安全。 - **确定性构建**:`npm run build` 在 `dist/` 中生成静态 bundle 输出,实现零服务器 runtime 状态漂移。 - **浏览器标准一致性**:完全符合现代 W3C Web API(Fetch API、WebSockets、WebRTC RTCPeerConnection、Storage API)。 ## 🛡️ 许可证 该项目基于 **GNU Affero General Public License v3.0 (AGPL-3.0)** 授权 - 详情请参阅 [LICENSE](LICENSE) 文件。
标签:MITM代理, React, Syscalls, TypeScript, WebRTC, 安全插件, 情报分析, 数据统计, 浏览器工具, 端口扫描, 网络诊断, 自动化攻击