# ipScanner **Repository Path**: lzjian/ip-scanner ## Basic Information - **Project Name**: ipScanner - **Description**: 紫日用ip扫描器 - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: dev - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-05-19 - **Last Updated**: 2026-05-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 紫日网段扫描器 BY **老衲用飘柔** 基于 **Avalonia UI 12** + **.NET 8** 的 Windows 桌面 IP 扫描工具,深色科技风 UI。适用于企业内部多网段设备在线状态实时监测。 ## 功能 - **独立并行扫描**:255 个 IP 各自独立异步循环检测,在线主机每秒更新 5 次 - **实时刷新**:每 1 秒批量刷新列表,INotifyPropertyChanged 原地更新,滚动条不受影响 - **双重检测**:ICMP Ping(2 次重试)+ TCP 80/443/445 端口回退,防火墙环境下也能准确判断 - **网段管理**:只需输入前三段(如 `172.16.0`),自动扫描 `.1-.255`,配置持久化到本地 - **MAC 地址**:Windows SendARP 查询 ARP 表获取 MAC,首次缓存 - **筛选搜索**:全部 / 在线 / 离线 三档切换 + IP/MAC 模糊搜索框 - **Tooltip 预览**:悬停显示完整 IP/主机名/MAC,可复制 - **深色科技风**:深蓝底色 #060B18 + 青色点缀 #06C8E8,Avalonia Fluent Dark 主题 - **零依赖**:解压即用,无需安装 .NET 运行时 ## 系统要求 - Windows 10 / 11 64 位 ## 使用 1. 左侧「网段列表」添加网段,选中后点击「开始扫描」 2. 255 个 IP 同时开始检测,在线设备实时显示 3. 可通过筛选栏和搜索框定位目标设备 ## 技术栈 | 层 | 技术 | |----|------| | UI 框架 | Avalonia UI 12.0 | | 渲染 | Skia GPU | | 主题 | Fluent Dark + 自定义色板 | | 运行时 | .NET 8 self-contained | | 扫描 | ICMP Ping + TCP Socket + ARP | | 架构 | MVVM(Model / ViewModel / View) | ## 开发 ```bash git clone git@gitee.com:lzjian/ip-scanner.git cd ip-scanner git checkout dev # 需 .NET 8 SDK dotnet run --project src/ipScanner.Avalonia # 发布 dotnet publish src/ipScanner.Avalonia -c Release -r win-x64 --self-contained -o publish ``` ## 分支规范 | 分支 | 用途 | |------|------| | `dev` | 开发 | | `test` | 测试集成 | | `prod` | 生产发布 | 流程:`dev → test → prod → Release`