já a base de dados eu uso uma que atualiza mensalmente. para evitar erros
Respondendo a "Já vi alguns serviços, como o IPInfo (https://i..." dentro da publicação API de Localização de IP
1
2
acho que isto aí pode não ser tempo suficiente: verifica se não tem algo que é atualizado semanalmente pelo menos.
dica: você mesmo pode atualizar esta base de dados se quiser. Basta que você assine outros serviços que provenham este mesmo serviço e cacheie os resultados pra você.
isto vai garantir que sua base sempre esteja atualizada.