La géolocalisation par ip: c'est quoi?

Pour comprendre la précision et le cout des solutions existantes il faut comprendre la stratégie employée par les différents acteurs pour réaliser la localisation. Il existe différentes technologies permettant d'arriver à déterminer la position géographique d'une IP. On peut les regrouper en 3 grandes familles:

  • ipv4-survey.jpgla localisation basée sur les données publiques: Les fournisseurs d'accès internet affectent des IP à leurs clients. Ces IP sont issues d'un pool d'adresse définit au niveau mondiale. Il est donc facile de rattacher une IP à son fournisseurs d'accès et donc potentiellement à son pays. Les attributions des blocs d'ip sont gérées par l'organisation ICANN et ces informations sont publiques (voir la liste des assignations).
    Toutefois, cette façon de procéder a des limites, le provider n'est pas une localisation exacte et au mieux on ne peut définir que le pays. On admet généralement une précision de 97% pour déterminer le pays(source Maxmind). Mais cette façon de faire ne permet pas une localisation précise au niveau de la ville.

  • la localisation basée sur des partenariats :des acteurs privés recueillent des informations de localisation à travers des partenariats pour consolider une localisation. Par exemple si une IP a consulté la météo pour Amien et les horaires de cinéma pour la même ville, il est probable que l'utilisateur de cet IP soit localisé à Paris. De même sur un site quelconque, un utilisateur dont le profil contient l'adresse de l'utilisateur permettra de maintenir une association localisation/IP au fil des connexions.
  • la localisation par analyse complexe se base sur l'interprétation de différentes sources d'information. Elle exploite les données publique mais aussi des données techniques (traceroute, triangulation). Les fournisseurs de ce type de service s'appui également sur la connaissance des réseaux des fournisseur d'accès internet. Généralement,  la liste exhaustive des informations et la façon précise dont ces information sont compilé pour déterminé la localisation reste un secret de fabrication. La précision monterait alors à 99% sur les pays et environ 80% sur la ville (tout du moins, il est couramment admis que la précision maximale est obtenue pour les États-Unis)

La Geolocalisation ça sert à quoi ?

...

( Image en provenance d'un post xkcd sous licence creative commons 2.5)

Les prestataires

Il existe une grande quantité de fournisseurs de localisation basés sur les données publiques. Ces services sont généralement gratuit.
Quelques liens glanés ça et là (liste non-exhaustive):

Dans ce billet, on ne s'intéresse qu'aux trois sociétés dont les noms sont le plus souvent cités dans ce domaine et qui propose une précision de localisation au niveau ville/région/code postale (par ordre alphabétique) :

Benchmark

Les tests ont été réalisé en utilisant:
- un accès de démonstration pour Digital Element
- la page de test de Maxmind
- l'accès démo à l'API de Quova
Le benchmark a été réalisé sur 24 IP (dont 4 en Russie, 3 aux États-Unis, 3 en Asie, 2 en France).
On mesure la pertinence du résultat en se basant sur la comparaison du code postal renvoyé par l'API par rapport au code postal connu. Ce test exclut donc d'office un grand nombre de solutions basées sur les données publiques qui ne localise qu'au niveau du pays.

Résultats



tous les chiffres bonsPremiers chiffres bonsErroné
Digital Element7
8
9
Maxmind2
2
20
Quova4
5
15

Interprétations des résultats:
Attention: le nombre d'ip (bon,..déjà récupéret 24 ip et leurs localisations ça n'a pas été facile) n'est pas significativement élevé pour permettre des conclusions définitives.
Maxmind donne des codes postaux uniquement aux États-Unis (seuls résultats positifs). Le test tel qu'il est présenté est donc forcément en défaveur de Maxmind même s'il identifie correctement les noms des villes correspondant à la localisation réelle. Toutefois, le code postal est un élément essentiel de localisation structuré. Il est difficile d’effectuer la comparaison avec un référentiel local en utilisant le nom de la ville puisque le référentiel sera potentiellement dans une langue et celui du prestataire dans une autre langue.


Combien ça coûte ?

Les tarifs de Maxmind sont publiés sur leur site: http://www.maxmind.com/app/geolocation

L'offre consiste dans l'achat d'un droit d'utilisation, puis d'achat de mise à jour (il y en a une par mois)

Pour Digital Element et Quova, il faut entrer en contact avec un commercial pour discuter des tarifs. L'ordre de grandeur est le même. Il faut démarrer à environ 1 000 euros par mois. Le prix est fonction de :

  • la volumétrie: le nombre de géolocalisation par mois. Plus on sollicite le service, plus on paye.
  • du périmètre de données choisie. Les services de bases n'inclus pas les villes, les codes postaux, ni un grand nombre d'information notamment réseau (type de connexion, FAI, ...). Plus on veut d'information, plus c'est cher.
En fonction du prestataire et des options on peut arriver à un budget de 3 000 euros mensuel.