7

我正在为 .Net 中的点对点 NAT 遍历寻找建议或解决方案。假设我有一个聊天应用程序,两个客户端需要连接,但都在 NAT 后面:

对于家庭场景,uPNP 可能没问题,因为只涉及电缆调制解调器或消费者路由器。但是,无法实现 uPNP 的企业环境呢?

我熟悉 UDP 打孔,它可以用于握手,但我宁愿不依赖它来传输真实的应用程序数据。

我还研究了 IPv6 和 Teredo,但我不确定每个客户端都会有 IPv6 可用性,而且对于 Teredo 的所有要求(服务器、中继等)来说,这有点令人困惑。

现在是 2011 年,IM/Chat 客户端已经存在了 10 年,甚至还有一些——所以我相信这个问题已经解决了很多次。谁能推荐这个领域的最佳实践?提前致谢!

4

1 回答 1

0

XMPP 支持通过 NAT 穿越进行聊天,并且有几个用于 .NET 的开源客户端。使用任何 XMPP 服务器,例如 OpenFire。

于 2012-06-19T23:52:34.393 回答