Qualidade dos dados

Por que algumas faixas de IP apontam só para um país, e não para uma cidade

Nem todo endereço IP permite o mesmo nível de precisão de geolocalização, e para um número significativo de faixas de endereços, a resolução no nível de país é de fato o máximo que se pode afirmar com honestidade, seja qual for o provedor que faz a consulta. Entender por que isso acontece, em vez de presumir que é uma lacuna que dados melhores simplesmente fechariam, ajuda a definir as expectativas certas para tratar esses resultados na sua própria aplicação.

Alguns blocos de endereços são alocados a uma organização que atua de forma ampla em um país inteiro, sem uma subdivisão regional clara e consistente na forma como realmente encaminha ou atribui o tráfego internamente, o que significa que não existe um sinal mais detalhado e confiável para informar nem mesmo em princípio, e não apenas um sinal que por acaso está ausente de um determinado conjunto de dados. Certas categorias de rede, incluindo alguns serviços via satélite e alguns grandes provedores centralizados, encaminham o tráfego por um número relativamente pequeno de pontos de saída que cobrem áreas geográficas muito amplas, como abordado em outro texto, o que limita o quão precisa qualquer geolocalização desse tráfego pode ser com honestidade, independentemente de quão bons sejam os dados compilados para todos os outros tipos de rede.

Blocos de endereços recém-alocados ou reatribuídos recentemente também podem não ter dados de uso real suficientes para sustentar algo além de uma confiança no nível de país, simplesmente porque a geolocalização de endereços IP no nível de cidade geralmente depende de acumular e correlacionar sinais de uso real ao longo do tempo, e um bloco que não está em uso ativo e estável há tempo suficiente sob a sua atribuição atual ainda não gerou esse sinal, por melhor que a metodologia seja em outros aspectos.

Em todos esses casos, a resposta certa é informar com honestidade a precisão no nível de país, em vez de fabricar um palpite de cidade plausível, mas sem fundamento, só para preencher o campo. Uma cidade errada informada com confiança é bem pior para a sua aplicação do que um resultado honesto e menos detalhado no nível de país, porque uma cidade errada, mas plausível, pode passar silenciosamente por uma lógica que presume que ela é confiável, causando um erro mais adiante que é difícil de rastrear até a origem, enquanto um resultado no nível de país pelo menos sinaliza claramente a sua própria limitação e leva você a um tratamento adequadamente conservador.

Se a sua aplicação depende da precisão no nível de cidade para uma parte significativa da sua lógica, vale a pena verificar explicitamente se o resultado retornado inclui de fato um campo de cidade específico e preenchido, ou se volta apenas com país e região, e ter um comportamento padrão sensato pronto para o segundo caso, em vez de presumir um valor de cidade que não está lá. As nossas consultas de IPv4 e de IPv6 retornam exatamente o que os dados subjacentes sustentam com honestidade para um determinado endereço, no nível de granularidade que for, em vez de encaixar um palpite de menor confiança em um campo que ele não consegue sustentar com confiabilidade.