客户端到客户端的连接?

标签 c sockets udp winsock

使用 C 和 Winsock 库 (UDP),我制作了一个客户端-服务器多人游戏。

现在我想让客户端可以直接相互连接(例如在《魔兽争霸 III》中,当某人主持游戏时,其他玩家直接连接到他),但我不知道,也找不到有关的信息如何做到这一点。

最佳答案

在大多数情况下 - 尤其是在当今不幸的世界中,大多数客户端都位于 NAT 防火墙和 ISP 后面,这些防火墙和 ISP 会阻止如此多的传入连接 - 客户端/服务器程序(例如您想要做的)将通过中央服务器路由所有流量,“保证”所有客户端都可以访问。

否则,您需要查看UPnP和/或类似 UDP hole punching实现可能受到上面列出的限制的客户端之间的访问。

关于客户端到客户端的连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8619267/

相关文章:

linux - 您能否在受控网络中优化/配置 TCP,使其变得与 UDP 一样快?

ios - 我应该如何在 PinchGestureRecognizer 上保持缩放比例?

java - 关于自己协议(protocol)的设计/实现的技巧

c# - TCP 服务器未正确读取固定大小的消息

java - 使用员工类在客户端和服务器之间传递的对象

java - 为什么数据报套接字缓冲区大时,丢弃率高

c - 在一个 charArray 中发送大量值

Calloc 无法从不同的 .c 文件访问 -

c - "foreground process group"是控制终端的属性还是 session 的属性?

c - 如何限制 C 中的套接字速度?