Rapidamente mudando endereços IP públicos em certas redes?

4

Eu corro / desenvolvo um jogo online onde muitos dos nossos usuários estão no sudeste da Ásia.

Eu fui recentemente ao sudeste da Ásia e fiz uma descoberta alarmante. Em qualquer lugar que eu tenha acesso à internet, seja via 3G, uma LAN em um hotel ou wifi em um café, tanto em Cingapura quanto nas Filipinas, notei que meu endereço IP estava mudando CONSTANTALMENTE. Quero dizer, o endereço IP público, não o privado. Eu poderia carregar uma página como whatismyip.com e apenas clicar em reload e ver um novo endereço IP aparecer a cada 5-10 segundos!

Isso tem muitas consequências para o meu jogo on-line, já que muitas coisas "quebram" se o endereço IP mudar para um determinado usuário. Basicamente, gostaria de saber mais sobre isso. Existe um nome para o tipo de rede ou roteador ou paradigma que causa isso, para que eu possa ler sobre isso? Eu não entendo porque uma rede funcionaria dessa maneira. Isso faz isso de propósito? Por razões de segurança? É para anonimizar e proteger a identidade dos usuários? Ou é apenas um método "antigo" que é praticamente obsoleto no resto do mundo? Obrigado por qualquer informação que me ajude a entender.

    
por DivideByHero 08.03.2010 / 20:36

2 respostas

1

Normalmente, você verá isso quando houver alguma forma de armazenamento em cache / filtragem / nat de conteúdo em uma grande rede em que o cache / filtragem não pode ser manipulado por um único dispositivo.

Cada solicitação individual é distribuída e manipulada pelos dispositivos de cache / filtro / nat de cluster com base em algum conjunto de regras definido pelo administrador da rede.

This has lots of consequences for my online game, as many things "break" if the IP address changes for a given user.

Parece que você fez algumas suposições sobre endereços IP que não se encaixam na prática comum. Infelizmente, no mundo atual, onde o espaço de endereços IPv4 está quase esgotado, você não pode depender do endereço IP de um cliente ser consistente entre várias conexões tcp.

Não é "antigo", é um pouco comum. Com freqüência, você verá esse comportamento em redes de grandes empresas. Não é incomum ver esse comportamento em hotéis, escolas, redes governamentais, etc.

Dado que o espaço de endereços IPv4 está se tornando mais difícil de obter, esse comportamento provavelmente se tornará ainda mais comum.

    
por 08.03.2010 / 22:33
1

Se você pensar sobre o modo como a Tradução de Endereços de Rede funciona, fica mais fácil de entender. Basicamente, todo dispositivo NAT é capaz de lidar com cerca de 65.000 conexões TCP simultâneas, já que aloca sua própria porta TCP para cada conexão de saída. Na era do YouTube, nossas conexões às vezes são bem longas; portanto, os ISPs distribuem o tráfego entre muitas caixas NAT (ou usam caixas com muitos endereços IP externos), resultando em um endereço IP diferente toda vez que você faz uma conexão TCP de saída.

Eu não entendo porque isso afeta o seu jogo. Se for um jogo baseado em navegador, você armazenaria informações de sessão em um servidor e usaria um cookie para corresponder um cliente a uma sessão. Se for um jogo autônomo, basta manter uma conexão TCP / UDP e o endereço IP do cliente permanece o mesmo, desde que a conexão esteja ativa. Não há realmente nenhuma razão para confiar no endereço IP do cliente, a menos que esteja faltando alguma coisa.

    
por 08.03.2010 / 22:48