c# - NAT Traversal 在 C# 中仅使用免费的 STUN 和 TURN 服务器

标签 c# nat nat-traversal online-game

我正在尝试制作一个在线游戏应用程序,它通过 Internet 与另一台电脑进行点对点通信。 由于两台电脑都可能处于 NAT 之下,而且由于我负担不起外​​部服务器,我认为唯一的方法是使用免费的 STUN 和 TURN 服务器,例如 Numb .

但是,经过一些研究,我无法弄清楚如何使用这些服务器建立连接。

真的可以只用那些服务器来做吗?如果是,你会怎么做? 或者有更简单的方法吗?

我可以为此使用 UDP 或 TCP。

最佳答案

看看 Internet Gateway Device Protocol .是 UPNP 协议(protocol)的扩展,非常易于使用,几乎所有路由器都支持它,并且有一些免费的库实现了该协议(protocol)。

关于c# - NAT Traversal 在 C# 中仅使用免费的 STUN 和 TURN 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23456570/

相关文章:

nat - 以编程方式确定路由器 NAT 类型

c# - MVC(和 NewRelic)的 Nancy 框架问题

c# - 使用 TinyIoC 进行构造函数注入(inject)

amazon-web-services - 使用 EC2 作为 NAT 的 AWS VPC 不起作用

Java Stunt 和 URI 发现

mobile - NAT 后面到 NAT 后面的连接

c# - 表导出到 CSV 不保留 SQLite 日期格式

C# 创建错误检查类?

azure - 如何检查 Azure 应用服务中打开了哪些端口

java - 创建与外部主机的连接时如何获取 NAT 的外部端口以及如何在 Java 中实现 STUN