Які методи використовуються службами GeoIP, окрім інформації WHOIS? [зачинено]


11

Мені було просто цікаво, як служби GeoIP збирають дані про географічне розташування IP-адрес, крім перевірки IP-адреси WHOIS. Наприклад, я натрапив на цей веб-сайт, який говорить, що IP 74.207.244.221 знаходиться у місті Фремонт, Каліфорнія: https://ipinfo.io/74.207.244.221

Але я не можу знайти цю інформацію в цій IP-адресі. ipinfo.io стверджує, що:

Спочатку наш API використовував дані MaxMind, але ми були дуже зайняті над створенням власних геолокаційних даних. Ми досягли значного прогресу, і тепер ми використовуємо власні дані для обслуговування приблизно половини всіх запитів. Ми все ще відновлюємо дані MaxMind

І це мене зацікавило, якими способами такі служби, як ipinfo.io та MaxMind, збирають дані GeoIP?

Відповіді:


11

Такі служби зазвичай використовують 3 способи геолокації IP-адреси:

  1. Перегляд баз даних Whois для пошуку адреси;
  2. Відстеження зворотних запитів DNS для того, щоб спробувати знайти підказки на основі записів доменних імен або відстеження шляху пакета, надісланого до пункту призначення, який також може давати підказки (наприклад, використовуючи traceroute).
  3. І нарешті, вони використовують триангуляцію RTT.

Триангуляція в зворотній час (RTT) - це метод, який використовується для отримання приблизного геолокації IP-адреси шляхом вимірювання затримки пінг з трьох різних місць.

Наприклад, якщо у вас є три сервери, розповсюджені по всьому світу у формі трикутника, і якщо ви вводите IP-адресу з усіх трьох і отримуєте однакові результати затримки, то це означатиме, що IP-адреса розташована прямо у центр цього трикутника. Це так, як працює тріангуляція, однак у цьому випадку вона використовується з пінгами ICMP.

Ресурси, які ви можете прочитати:
Що таке пінг? @ Wikipedia
Документ SIGCOMM про триангуляцію RTT


5
Нічого собі, я б ніколи не думав, що існує триангуляція на основі RTT. Цікаво. Тож, якщо якийсь сервер хотів би уникнути геолокації, він може ввести випадкові відставання у відповідях ICMP.
Учень

Я хотів би додати, що може бути корисним переглянути tracert / traceroute, як написано на iplocation.net: "Ви можете скористатися командою 'traceroute', щоб знайти підказки щодо розташування IP-адреси. Назви маршрутизаторів, через які потік пакетів від вашого хоста до цільового вузла може натякати на географічний шлях остаточного місця розташування. "
Учень

1
@Learner, це приємне доповнення, яке вже є моєю відповіддю у формі "відстеження зворотних запитів DNS". Хоча traceroute насправді цього не робить, він показує всі домени / адреси, через які проходить запит. Я додам ноту, щоб все-таки зрозуміти :)
Fanatique

5

Я засновник IPinfo , тому я точно можу запропонувати деякі деталі навколо цього! Існує не один єдиний метод, який ми використовуємо, або єдине джерело даних для створення власної бази геолокацій (або будь-який з інших наших наборів даних, наприклад, IP для компанії або IP для перевізника). Це поєднання безлічі різних наборів даних, технік обробки даних та уроків, які ми робимо це вже кілька років!

Деякі джерела даних та методи, які не часто згадуються, включають:

  • Прямі канали провайдерів. Наш сервіс обробляє близько 500 мільйонів запитів API на день, і він використовується на багатьох популярних веб-сайтах високого профілю. Тому Інтернет-провайдери заохочуються надавати нам точні сучасні дані про геолокацію, щоб їхні клієнти отримували чудовий досвід в Інтернеті. Ми постійно працюємо з все більшою кількістю провайдерів.

  • Дані про місцезнаходження GPS. Можна збирати точну інформацію про місцезнаходження за допомогою GPS на мобільних пристроях. Ви можете з’єднати це з IP-адресою та деякими мережевими топологічними висновками для визначення місця розташування для IP-діапазонів, даючи лише кілька вимірювань.

  • Користувач подав виправлення. Коли ми неправильно визначимо місцеположення (або воно не було оновлено після зміни), ми часто швидко отримуємо зворотній зв’язок від користувачів, і можемо вручну виправити місцеположення або налаштувати наш алгоритм, щоб переконатися, що він правильно розташований під час наступного запуску програми наш трубопровід обробки даних.

Для нашого набору даних IP до компанії ми фактично скреблимо кожне ім’я кожного домену щомісяця і перехресно посилаємось на дані, які ми отримуємо там, з інформацією про право власності на IP-адресу, іншими записами тощо. Потім ми також використовуємо дані для скреблінгу домену, щоб показати, які домени розміщуються на яких IP-адресах, а також у нашому класифікаторі типу IP, а також у багатьох інших джерелах даних, щоб визначити ймовірність використання IP-адреси в основному як приватного провайдера, бізнес або хостинг-провайдер. Ми також аналізуємо структуру посилань цих сторінок і показати деякі з цих даних на host.io .


Спасибі! Я не очікував, що засновник цього веб-сайту відповість на моє запитання :) Це було дуже цікаво.
Учень
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.