Wenn sich ein Nutzer über ein VPN verbindet, versagt die IP-Geolokalisierung nicht, sie beantwortet nur eine andere Frage als die, die Sie stellen wollten. Die Abfrage identifiziert korrekt das Netz, über das der Traffic gerade austritt, also den Server des VPN-Anbieters und nicht die eigene Verbindung des Nutzers. Steht dieser Ausgangsserver in einem anderen Land, verortet das Ergebnis den Nutzer sicher und korrekt dort, denn aus Sicht des Netzes stammt der Traffic tatsächlich von dort.
Proxys verhalten sich im Prinzip genauso, auch wenn die Details variieren. Ein Forward-Proxy leitet eine Anfrage von einer IP an eine andere weiter, und das Ziel sieht nur die Adresse des Proxys. Ein transparenter Proxy gibt die ursprüngliche Client-Adresse möglicherweise in einem Header weiter, ein gut konfigurierter verbirgt sie jedoch vollständig. So oder so liegt die Geolokalisierungsabfrage bei der IP, die sie erhalten hat, nicht falsch. Sie beschreibt schlicht das Netz, zu dem diese IP gehört, also die Infrastruktur des Proxy- oder VPN-Betreibers, nicht die Person dahinter.
Das ist für zwei verschiedene Anwendungsfälle wichtig, die oft miteinander verwechselt werden. Wenn es Ihnen um Compliance oder die Lokalisierung von Inhalten geht, ist eine genaue Bestimmung des Ausgangsnetzes oft genau das, was Sie brauchen, denn das ist die Rechtsordnung, über die der Traffic rechtlich geleitet wird. Wenn es Ihnen um Betrugserkennung geht, ist das interessante Signal nicht der Standort selbst, sondern die Tatsache, dass die Verbindung von Infrastruktur kommt, die als VPN- oder Hosting-Anbieter bekannt ist, und nicht aus einem Privat- oder Mobilfunknetz. Das ist ein von der Geolokalisierung getrennter Datenpunkt.
Zu erkennen, dass eine IP zu VPN- oder Proxy-Infrastruktur gehört, ist ein anderes Problem, als diese IP auf einer Karte zu verorten. Es hängt davon ab, zu verfolgen, welche Adressbereiche von Hosting- und VPN-Anbietern betrieben werden, eine Liste, die sich ständig ändert, wenn neue Dienste starten und alte neu zugewiesen werden. Dies ist als optionales Signal neben dem geografischen Ergebnis verfügbar, da es Anfragen, die es nicht benötigen, verlangsamen würde, wenn es standardmäßig in jeder Antwort enthalten wäre.
Nichts davon macht IP-Geolokalisierung weniger nützlich. Es macht sie zu einer Beschreibung der Netztopologie, und das war sie schon immer. Behandeln Sie ein als VPN markiertes Ergebnis als „diese Verbindung tritt derzeit über dieses Netz aus“ und nicht als „hier wohnt der Nutzer ganz sicher nicht“, dann leisten die Daten genau das, was sie versprechen. Für Netzwerkdetails neben den Standortfeldern übergeben Sie mg_extras=1 oder den Header X-MG-Extras bei der IPv4- oder IPv6-Abfrage.
Eine Adresse in einem gut kartierten Stadtzentrum sagt Ihnen fast nichts darüber, wie Ihr System mit einer ländlichen Zustellroute, einer umstrittenen Grenze oder einer Anfrage in Polnähe umgeht. Testen Sie die schwierigen Fälle gezielt.
Nicht jeder Datensatz mit öffentlich wirkenden Standortinformationen darf rechtlich in einem kostenpflichtigen Produkt verwendet werden. Die eigentliche Grenze setzen oft die Lizenzbedingungen, nicht die technische Verfügbarkeit.
Wenn sich eine Anfrage wirklich nicht zuverlässig auflösen lässt, ist es die bessere Antwort, nichts zurückzugeben, statt eine als Tatsache verkleidete Vermutung. Hier ist die Begründung für diese Entscheidung.