Pull to refresh

Насколько точной может быть IP-геолокация?

Reading time10 min
Views19K
Original author: BIgDataCloud

Технология IP-геолокации существует уже давно. Это единственный ненавязчивый инструмент, который поставщик услуг может использовать для оценки географического положения онлайн-посетителей.

IP-геолокация зарекомендовала себя как главный механизм для предоставления услуг локализации контента, управления цифровыми правами, таргетинга клиентов и обнаружения мошенничества.

Но насколько точна IP-геолокация? Можем ли мы доверить ей принятие важных бизнес-решений?

Точность IP-геолокации была одной из часто обсуждаемых тем на протяжении многих лет на многих платформах. Мы можем найти множество жалоб на форумах, например, о том, что IP-адреса не показывают правильное местоположение или достоверны только данные на уровне страны.

Один из самых популярных мифов заключается в том, что IP-геолокация неточна, поскольку основана на общедоступных данных и обычно указывает на местонахождение штаб-квартиры организации, а не на местонахождение реального пользователя.

Результаты сильно отличается, потому что не все сервисы IP-геолокации одинаковы, и часто используют разные технологии для получения и обработки данных. Пожалуйста, ознакомьтесь с нашей статьей в блоге здесь, чтобы узнать больше о том, как работают традиционные службы геолокации IP.

Целью этой статьи не является сравнение различных провайдеров геолокации IP. Но это будет скоро, следите за обновлениями!

В этой статье рассматриваются основы IP-геолокации, а затем объясняется наилучшая точность и результаты, которые мы теоретически можем ожидать от «идеальной» IP-геолокации. Затем в ней описываются концептуальные ограничения, о которых мы должны знать, и в какой степени мы можем доверять получаемым данным.

IPv4 - это надолго

Когда мы говорим о геолокации IP, мы в первую очередь рассматриваем адресное пространство IPv4, так как большая часть нашего веб-трафика все еще идет с адресов IPv4.

IPv6 был создан, чтобы решить глобальную нехватку адресного пространства IPv4, предоставив колоссальное расширение аж на 2128 адресов. Однако этого не произошло, хотя с момента его введения прошло два десятилетия.

Есть много причин, по которым IPv6 не используется повсеместно. Основная причина, наверное, самая удивительная -

Оказывается что реальной нехватки IPv4-адресов всё-таки нет!

Конечно, в какой-то мере нехватка IPv4-адресов существует, так как получить их бесплатно сейчас практически невозможно, даже если это жизненно важно для вашего бизнеса. По этой причине IPv4 стал товаром, даже дорогим товаром и таковым останется.

Как это возможно, спросите вы? На IPv4 доступно лишь ограниченное количество 232 или примерно 4,3 миллиарда адресов, так как же они могут вместить более 7 миллиардов желающих выйти в интернет людей и поддержать огромное расширение в сфере IoT?

Удивительно, но это возможно!

Во-первых, несмотря на теоретический максимум в 4 294 967 296 адресов IPv4, не все они выделены для публичного использования в Интернете.

И затем, как вы думаете, сколько из них активно используется?

Примечательно, что в настоящее время существует всего 2,9 миллиарда общедоступных адресов IPv4, обслуживающих весь наш Интернет! Посетите наш онлайн мониторинг адресного пространства IpV4, чтобы узнать последние данные.

И это в то время как в мире:

  • более 4,5 миллиардов пользователей домашнего интернета

  • более 300 миллионов активных сайтов

  • более 3,5 миллиардов пользователей смартфонов

  • более 7 миллиардов устройств IoT, и это число растет

  • миллионы общедоступных IP-адресов, используемых глобальной сетевой инфраструктурой

Так как это вообще возможно?

Это потому, что нам нужен полный, общедоступный IP-адрес, только тогда когда нам требуется двусторонняя связь, например, когда нам нужно иметь возможность инициировать и получать входящие запросы на соединение из внешнего мира.

Однако большая часть нашей деятельности в Интернете идеально подходит только для одностороннего общения. Например, когда мы просматриваем Интернет, мы сами инициируем соединение и не ожидаем, что веб-сайты или другие поставщики веб-услуг будут активно подключаться к нашему устройству. Мы даже надеемся, что они этого не сделают, иначе это вызовет серьезные проблемы с безопасностью.

С другой стороны, поскольку веб-сайты не являются инициаторами соединений и доступны по большей части с использованием имени хоста, их можно поместить за общий IP-адрес.

Теоретически можно разместить все наши более 300 миллионов активных веб-сайтов по всему миру за одним anycast IP-адресом или лишь за несколькими из них для высокой доступности. Так будет еще эффективнее защитить их от кибератак. Cloudflare - отличный пример того, как это может работать.

Технически уже существует множество технологий для совместного использования IP-адреса при односторонней связи. Мы используем преобразование сетевых адресов (NAT) дома или в небольших офисах, прокси-серверы в более крупных организациях и виртуальный хостинг на основе имен для веб-сайтов, и это лишь некоторые из них.

Мы склонны классифицировать IP-адреса как статические (наш навсегда) или динамически выделяемые (наш в течение ограниченного времени). Однако мы часто не получаем эксклюзивный IP-адрес. Мы только временно используем его и, возможно, даже делимся им с другими удаленными узлами одновременно.

Например, операторы сотовой связи часто реализуют NAT уровня оператора (CGNAT) и используют небольшие блоки IP-адресов для обслуживания большой активной клиентской базы.

Технически они назначают диапазон доступных им IP-адресов для части своей сети, а мобильные пользователи используют IP-адрес только для доступа к Интернету, как, например, с прокси. Соединение является строго однонаправленным, IP-адрес внешнего мира не может инициировать соединение на мобильное устройство, используя этот адрес. Это обеспечивает надежную защиту и снижает количество требуемых общедоступных IP-адресов.

Обратной стороной, однако, является то, что старое и широко распространенное предположение, что за каждым IP-адресом стоит одно устройство и, следовательно, его можно отследить до точного географического местоположения, больше не действует!

Поэтому, когда мы рассматриваем IP-геолокацию, мы должны сначала рассмотреть, как используется IP-адрес.

Статические IP-адреса

Правильно определить геолокацию статического IP-адреса проще всего.

Независимо от точного метода, который помогает поставщикам IP-геолокации получать свои данные, существует один общий всеобъемлющий принцип. IP-геолокация всегда основана на предварительно полученных данных. Это могут быть общедоступные данные RIR, самоизданные геофиды, измерения из активных источников, а так же пары IP и местоположения, предоставленные конечным пользователем или полученные иным образом.

Как не назови, это всегда данные подтверждающие или намекающие на использование IP-адреса в той или иной местности. К сожалению, не все данные могут быть верны, например из за ошибки в работе GPS. Качество сервиса IP-геолокации всегда зависит от того, к каким данным они имеют доступ и как они их обрабатывают.

Поэтому, когда у нас есть свежее, действительное и очень точное географическое местоположение статического IP-адреса, используемого стационарным устройством, результирующая точность IP-геолокации может быть пугающе точной - часто на расстоянии до нескольких метров.

Вот почему BigDataCloud намеренно слегка корректирует предоставленные координаты местоположения, округляя их до ближайшего километра - по сути, ограничивая максимальную точность до одного квадратного километра.

Следовательно, IP-геолокация не подходит для определения точного местоположения пользователя.

Кроме того, она не должна быть настолько точная, насколько может быть, потому что мы также должны уважать конфиденциальность конечных пользователей IP-адресов.

Динамические IP-адреса

Динамический IP-адрес - это IP-адрес, который наш интернет-провайдер (ISP) временно назначает нам.

Единственное заметное различие между статическим распределением и динамическим заключается в том, что при статическом распределении нам обещают, что адрес не изменится с течением времени. В случае динамического назначения он может меняться, так часто как мы перезагружаем маршрутизатор, или даже чаще, в зависимости от политики провайдера.

Некоторые интернет-провайдеры могут принудительно изменять адреса каждые несколько часов, а другие позволяют нам иметь один и тот же адрес в течение нескольких месяцев, даже если мы периодически перезагружаем маршрутизатор.

Чем дольше один и тот же IP-адрес остается в одном и том же физическом местоположении, тем больше шансов, что поставщик услуг IP-геолокации сможет установить его расположение с точностью соответствующей статическому IP-адресу.

Но что произойдет, если только что полученный IP-адрес был замечен ранее в другом месте? Да, результаты IP-геолокации будут не точны. Но насколько? Давайте разберем этот случай.

Динамический IP-адрес обычно распределяется посредством протокола DHCP. Точно так же, как наш домашний компьютер получает локальный частный IP-адрес от домашнего маршрутизатора с использованием DHCP. В сети нашего интернет-провайдера также есть маршрутизатор выполняющий подобную функцию.

Этот маршрутизатор, в свою очередь, имеет диапазон IP-адресов, которые он может выделять клиентам. Эти IP-адреса могут быть последовательными, напоминать один сетевой блок или даже список из нескольких блоков. Иногда эти блоки могут быть размером с один IP-адрес. Именно поэтому так важна детализация данных геолокации IP. «Идеальная» служба геолокации IP должна поддерживать грануляцию до одного IP-адреса - это лишь примечание.

Примечательно, что сетевой маршрутизатор, который обслуживает нас напрямую, по существу отвечает за наш участок сети, и чаще всего этот участок напоминает очень четкую географическую границу - зону обслуживания.

Следовательно, максимальная ошибка геолокации IP, которую мы должны ожидать при использовании IP-адреса, который был засвидетельствован и отмечен где-то еще, - это максимальное расстояние от нашего физического местоположения до самого дальнего конца границы этой области.

Зона обслуживания или Confidence Area, как мы ее называем в BigDataCloud, - это критически важная часть информации, которая может сказать нам, где еще может находиться интересующий нас IP-адрес, если он был назначен динамически. Мы должны учитывать это, если решение, которое мы принимаем на основе данных геолокации IP, является существенным.

Скриншот карты с указанием оценочного местоположения точки и Confidence Area (зоны обслуживания) соответствующих IP-адресу , созданных с использованием BigDataCloud IP Geolocation API. Вы можете проверить свой IP-адрес здесь

Например, если мы предоставляем или запрещаем доступ к услугам или принимаем решение о вероятности мошенничества в электронной торговле, мы обязательно должны включить область обслуживания как один из параметров. Оценки точки местоположения может быть недостаточно, поскольку это всего лишь оценка, которая обычно основана на самом последнем, или наиболее вероятном (частом) местоположении для нее.

Сотовые сети

Выделение IP-адреса оператором сотовой связи может напоминать процесс  динамического выделения IP-адресов оператором фиксированной связи. Однако есть по крайней мере три заметных отличия, которые могут значительно усложнить определение географического местоположения по IP для мобильных сетей.

  1. Устройство за IP-адресом не обязательно является стационарным. Иногда мы можем проехать несколько сотен километров и по-прежнему пользоваться той же сотовой сетью и тем же IP-адресом.

  2. IP-адрес не принадлежит одному пользователю, а распределен между группой пользователей которые могут находится на большом расстоянии друг от друга.

  3. Операторы сотовой сети часто используют общую точку доступа в Интернет с одним и тем же общим пулом доступных IP-адресов. Это может значительно увеличить зоны обслуживания блоков сотовых адресов.

Следовательно, какого результата мы должны ожидать от «идеального» сервиса IP-геолокации для IP-адресов, используемых в сотовой связи?

К сожалению, даже теоретически “идеальный” сервис IP-геолокации не всегда может определить точное на данный момент местоположение для каждого IP-адреса в сотовой сети.

Даже сами операторы сотовой связи часто не имеют этих данных в реальном времени. 

Следовательно, в качестве первого шага для бизнеса было бы выгодно, если бы провайдеры IP-геолокации могли бы указать, принадлежит ли интересующий IP-адрес блоку сотовой связи или нет. Простой способ сделать это - проверить, предоставляет ли компания, обслуживающая этот IP-адрес, услуги сотовой связи, к примеру Vodafone, AT&T и т. д. Но это не всегда будет полезно, так как некоторые из этих компаний могут предоставлять услуги доступа в интернет по беспроводным и проводным каналам. Следовательно, мы должны иметь возможность обнаруживать сотовые сети независимо от компании которая их анонсирует.

Следующей критической точкой для услуг геолокации IP является зона обслуживания сотовой сети, даже если она может быть достаточно большой. Некоторые операторы сотовой сети используют одни и те же диапазоны IP-адресов для абонентов по всей зоне своего покрытия, которая может достигать размера страны. Это означает, что IP-адрес в сотовой сети может использоваться одновременно из географических точек значительно удаленных друг от друга. Это очень важно знать, если нам нужно принять важное бизнес-решение на основе IP-геолокации.

Хостинг

Также важно различать IP-адреса на обслуживающие устройства управляемые человеком напрямую или промежуточными серверами или ботами. В BigDataCloud мы склонны классифицировать их как сети потребителей и хостинга .

Хостинг - это общий термин, который мы используем для описания всех видов компьютеров за которыми не сидит человек, таких как, серверы в центрах обработки данных, а также в офисах или частных объектах.

Сетевые IP-адреса хостинга - это, по сути, те, которые используются для общедоступных веб-сайтов, почтовых серверов, служб VPN, TOR, прокси и многих законных, а также вредоносных приложений.

Например, бытовые прокси-серверы или сети VPN часто располагаются на благожелательных блоках IP-адресов, объявленных с ASN интернет-провайдеров или даже операторов сотовых сетей. BigDataCloud также обнаруживает их и отмечает их как хостинг.

Большинство IP-адресов хостинга являются статическими.

Нештатные случаи

Во всех вышеперечисленных случаях есть некоторые исключения, и в следующих разделах мы расскажем, как они должны быть обработаны.

Сотовая связь в роуминге

Когда мы прибываем в чужую страну и включаем данные в роуминге, мы можем обнаружить, то что веб-сайты, которые мы посещаем, по-прежнему считают, что мы никогда не покидали нашу родную страну. Часто мы можем продолжать использовать тот же IP-адрес, даже если мы находимся за тысячи миль!

Как такое возможно? Большинство, если не все операторы мобильных сетей во всем мире, как правило, направляют трафик своих удаленных клиентов обратно в свои домашние сети перед тем как вывести их в Интернет. Таким образом, они могут лучше контролировать выставление счетов за свои услуги передачи данных.

Технически это очень похоже на VPN, которая туннелирует наш трафик обратно в наши домашние сети.

Это делает определение IP-геолокации чрезвычайно сложной задачей для клиентов в роуминге. В дополнение к обычному CGNAT, где несколько удаленных мобильных клиентов могут использовать один и тот же IP-адрес для выхода в Интернете, роуминг добавляет вероятность того, что некоторые из них могут использоваться в любой точке мира.

Что мы можем ожидать от безупречного сервиса IP-геолокации в этом случае?

BigDataCloud часто может распознавать IP-адреса, используемые за границей. Однако, имея в виду, что существует большая вероятность того, что один и тот же IP-адрес будет одновременно выделен и в стране проживания, мы решаем игнорировать эти данные и вместо этого сообщать о местонахождении пользователя в стране проживания.

VPN, TOR, PROXY и другие анонимайзеры

Мы часто видим, как интернет-пользователи принимают крайние меры, чтобы замаскировать свои настоящие IP-адреса. Существуют миллионы сервисов, помогающих им спрятаться. Обычно эти услуги предлагаются как более безопасный вариант для серфинга в Интернете, что, мягко говоря, весьма сомнительно.

В любом случае, независимо от их мотивов, мы должны уважать их выбор и иметь в виду что в этом случае мы можем располагать только IP-геолокацией VPN шлюза, а не реального конечного пользователя

Выводы

IP-геолокация категорически не подходит для отслеживания точного географического местоположения человека или устройства. 

Однако в большинстве случаев она, несомненно, может дать важную информацию о географической области, в которой используется IP-адрес.

Различная вспомогательная информация, такая как зона достоверности, тип сети и факторы риска, может сделать геолокацию IP на основе бизнес-решений очень надежной и заслуживающей доверия.

Tags:
Hubs:
+8
Comments9

Articles

Change theme settings