Networking 如何使我的游戏连接到没有真实IP地址的服务器?

Networking 如何使我的游戏连接到没有真实IP地址的服务器?,networking,xna,nat,Networking,Xna,Nat,我正在做一个XNA游戏。当我开始时,我有一个真正的IP宽带连接,所以我可以托管任何类型的服务器没有任何问题,但现在我没有任何连接,我希望能够让玩家从我的本地网络连接到我的服务器再次。我该怎么做?制片厂的大人物是如何做到这一点的?便宜的选择: 配置您的家庭路由器(它确实有真实的,但可能是动态的IP地址),将您喜欢的某个端口上的连接转发到本地网络上的服务器。请仔细阅读-这是路由器用来将网络隐藏在单个可路由IP后面的技巧 在某处设置帐户,以便人们可以通过名称而不是更改IP地址来查找您的游戏服务器

我正在做一个XNA游戏。当我开始时,我有一个真正的IP宽带连接,所以我可以托管任何类型的服务器没有任何问题,但现在我没有任何连接,我希望能够让玩家从我的本地网络连接到我的服务器再次。我该怎么做?制片厂的大人物是如何做到这一点的?

便宜的选择:

  • 配置您的家庭路由器(它确实有真实的,但可能是动态的IP地址),将您喜欢的某个端口上的连接转发到本地网络上的服务器。请仔细阅读-这是路由器用来将网络隐藏在单个可路由IP后面的技巧
  • 在某处设置帐户,以便人们可以通过名称而不是更改IP地址来查找您的游戏服务器
昂贵的选择:

  • 从ISP处购买静态IP包(并非始终可用)
  • 以最快的速度部署游戏

通常有两种方式连接两个客户端:

  • 为每个客户机提供其他客户机的IP地址,并让它们相互连接
  • 为每个客户机提供一个中间服务器的IP地址,并通过该地址对流量进行隧道传输

  • 第一种方法假设每个客户机都有一个真实的IP地址,并且它们都可以是彼此的服务器。第二种方法是当一个或两个客户端都没有真正的IP地址时。

    工作室的大人物可能为他们的服务器获得了真正的IP地址……不,我的意思是,他们如何允许玩家的客户端在没有真正IP的PC上相互连接?哦,我明白了。你的意思是,比如说Skype如何在防火墙后连接客户端?我的建议是:在游戏中,键入几行代码,连接到返回服务器IP的(php)网页。然后你的游戏可以在初始化时建立正确的连接。我的地址类似于186.123.45.67,很多其他人在没有使用真正的IP连接时也有这样的地址。当你尝试这样的地址时,没有来自其他玩家的连接。