登录 注册

NatTypeTester

去点 Star
其他
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 | [![NuGet.org](https://img.shields.io/nuget/v/Stun.Net.svg?logo=nuget)](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 为准(涉及依赖安装与环境配置,对新手门槛较高)。