硬件设备有可能将响应信息更改为相同的IP吗?

硬件设备有可能将响应信息更改为相同的IP吗?

我正在为游戏构建中继服务器,并希望它在大多数情况下都能正常工作。主机和客户端将连接到充当中间人的中继服务器。

基本信息:

中继服务器(我们称之为 R)获得一个静态 IP。

应用程序(服务器或客户端)(我们称之为 A)理论上可以使用任何类型的提供商,例如 3G/4G/Wifi......并且位于任意数量的防火墙/NAT/代理/交换机之后......想想最坏的情况。

所以我的问题是,如果 A 向 R 发送一条 UDP 消息,R 会获得一个 IP 和一个可以发送响应的端口。一切正常。

但是假设 A(同一个 A)向 R 发送另一条 UDP 消息。世界上是否存在一些硬件或者软件可能会改变 R 响应的 IP 或端口?

理论上的例子:

即使消息发往与之前相同的 IP,NAT 能否提供不同的端口来响应?是否存在防火墙只允许每个出站消息响应一次?一条消息是否可以通过代理发送,而另一条消息不通过代理发送,从而导致其中一条消息可能具有不同的端口来发送响应?如果 A 使用 3G 连接并开车,并且他们切换了基站。R 在使用新的基站时可以获得另一个 IP 或端口吗?再次考虑最坏的情况。

为什么?

我之所以问这个问题是因为我想知道:

  1. 我可以使用从 A 发送的第一条消息中获得的相同 IP 和端口。
  2. 或者我应该不时发送一条消息来更新回复信息。
  3. 或者,如果 A 首先发送消息,则 R 是否应该仅发送给 A,而我仅对每个请求发回一个响应。

无论情况如何,第 3 条应该始终有效。但我只想知道我是否想太多了。

这个问题可能太宽泛,但很难准确指出。

相关内容