Sockets 通过internet在分布式系统中的ZMQ套接字之间进行通信

Sockets 通过internet在分布式系统中的ZMQ套接字之间进行通信,sockets,client-server,zeromq,Sockets,Client Server,Zeromq,我一直在做一个分布式系统项目,我的系统部分是p2p的。我的问题非常简单,我不知道人们通常如何解决它,因为我在这个领域没有经验,我对这一切都很陌生 我想在两个客户端之间通过internet进行通信,这两个客户端都有ZMQ套接字 在我的本地网络或我的机器上,它们似乎工作得很好,但当通过互联网进行通信时,我从未收到我的消息。我将其列入候选名单有两个原因: 1)NAT-它不允许我的消息到达客户机主机,有人知道如何在ZMQ中解决NAT问题吗,我听说过TCP打孔之类的,web开发人员和其他处理此问题的人通常

我一直在做一个分布式系统项目,我的系统部分是p2p的。我的问题非常简单,我不知道人们通常如何解决它,因为我在这个领域没有经验,我对这一切都很陌生

我想在两个客户端之间通过internet进行通信,这两个客户端都有ZMQ套接字

在我的本地网络或我的机器上,它们似乎工作得很好,但当通过互联网进行通信时,我从未收到我的消息。我将其列入候选名单有两个原因:

1)NAT-它不允许我的消息到达客户机主机,有人知道如何在ZMQ中解决NAT问题吗,我听说过TCP打孔之类的,web开发人员和其他处理此问题的人通常如何处理

2)ZMQ套接字无法通过internet进行通信,即使通信严格在两个ZMQ套接字之间进行,而不是在BSD套接字之间进行。不过,我不确定这一个

如果有人在这方面有专长,我将不胜感激,这将有助于我向前迈进,谢谢

2)ZMQ套接字不能通过internet进行通信,即使通信严格在两个ZMQ套接字之间进行

嗯,2)很简单,ZeroMQ套接字显然可以在互联网上工作。 没有什么可以补充的

1)NAT-它不允许我的消息到达客户端主机

第1)条将值得更多关注: 是的,当本地LAN路由器连接到一个公共(注册的、协调的IPv4/IPv6地址)时,NAT可以就位

接下来,游戏中可能会有另一个阻碍表演的因素,防火墙,放在一个或多个地方(!)——可能是本地防火墙(O/S操作,如果有管理员级登录到本地主机,可以检查),也可能是集成到任何网关/代理/策略实施中的防火墙

在任何情况下,都应与负责本地主机O/s和网络基础设施元素的本地管理员以及负责网络范围的安全经理/工程师一起进行彻底的设计审查

“如何”部分: 这种(主要的)复杂性正是游戏工作室试图避免用户在解决这些复杂性时感到头疼的原因,并试图提供一些逃避策略

对于一个简单的情况,一对一:
确实可以使用一组规则进行端口转发设置(如果防火墙+网关工程允许),您的ZeroMQ连接可能会被定向到一个
tcp://:
地址

更多,但仍为单位:
这种情况对于单连接设置来说似乎很容易,但是如果需要有单元或数十个目标主机,网关(路由器)/防火墙管理员在安全边界的任意一侧打开越来越多端口的意愿将相当有限。在这里,另一个技巧可能会有所帮助-使用标准的
ssh
-工具,其中连接可以利用所谓的本地端口转发和远程端口转发,互连可以使用单个端口通过防火墙+网关,加上内容受加密保护。当然,双方都需要更多的管理工作,但是,如果这些工作和稍微增加的延迟(增加了加密+解密处理)不会破坏您的游戏内UX延迟计划,那么这是一个已知且明智的方法

如需了解更多信息,请在几个单位以上:
可以选择重新使用一把临时的、但会威胁安全的双面剑——多玩家共享(!)VPN,它解决了全局“可见性”问题(通常是使用一些中央(无论是否发布)服务提供映射和身份验证服务协调器)。本地主机端应用程序只是开始看到另一个“本地”接口,与IPv4/IPv6地址不协调,但这个私有共享VPN似乎加入了所有参与者,看起来好像所有参与者都共享一个公共IP网络,有效地绕过了常见网络实践的所有安全/防火墙工作,同时这也是实施的最大风险(不提及远程、中央、授权/映射服务提供商的主要SPOF风险,无论其动机是公开的还是隐藏的)

自多人游戏开始销售以来(2018/Q2游戏玩家可能看起来一直以来都是),游戏行业对所有这些问题感到恐慌,并试图避免所有这些与复杂性相关的痛苦,作为游戏购买中占主导地位的一部分,青少年预计不会同时具备耐心(系统地设计适当的设置)和足够深入的知识(以便了解在何处以及在何处设置或重新配置的所有系统详细信息,从而解锁安全的端到端在线游戏内可视性)

对于多对多的情况:
一个很好的例子始于1990年末/2000年初,当时伊尔-2斯图莫维克的飞行员社区和虚拟中队“从那时起”365天7月24日投入运行。他们使用了一个社区赞助的超级游说
调解节点,让所有感兴趣的成员一劳永逸地解决所有这些复杂问题。Hyperlobb轻量级客户端/服务器服务基础设施正在进行所有端口转发映射设置和其他服务器端中介肮脏的黑客攻击,所有这些都是飞行员看不见的,并为管理确实为IL-2、F/A-18、Su-27侧翼机、CFS、荣誉勋章等多个连接的多人游戏厅提供了额外的手段,比我今天想起来的还要多(超过了高峰时段数万个联网飞行员IIRC)。数十年来,这是一个真正的全球在线社区(拥有