arhadnane/Smart-Network-Traffic-Analyzer
GitHub: arhadnane/Smart-Network-Traffic-Analyzer
一款基于 .NET 8 的 Windows 桌面应用,实现实时网络流量监控与情报增强分析。
Stars: 0 | Forks: 0
# 实时网络流量分析器 – C# & XAML 🔍
一个使用 **C# & WPF/XAML** 构建的现代 Windows 桌面应用程序,提供实时网络流量监控、DNS 解析、IP 信誉分析以及地理位置情报。具备交互式仪表板、实时图表和全面的连接详情功能。



## ✨ 核心功能
### 🔄 实时监控
- **实时 TCP 连接追踪**:使用 Windows 网络 API 监控活动网络连接
- **进程信息**:识别每个连接关联的进程
- **方向分析**:区分入站与出站流量
- **带宽可视化**:使用 OxyPlot 库的实时图表
### 🌐 情报增强
- **DNS 解析**:自动反向 DNS 查找以识别主机名
- **地理位置**:通过 ip-api.com 进行国家与提供商识别
- **IP 信誉分析**:基于 CIDR 的黑名单检查,支持可扩展的提供商系统
- **风险评估**:颜色编码的风险等级(清洁、低、中、高、恶意)
### 📊 交互式仪表板
- **数据网格**:支持排序、过滤的连接表,实时更新
- **实时图表**:带宽监控与 OxyPlot 集成
- **详情面板**:选中连接的增强信息(主机名、国家、信誉)
- **专业 UI**:现代化的 WPF 界面,响应式设计
### 🏗️ 企业级架构
- **MVVM 模式**:关注点分离,依赖注入
- **模块化设计**:三层架构(UI、核心、基础设施)
- **可扩展服务**:插件式信誉与地理位置提供商
- **异步操作**:非阻塞 UI,后台增强
## 🏛️ 架构概览
```
src/
├── App.UI/ # WPF Presentation Layer
│ ├── ViewModels/ # MVVM ViewModels with data binding
│ ├── Models/ # UI-specific models (ConnectionItem)
│ └── Views/ # XAML views and user controls
├── App.Core/ # Business Logic & Abstractions
│ ├── Models/ # Domain models (Connection, Reputation, GeoInfo)
│ └── Abstractions/ # Service interfaces (IConnectionMonitor, IDnsResolver)
└── App.Infrastructure/ # External Services & Implementations
├── Services/ # Concrete implementations
└── data/ # Blocklist files and configuration
```
### 🔧 核心组件
- **WindowsTcpConnectionMonitor**:实时 TCP 连接轮询
- **SystemDnsResolver**:Windows DNS 反向查找集成
- **IpApiGeoService**:基于 HTTP 的地理位置服务
- **BlocklistReputationService**:基于 CIDR 的 IP 信誉检查
- **AggregatedReputationService**:多来源风险聚合
## 🚀 快速开始
### 系统要求
- Windows 10/11
- .NET 8.0 SDK
- Visual Studio Code(推荐)
### 构建与运行
**选项 1:VS Code**
1. 在 VS Code 中打开工作区
2. 按 `F5` 启动并使用 “.NET Launch App.UI”
3. 或运行任务 “build:Release” → “run:UI”
**选项 2:命令行**
```
# 克隆并导航到项目
cd "Smart Network Traffic Analyzer"
# 恢复依赖项
dotnet restore SmartNetworkTrafficAnalyzer.sln
# 构建解决方案
dotnet build SmartNetworkTrafficAnalyzer.sln -c Release
# 运行应用程序
dotnet run --project .\src\App.UI\App.UI.csproj
```
### 📋 使用说明
1. **启动应用程序** — UI 将自动开始监控 TCP 连接
2. **生成流量** — 打开浏览器、应用程序或网络工具
3. **监控连接** — 在主数据网格中查看实时连接
4. **分析增强数据** — 观察 DNS、地理位置和信誉数据的填充
5. **检查安全** — 查看“风险”列以识别潜在威胁
6. **选择详情** — 点击任意行以在详情面板中查看增强信息
## 🛡️ 安全功能
### IP 信誉系统
- **离线黑名单**:基于本地威胁情报的 CIDR 检查
- **可扩展提供商**: ready for API 集成(如 AbuseIPDB、VirusTotal 等)
- **风险聚合**:多来源采用“最高风险优先”算法
- **性能优化**:缓存结果,支持可配置的 TTL
### 威胁检测
- **实时分析**:对新连接立即进行信誉检查
- **风险可视化**:界面中颜色编码的风险等级
- **历史追踪**:连接日志用于取证分析
## 🔧 配置与扩展
### 添加自定义黑名单
```
src/App.Infrastructure/data/blocklist.txt
```
按行添加 CIDR 范围:
```
192.0.2.0/24
203.0.113.0/24
# 支持注释
```
### 扩展信誉提供商
实现 `IReputationService` 以支持自定义威胁情报:
```
public class CustomReputationService : IReputationService
{
public async Task CheckAsync(string ip, CancellationToken ct)
{
// Your implementation
}
}
```
## 📦 依赖项
- **Microsoft.Extensions.DependencyInjection** — 服务容器
- **OxyPlot.Wpf** — 带宽可视化图表渲染
- **System.Net.NetworkInformation** — Windows 网络 API
## 🎯 路线图
- [ ] 多语言支持(英/法)
- [ ] 高级过滤与搜索
- [ ] 导出功能(CSV/JSON)
- [ ] 进程级分析增强
- [ ] 新增图表类型与指标
- [ ] 设置持久化与配置 UI
- [ ] 在线信誉 API 集成
## 📄 许可证
适用于网络流量分析与安全监控的专业桌面应用程序。
**使用 ❤️ 构建,C# & WPF/XAML** | **架构:基于 DI 的清洁 MVVM**
标签:AMSI绕过, CIDR, IP信誉, IP地理位置, IP声誉分析, MVVM, .NET 8, OxyPlot, SO-0001, SYN扫描, T0001, TCP连接, Windows桌面, WPF, XAML, 三层架构, 交互式仪表盘, 企业架构, 依赖注入, 反向DNS, 响应式设计, 域名解析, 威胁检测, 安全研发, 实时图表, 实时网络流量分析, 带宽监测, 异步操作, 插件扩展, 数据网格, 桌面应用, 流量可视化工具, 现代UI, 网络分析工具, 网络威胁, 网络安全, 网络情报, 网络流量监控工具, 网络监控软件, 连接详情, 隐私保护, 颜色编码风险, 风险分级