A preferência IPv6 / IPv4 é determinada pelo iniciador de uma conexão, ou seja, o navegador da web. As regras de seleção de endereço são definidas na RFC 6724 . Embora eles possam ser substituídos, é apenas pelo usuário que reconfigura seu sistema operacional.
A única maneira de forçar alguém a usar o IPv4 é não oferecer IPv6. Obviamente, essa não é uma solução prática, mesmo a médio prazo ...
Então, voltemos ao problema original: a localização geográfica para IPv6 é "um pouco mais esparsa do que com IPv4".
Em parte, isso depende muito de onde você obtém seus dados de geolocalização. Maxmind, por exemplo, apenas fornece meu endereço IPv6 como "Estados Unidos", sem cidade alguma e um conjunto interessante de coordenadas , enquanto o Google pelo menos identifica corretamente a área metropolitana em que estão a cerca de 80 quilômetros de distância. Tanto o Maxmind quanto o Google permitem correções de relatórios e, pelo menos para o Maxmind, qualquer pessoa pode fazer isso para qualquer endereço IP.
Eu não esperaria que essa situação durasse muito tempo. À medida que o uso do IPv6 continua a se expandir, os usuários desses serviços de geolocalização exigirão maior precisão para os endereços IPv6 e terão que entregá-lo eventualmente, pelo menos para os clientes pagantes, para que esses clientes não fiquem em outro lugar.
Enquanto isso, você deve ter certeza de que seu aplicativo tem outras maneiras de localizar usuários. Se eles efetuaram login, você pode ler a conta existente para obter pistas sobre sua localização. Você pode pedir ao usuário para selecionar explicitamente um país. E assim por diante...
Outra coisa que você pode fazer é fornecer um subdomínio somente IPv4 e um subdomínio somente IPv6 do seu site, cada um dos quais suas páginas tentam carregar. Você pode correlacioná-los do lado do cliente e reportar de volta ao servidor. Não por coincidência, a Maxmind já está fazendo isso em seu próprio site.