python - 没有端口转发的 P2P 多人游戏如何工作?
问题描述
基本上,我只是想理解标题。我了解客户端/服务器关系是如何工作的,例如,在 python 中使用 socket 模块。服务器托管在某处,那里的路由器转发要由托管服务器的机器处理的端口,并且客户端连接到服务器。据我了解,《守望先锋》和《我的世界》之类的游戏(尽管您必须自己托管服务器)使用此设置
P2P 当然,对等点都充当彼此的服务器和客户端。据我了解,Deep Rock Galactic 使用这种方法。但是客户端如何在没有端口转发的情况下相互连接呢?为什么以及如何在路由器的公共 IP 上不阻止他们的请求?这怎么能被模仿?
如果有人能解释一下,最好是使用 python 套接字演示一个简单的 p2p 连接,我将不胜感激
解决方案
推荐阅读
- view - Laravel Voyager:如何解决 Route not defined 问题?
- java - Apache Camel,通过 xslt-saxon 合并 XML 文档的问题
- spring-mvc - MissingServletRequestParameterException:必需的产品参数“产品”不存在
- performance - 如何在 Android Studio 中提高屏幕分辨率?
- neo4j - 子图上的 CYPHER 递归计算
- oracle - UTL_SMTP 试图附加多个大于 32k 的文件
- excel - 比较两列,如果另一列等于指定文本,则返回其中一列的值
- json - 无法使用 jolt 转换器将 stringfy json 对象数组转换为 json 对象
- powershell - 用于查询 Active Directory 的 powershell 脚本
- stripe-payments - Shopify 店面与条带连接的集成