唯一标识UDP连接-来自同一IP的多个连接

Uniquely Identify UDP Connection - Multiple Connections from same IP

本文关键字:连接 IP 标识 UDP 唯一      更新时间:2023-10-16

我将首先说,当前我的服务器基于发送方IP进行标识,即客户端的IP。

现在我正在编程一个游戏服务器(只是为了练习),这让我思考,如果客户端在同一个IP上,我该如何唯一地识别它们。(两个玩家在同一台机器/同一网络上打开连接,因此向外的IP是相同的)。

我已经在谷歌、这里和gamedev.net上搜索了答案,但找不到我要找的东西,可能是因为我不知道要查询的正确术语。

如能就此提供任何指导,尤其是在效率和最佳做法方面,我们将不胜感激。

谢谢。

在所有与UDP相关的东西中都没有"连接"术语,但通常情况下,启动UDP套接字的应用程序会在一段时间内维护相同的源端口,因此您可以通过源IP端口来识别它。

NAT路由器内的客户端(在NAT-UDP中,客户端是第一个向另一个主机发送UDP数据报并触发新的连接跟踪条目的主机)和服务器之间的通信需要维护。

这种"连接跟踪"只允许从外部到内部的流量,形成一种"临时"关系(带超时),有时可能不会再使用(只使用一次)。

如果服务器在输出数据报中不使用与传入数据报中的源端口相同的目的端口,则路由器不会将数据报发送到NAT内的主机。

致以最良好的问候。