NatTypeTester
4,911
Stars
273
Forks
28
Watchers
5
Open Issues
MIT
许可证
C#
语言
2018-05-18
创建时间
2026-11-11
最近更新
项目能做什么
测试当前网络 NAT 类型的实用工具(基于 STUN 协议)。
来源:AI 基于仓库事实生成
· 内容以仓库实际 README 为准
使用说明 查看原始 README 原仓库文档
中文使用说明暂未生成。下面保留原仓库 README 摘录,命令与配置均以原文为准。
原始 README 摘录(英文原文,节选前 3000 字符)
# NatTypeTester
Package | NuGet
-|-
Stun.Net | [](https://www.nuget.org/packages/Stun.Net/)
## Architecture
```mermaid
flowchart TD
Console["Console"] --> Application["Application"]
Desktop["Desktop"] --> Views["Views"]
Android["Android"] --> Views
Views --> Application
Views --> Configuration["Configuration"]
Views --> ViewModels["ViewModels"]
Application --> ApplicationContracts["Application.Contracts"]
Application --> Domain["Domain"]
Configuration --> Domain
ViewModels --> ApplicationContracts
ViewModels --> Domain
ApplicationContracts --> DomainShared["Domain.Shared"]
Domain --> DomainShared
```
## RFC
- [RFC 3489](https://datatracker.ietf.org/doc/html/rfc3489)
- [RFC 5780](https://datatracker.ietf.org/doc/html/rfc5780)
- [RFC 8489](https://datatracker.ietf.org/doc/html/rfc8489)
## Internet Protocol
- [x] IPv4
- [x] IPv6
## Transmission Protocol
- [x] UDP
- [x] TCP
- [x] TLS-over-TCP
- [x] DTLS-over-UDP
## RFC3489
> The STUN server has two IP addresses (`IP1`, `IP2`), each listening on two ports (`Port1`, `Port2`).
> *Send to X, request from Y* means the request is sent to endpoint `X`, asking the server to reply from endpoint `Y`.
<details>
```mermaid
flowchart TD
T1["Test 1:<br>Send to IP1:Port1<br>request from IP1:Port1"] --> R1{"Received?"}
R1 -->|No| B1["UDP Blocked"]:::bad
R1 -->|Yes| R2{"Received<br>MappedEndpoint1 and<br>IP2:Port2?"}
R2 -->|No| B2["Unsupported Server"]:::bad
R2 -->|Yes| T2["Test 2:<br>Send to IP1:Port1<br>request from IP2:Port2"]
T2 --> D1{"MappedEndpoint1 is<br>link's IP endpoint?"}
D1 -->|Yes| R3{"Received?"}
R3 -->|No| W1["Symmetric UDP Firewall"]:::warn
R3 -->|Yes| R4{"Received from<br>IP2:Port2?"}
R4 -->|No| B3["Unsupported Server"]:::bad
R4 -->|Yes| G1["Open Internet"]:::good
D1 -->|"No (NAT)"| R5{"Received?"}
R5 -->|Yes| R6{"Received from<br>IP2:Port2?"}
R6 -->|No| B3
R6 -->|Yes| G2["Full Cone"]:::good
R5 -->|No| T12["Test 1(#35;2):<br>Send to IP2:Port2<br>request from IP2:Port2"]
T12 --> R7{"Received<br>MappedEndpoint1.2?"}
R7 -->|No| B4["Unknown"]:::bad
R7 -->|Yes| D2{"MappedEndpoint1.2<br>is MappedEndpoint1?"}
D2 -->|No| W2["Symmetric"]:::warn
D2 -->|Yes| T3["Test 3:<br>Send to IP1:Port1<br>request from IP1:Port2"]
T3 --> R8{"Received<br>MappedEndpoint3<br>from IP1:Port2?"}
R8 -->|No| M1["Port Restricted Cone"]:::mild
R8 -->|Yes| M2["Restricted Cone"]:::mild
classDef bad fill:#f4756b,stroke:#c0392b,color:#000
classDef warn fill:#ffe6cc,stroke:#d79b00,color:#000
classDef good fill:#7fe57f,stroke:#38761d,color:#000
classDef mild fill:#d9ead3,stroke:#93c47d,color:#000
```
</details>
## RFC5389
> The STUN server has two IP addresses (`IP1`, `IP2`), each listening on two ports (`Port1`, `Port2`).
> *Send to X, request from Y* means the request is sent to endpoint
阅读完整原文
项目深度分析 AI 生成
游戏联机网络诊断与一键优化桌面工具
| 产品构想 | 基于现有Desktop客户端与RFC核心逻辑,扩展UPnP/NAT-PMP自动映射、路由检测与优化建议,针对联机严格(Strict NAT)的玩家提供一键修复或节点中转方案。 |
| 核心功能 | NAT类型详细检测、UPnP自动端口映射、STUN服务器质量评测、家庭网关路由穿透指南与一键脚本。 |
| 目标用户 | 主机游戏(Switch/PS5/Xbox)及PC游戏联机受阻的玩家。 |
| 难度/周期 | 中等 · 1-2个月 · 成本:极低(仅需少量测试设备与分发网站托管成本) |
| 收费模式 | 免费基础检测 + 高级功能买断(如一键UPnP配置、路由器规则导出)或引流至游戏加速代理抽成。 |
| 竞争风险 | 网络环境受限严重(运营商级CGNAT难以纯本地破解),用户预期过高易引发差评。 |
| 依据 | 已验证事实 |
跨平台网络连通性与NAT诊断商业SDK
| 产品构想 | 利用项目已有的Console、Desktop、Android架构及RFC 3489/5780/8489协议实现,封装为开箱即用的轻量级P2P前置诊断与穿透评分SDK,供音视频或游戏厂商集成。 |
| 核心功能 | IPv4/IPv6双栈探测、多传输协议(UDP/TCP/TLS/DTLS)检测、NAT类型及映射行为快速输出JSON报告、低开销C#/.NET及跨平台绑定。 |
| 目标用户 | WebRTC应用开发者、VoIP通信方案商、P2P联机游戏开发团队。 |
| 难度/周期 | 较高 · 2-3个月 · 成本:低(全球测试节点部署与日常维护带宽费用) |
| 收费模式 | 商业授权许可(分发License)或按技术支持/定制服务收费。 |
| 竞争风险 | B端获客周期长,市面上已有完整成熟的ICE/STUN/TURN开源库(如libnice等)竞争。 |
| 依据 | 数据支持的判断 |
全球分布式STUN与网络健康监控SaaS探针
| 产品构想 | 将项目核心探测算法打包为极轻量探针,配合自建全球测试节点,为远程办公、SD-WAN及跨国企业提供边缘网络NAT穿透与防火墙状态连续监控服务。 |
| 核心功能 | 轻量探针定时探测、NAT类型变更告警、UDP丢包与阻塞分析、多区域端到端映射连通性可视化大屏。 |
| 目标用户 | 企业网络管理员、远程办公IT支持团队、SD-WAN方案提供商。 |
| 难度/周期 | 较高 · 3-4个月 · 成本:中等(多节点服务器部署与带宽开销) |
| 收费模式 | SaaS订阅制(按监控探针数量及检测频次收费)。 |
| 竞争风险 | 市场偏小众,重度依赖自建高可用多IP STUN节点基础设施。 |
| 依据 | 尚需验证的假设 |
AI 基于仓库公开数据分析生成,含推测成分,不构成收益承诺。
报告会保存到 个人中心
竞品与相似项目 GitHub Search 真实检索
| 项目 | 中文简介 | Stars | 语言 |
|---|---|---|---|
| huaruitech/NatTypeTester | 中文介绍暂未生成 | 2 | - |
| Tom-Plants/NatTypeTester-Flake | 中文介绍暂未生成 flake package for NatTypeTester |
0 | Nix |
| repolex-forx/HMBSbige--NatTypeTester | 中文介绍暂未生成 RDF parse data for HMBSbige/NatTypeTester |
0 | - |
| F-TD5X/nattypetester-rs | 中文介绍暂未生成 | 0 | Rust |
以上为通过 GitHub 官方 Search API 检索的相似项目,功能差异与优劣势需进一步人工确认,配置 AI 后可生成对比分析。
项目优势与风险
| 技术成熟度 | 创建于 2018-05-18,近 30 天仍在推送,发布过 35 个 Release |
| 社区活跃 | Star 4,911 / Fork 273 / Issue 5(数据支持,可自行核实) |
| 许可证 | MIT |
| 主要风险 | 上游项目方向可能变化;同赛道竞争者较多(见竞品表);热度与需求不完全等价 |
安装与使用
此项目未提供 Docker 镜像,安装步骤以原仓库 README 为准(涉及依赖安装与环境配置,对新手门槛较高)。