在某些networking上快速变化的公共IP地址?

我运行/开发了一个在线游戏,我们的许多用户都在东南亚。

我最近去了东南亚,发现了一个惊人的发现。 无论在新加坡还是菲律宾,我都能上网,无论是通过3G,酒店内的局域网还是无线上网,我注意到我的IP地址一直在变化。 我的意思是公共IP地址,而不是私人IP地址。 我可以像whatismyip.com加载一个页面,只需点击重新加载,并看到一个新的IP地址每5-10秒出现一次!

这对我的在线游戏有很多的后果,因为如果给定用户的IP地址发生变化,很多事情会“中断”。 基本上,我想知道更多关于这一点。 有没有一个networking或路由器或范例导致这种名称,所以我可以读它呢? 我不明白为什么一个networking将以这种方式运作。 这是故意的吗? 这是出于安全原因吗? 是否要匿名并保护用户的身份? 还是仅仅是一种在世界其他地方已经过时的“旧”方法? 感谢任何有助于我理解的信息。

通常情况下,当一个大型networking中存在某种forms的内容caching/过滤/ nat时,通常会看到这个caching/过滤不能由单个设备处理。

每个单独的请求都是由集群caching/filter/ NAT设备根据networkingpipe理员设置的一些规则来分配和处理的。

这对我的在线游戏有很多的后果,因为如果给定用户的IP地址发生变化,很多事情会“中断”。

这听起来像你对IP地址做了一些不符合惯例的假设。 不幸的是,在当前的IPv4地址空间已经用尽的世界里,不能依赖于多个TCP连接之间客户端的IP地址是一致的。

这不是“老”,有点常见。 您经常会在大型商业networking中看到这种行为。 在酒店,学校,政府networking等等看到这种行为并不罕见。

由于IPv4地址空间变得越来越难以通过这种行为可能会变得更加普遍。

如果您考虑networking地址转换的工作方式,则会更容易理解。 基本上,每个NAT设备能够处理大约65000个并发的TCP连接,因为它为每个传出连接分配自己的TCP端口。 在YouTube时代,我们的联系有时相当长。 因此,ISP在许多NAT盒子之间分配stream量(或使用具有许多外部IP地址的盒子),每次进行传出TCP连接时都会产生不同的IP地址。

我不明白为什么它会影响你的游戏。 如果是基于浏览器的游戏,则可以将会话信息存储在服务器上,并使用Cookie将客户端与会话进行匹配。 如果是独立游戏,只要保持TCP / UDP连接,并且只要连接处于活动状态,客户端的IP地址就保持不变。 没有理由依赖客户端的IP地址,除非我失去了一些东西。