IP до країни, міста та провайдера за частку цента на запит

Кожен пристрій, підключений до Інтернету, має IP-адресу, і ця адреса містить набагато більше інформації, ніж уявляє більшість людей. Це не просто технічний ідентифікатор для маршрутизації мережевих пакетів. Це географічний маркер, організаційний відбиток пальця та сигнал поведінки, який при правильному розшифруванні дає відповіді на фундаментальні питання про те, хто відвідує вебсайт, де він знаходиться та як він підключений. Процес визначення IP-адреси її географічними та організаційними метаданими називається пошуком GeoIP, і це одна з тих невидимих технологій, які живлять величезну частину функціональності Інтернету без відома більшості користувачів. Коли вебсайт відображає ціни в місцевій валюті, GeoIP робить цю роботу. Коли служба потокового передавання обмежує контент за регіонами, GeoIP робить визначення. Коли система виявлення шахрайства позначає транзакцію, оскільки адреса платежу вказує Лондон, але IP-адреса вказує Лагос, GeoIP надає докази.

Сама технологія хорошо встановлена. Декілька компаній ведуть бази даних GeoIP, які відображають діапазони IP-адрес на географічні місцезнаходження, і ці бази даних регулярно оновлюються у міру зміни розподілу IP та призначення нових діапазонів. Те, що не було добре встановлено до недавнього часу, — це доступне отримання доступу до цих баз даних розробниками та компаніями, які потребують можливостей GeoIP, але не можуть виправдати моделі цін основних постачальників. MaxMind, домінуючий гравець на ринку GeoIP, стягує плату за ліцензії бази даних або доступ за запитами за ставками, які розумні для корпоративних клієнтів, які обробляють мільйони пошуків щодня, але непропорційно дорогі для менших додатків, яким потрібно кілька тисяч пошуків на місяць. GeoIP API на YEB пропонують ті самі три рівні географічної роздільної здатності (країна, місто та AS) за ціною за запит, що робить навіть малообсяги випадки використання економічно життєспроможними.

Ці три рівні існують, оскільки різні випадки використання вимагають різних рівнів деталізації. Система локалізації контенту, яка повинна відображати правильну мову та валюту для відвідувача, потребує лише даних на рівні країни. Калькулятор доставки, який повинен оцінити витрати на доставку на основі регіону відвідувача, потребує даних на рівні міста. Система безпеки, яка повинна перевірити, чи належить IP-адреса постачальнику хостингу, резидентному ISP або корпоративній мережі, потребує даних AS (номер автономної системи). Пропозиція всіх трьох рівнів окремо означає, що додатки платять лише за рівень деталізації, який вони насправді використовують, а не платять за точність міста, коли достатньо було б рівня країни.

Пошук на рівні країни та програми, які він забезпечує

GeoIP API на рівні країни є найчастіше використовуваним рівнем і найбільш доступним за запит. Надавши IP-адресу, він повертає код країни (ISO 3166-1 alpha-2), назву країни та континент. Це мінімум життєздатної географічної інформації, необхідної для дивовижно великої кількості програм. Локалізація контенту є найбільш очевидною: визначення країни відвідувача та розповсюдження відповідної мови, валюти та юридичних застережень. Вебсайт, який працює в дванадцяти країнах, повинен показувати правильний підвал політики конфіденційності, правильне повідомлення про ПДВ та правильну контактну інформацію на основі місця розташування відвідувача. Це робити за допомогою клієнтського JavaScript (запитування браузеру про місцезнаходження користувача) є навмисне, вимагає явного дозволу та не працює, коли користувач відмовляється. Це робити за допомогою GeoIP є невидимо, миттєво та працює на кожному запиті без взаємодії користувача.

Дотримання нормативних вимог — це ще один великий сценарій використання, який працює виключно на рівні країни. GDPR застосовується до відвідувачів з держав-членів ЄС. CCPA застосовується до відвідувачів з Каліфорнії (яку можна визначити за допомогою даних на рівні міста, але рівня країни достатньо для визначення відвідувачів США, які можуть підпадати під CCPA). Обмеження контенту можуть застосовуватися до конкретних країн через ліцензійні угоди, санкції або місцеві закони. Платформи електронної комерції можуть потребувати заборони продажу певним країнам через контроль експорту. Усі ці рішення вимагають лише країни, а GeoIP API країни надає їх за частку того, що коштує місячна передплата на повну послугу геолокації.

Платформи аналітики використовують GeoIP на рівні країни для створення географічних звітів про трафік. Плагін аналітики WordPress, описаний у статті-партнері, використовує цей точний API для визначення IP-адреси кожного відвідувача до країни, яка заповнює таблицю розбору по країнах на приладній панелі. Для вебсайту, який отримує 10 000 відвідувань на день, це 10 000 пошуків GeoIP на день, і за ціною за запит, загальна денна вартість вимірюється в центах, а не в доларах. За місячною передплатою від традиційних постачальників GeoIP той самий обсяг коштував би від 20 до 50 доларів на місяць залежно від рівня плану. На протязі року різниця між ціною за запит та передплатою за цей обсяг досить суттєва, щоб мати значення для будь-якої компанії, яка стежить за своїми операційними витратами.

Пошук на рівні міста та випадки, коли точність має значення

GeoIP API на рівні міста повертає все, що надає API країни, плюс назву міста, регіон або штат, поштовий індекс, широту та довготу. Цей додатковий рівень деталізації дозволяє випадки використання, які дані на рівні країни не можуть підтримувати. Каталоги місцевих бізнесів, які потребують показувати результати, релевантні для міста відвідувача, залежать від геолокалізації на рівні міста. Вибір погоди, який показує місцеві умови, повинен знати місто, а не лише країну. Платформи нерухомості, які показують поблизу розташовані оголошення, програми відкриття ресторанів, які проявляють місцеві рекомендації, та новинні сайти, які представляють регіональні історії, все це вимагає розділення на рівні міста, щоб функціонувати правильно.

Точність пошуку GeoIP на рівні міста гідна чесної дискусії, оскільки це один з найбільш невірно зрозумілих аспектів технології. Геолокалізація на рівні міста з IP-адрес не є точністю рівня GPS. Вона не визначає конкретну будівлю або адресу вулиці. Вона визначає місто або мегаполіс, пов'язаний з діапазоном IP-адрес, що зазвичай є місцем розташування точки присутності ISP, а не точне місцезнаходження кінцевого користувача. У щільно населених міських районах це зазвичай точне для правильного міста. У сільських районах, обслуговуваних регіональними ISP, визначене місто може бути найближчим великим містом, де ISP має інфраструктуру, що може бути на п'ятдесят або сто кілометрів від фактичного місцезнаходження користувача. Для переважної більшості варіантів використання (персоналізація контенту, приблизні кошторис доставки, регіональна аналітика) цей рівень точності є більш ніж достатнім. Для варіантів використання, які вимагають точного місцезнаходження (навігація, службів екстреної допомоги, гіперлокальної реклами), GPS залишається відповідною технологією.

Системи виявлення шахрайства використовують GeoIP на рівні міста як один сигнал серед багатьох. Коли транзакція кредитної карти походить з IP-адреси в Манілі, але адреса платежу карти у Стокгольмі, географічна невідповідність не обов'язково вказує на шахрайство (власник карти може подорожувати), але це достатньо сильний сигнал для запуску додаткової перевірки. Дані на рівні міста надають специфічність, необхідну для того, щоб цей порівняння був значущим. Дані на рівні країни позначили б будь-яку транзакцію, де країна IP відрізняється від країни платежу, що занадто широко для глобальних мандрівників. Дані на рівні міста дозволяють системі розглянути більш тонкі сценарії: IP у тій же країні, але у іншому місті від адреси платежу може вказувати на переміщеного власника карти, а не на крадену карту, тоді як IP на іншому континенті є набагато більш сильним сигналом шахрайства.

Пошук AS та розуміння того, хто володіє мережею

AS (Autonomous System Number) API додає зовсім іншу розмірність до інтелекту IP. Замість того, щоб відповідати "де ця IP?", він відповідає "хто працює мережею, до якої належить ця IP?" Автономна система — це набір діапазонів IP-адрес, якими керує одна організація, а база даних AS відображає кожну IP-адресу на її організацію, яка працює, включаючи назву організації, номер AS та тип мережі (ISP, постачальник хостингу, корпоративна, навчальна установа, уряд). Ця інформація є безцінною для варіантів використання, де географічне місцезнаходження має менше значення, ніж ідентичність мережі.

Виявлення ботів — це найбільш негайно практичне застосування даних AS. Легітимні краулери поисковых систем працюють з діапазонів IP, які належать їх материнським компаніям: краулер Google походить з ASN Google, краулер Bing походить з ASN Microsoft. Запит, який стверджує, що це Googlebot, але походить з IP-адреси в ASN резидентного ISP, є майже напевно підробленим ботом. Плагін аналітики WordPress використовує цю точну техніку, перехресно посилаючись на назву користувача заявленої ідентичності з власністю AS IP-адреси джерела, щоб розділити перевірених краулерів від самозванців. Ця перевірка неможлива тільки з географічними даними, тому що Google має центри обробки даних у багатьох країнах, тому географічна перевірка не може розрізнити між реальним Googlebot з центру обробки даних США та підробленим з резидентного з'єднання США.

Системи цільового маркетингу та запобігання шахрайству використовують дані AS для розрізнення між трафіком з резидентних мереж (реальні користувачі), постачальників хостингу (потенційні боти або проксі) та корпоративних мереж (потенційні B2B свинці). Клік на платну рекламу, яка походить з IP-адреси діапазону постачальника хостингу, набагато більш вірогідно шахрайська (клік-боти, шахрайство клідів конкурентів), ніж клік з резидентного ISP. Фільтрування цих кліків перед їх рахуванням (та виставленням рахунку) може заощадити рекламодавцям значні гроші. Аналогічно, платформи маркетингу B2B використовують дані AS для визначення того, коли відвідувачі походять з корпоративних мереж, оскільки назва організації AS часто розкриває компанію, дозволяючи маркетингу на основі облікових записів без необхідності відвідувача ідентифікувати себе.

Ціна за запит та чому вона змінює математику

Економіка послуг GeoIP історично слідувала моделі передплати, яка домінує в industria SaaS. Місячні плани з рівнями запитів, які можуть бути перевищені, вичислення переповнення за ці межі та річні контракти, які блокують ціну незалежно від фактичного використання. Для додатків з передбачуваними потребами GeoIP високого обсягу ці плани часто розумні. Для додатків зі змінними або малообсяговими потребами вони являють собою фіксовані витрати, які не мають відношення до цінності, яку вони отримують.

Розглянемо сезонний магазин електронної комерції, який робить 80% свого річного трафіку в період шести тижнів свято. За передплатою магазин платить ту ж місячну плату протягом десяти тихих місяців, як він робить протягом двох пікових місяців. За ціною за запит тихі місяці коштують майже нічого, тоді як пікові місяці коштують пропорційно до фактичного оброблюваного трафіку. За рік загальна вартість за ціною за запит зазвичай на 40% до 60% нижче, ніж еквівалентний план передплати, і заощадження навіть більш драматичні для додатків, які мають непередбачувані схеми трафіку.

Модель за запитом також виключає накладні витрати планування, які надходять з рівневих планів передплати. Вибір між планом, який дозволяє 10 000 пошуків на місяць, та одним, який дозволяє 100 000 пошуків на місяць, вимагає прогнозування майбутніх обсягів трафіку, що є по своїй природі невизначеним. Виберіть занадто низько, і застосовуються вичисління переповнення. Виберіть занадто високо, а невикористана ємність буде втрачена. Ціна за запит повністю видаляє це здогадування. Кожен пошук коштує ту саму частку цента незалежно від того, чи загальний місячний обсяг виявляється бути 500 чи 500 000. Єдина змінна — це фактичне використання, і вартість масштабується лінійно з ним.

Для розробників, які оцінюють варіанти GeoIP, практичне питання не в тому, яка база даних має найвищу точність (основні бази даних все перебувають у кількох відсотків один одного для більшості регіонів), а яка модель ціноутворення узгоджується з схемою використання програми. Додатки зі стійким, передбачуваним, високим обсягом трафіку можуть виявити, що план передплати пропонує більш яку ціну за запит завдяки знижкам на обсяг. Додатки зі змінним, непередбачуваним або малообсяговим трафіком майже завжди будуть мати дешевшу ціну за запит. GeoIP API описані тут обслуговують другу категорію, і вони роблять це без жертви якістю даних, швидкістю відповіді або діапазоном інформації, повертаються на пошук.

Часто задавані питання

Наскільки точна геолокалізація IP на рівні країни?

Точність GeoIP на рівні країни зазвичай перевищує 99% для основних ISP у більшості країн. Граничні випадки існують для діапазонів IP, які переназначені між країнами, або для постачальників супутникового Інтернету, де шлюз може бути в іншій країні, ніж користувач, але для переважної більшості пошуків визначення країни є надійним.

Чи GeoIP може визначити точну адресу вулиці IP-адреси?

Ні. GeoIP визначає до рівня міста або мегаполіса в найкращому разі. Координати, повертаються пошуками на рівні міста, представляють приблизний центр визначеного міста, а не фізичне місцезнаходження пристрою. Точність на рівні вулиці вимагає GPS або подібних технологій геолокації на основі пристрою, які передбачають явний дозвіл користувача.

Що таке AS і чому це корисно?

Номер автономної системи (AS) визначає організацію, яка працює блок IP-адрес. Знання AS розкриває, чи належить IP резидентному ISP, постачальнику хостингу, корпорації або державній мережі. Це корисно для виявлення ботів (перевірка ідентичності краулера), запобігання шахрайству (позначення трафіку з IP-адрес хостингу) та маркетингу B2B (визначення корпоративних відвідувачів).

Як часто оновлюються бази даних GeoIP?

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

Чи необхідна згода на cookie для використання GeoIP за GDPR?

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

Чи GeoIP може виявити використання VPN або проксі?

GeoIP може вказати використання VPN або проксі непрямо. Якщо IP-адреса належить відомому постачальнику VPN AS, пошук AS буде визначати організацію як послугу VPN. Аналогічно, IP-адреси з постачальників хостингу AS більш вірогідно є проксі, ніж резидентні з'єднання. Однак GeoIP сам по собі не може однозначно виявити все використання VPN, особливо коли постачальники VPN використовують резидентні IP-діапазони.