P2P网络游戏/应用程序:类似"battle.net"的匹配服务器的不错选择

yai*_*chu 6 hosting networking p2p udp

我正在制作一个网络游戏(1v1),在游戏中它的p2p - 不需要游戏服务器.

但是,为了让玩家能够"找到对方"而不需要在另一个媒体中进行协调并输入IP地址(类似于网络游戏的调制解调器时代),我需要一个协调/匹配服务器.

我不能使用常规的网络托管,因为:

  • 客户端将以UDP进行通信.
  • 因此,我需要进行UDP打孔才能通过NAT
  • 这将要求服务器以UDP通话并知道客户端的IP和端口
  • afaik与常规的网络托管(PHP/etc)我只能得到客户端的IP地址,只能通过TCP(HTTP)进行通信.

我目前正在考虑的选项:

  • 使用我的程序可以接受UDP连接的托管解决方案.(任何建议?)

  • UDPonNAT似乎这样做但使用GTalk并要求每个客户端都有一个GTalk帐户(这可能使它成为一个不合适的解决方案)

有任何想法吗?谢谢 :)

Joe*_*ann 3

首先,我要说的是,这远远超出了我的专业范围,但我发现自己很感兴趣,所以我一直在做一些搜索和阅读。

UDP NAT 穿越最常用的解决方案似乎是使用STUN服务器。我做了一些快速搜索,看看是否有任何公司会直接为您提供 STUN 托管解决方案,但即使有,它们也被埋在成堆的简单网络托管广告中。

幸运的是,似乎有几个 STUN 服务器已经启动并运行并且免费供公众使用。voip-info.org上有一个公共 STUN 服务器列表。

此外,如果您探索标记为“nat”的问题,还可以获得更多信息。