双(或更多)NAT / PAT有多广泛?

背景:我正在使用UDP打孔服务,为了区分同一个公共IP地址下的用户,我想让用户也发送他们的本地IP。 这样,我用一块石头杀死了两只鸟:客户端被唯一标识,同时也使服务器提供用户build立直接连接(如果可能),而不是发夹。

一切似乎完美(尤其是独特的身份证),直到我意识到这是可能的:

双PAT例子

所以这里是一个真正的问题:这种情况有多广泛,如果甚至被使用,在哪里?

这种情况在中国这样的国家很常见,而在其他国家的小型互联网服务供应商(特别是无线互联网服务供应商)中也是如此 他们获得的IP范围相对较小,然后为用户做大规模的NAT。

当然,这些用户大多购买廉价的SOHO路由器,并在内部NAT的192.168.1.0/24范围内。

当用户用完ISP端口的4端口路由器时,我已经看到了相同的设置,其中2个端口已经用于电视,他们只是在楼上的有线电脑上插入便宜的soho。 所以我不认为这是不寻常的

如果我正确地理解了您,您希望使用公共IP地址和客户端的本地IP地址的组合来生成唯一的客户端标识符。 但是这种组合并不保证是独一无二的。

您应该考虑使用公共IP地址和连接端口号。 这将唯一标识客户端。