IP geolocation: как определить местоположение по IP-адресу — инструкция для новичка
IP geolocation показывает страну, регион и город, к которым база данных привязывает адрес. Из статьи вы узнаете, как проверить это за 2–5 минут через браузер и командную строку, насколько точен результат и что делать, если город определился неверно. Похожие материалы про адреса и серверы собраны в нашем блоге.

Коротко
- Геолокация по IP опирается на базы данных, а не на GPS: адрес сопоставляется со страной, регионом и городом
- Страну обычно определяют верно, город — приблизительно, а точный дом или квартиру по IP узнать нельзя
- Проверка занимает 2–5 минут: whois (порт 43), локальная база GeoLite2-City.mmdb и сверка с несколькими сервисами
- IPv4-адрес состоит из 32 бит, IPv6 — из 128 бит; диапазоны распределяют 5 региональных регистраторов (RIR)
- Внутренние адреса вроде 192.168.1.1 не имеют геолокации — проверять нужно внешний IP
- Для сайта важнее локация сервера: чем ближе дата-центр к посетителям, тем ниже пинг, обычно в пределах 10–50 мс по стране
Что такое IP geolocation и что она показывает
IP geolocation — это сопоставление IP-адреса (Internet Protocol, числового адреса устройства в сети) со страной, регионом, городом и провайдером по данным баз. IPv4-адрес занимает 32 бита, например 8.8.8.8, IPv6 — 128 бит. Принцип подробнее разобран в материале про геолокацию по IP.
Для 8.8.8.8 база покажет США и провайдера Google. Владельца диапазона подтвердит команда whois. Адресное пространство распределяют 5 региональных регистраторов (RIR, Regional Internet Registry): RIPE NCC, ARIN, APNIC, LACNIC и AFRINIC.
Результат ограничен. Геолокация не показывает точный адрес, имя человека и GPS-координаты: страну она обычно определяет верно, а город приблизительно. Внутренние диапазоны 10.0.0.0/8, 172.16.0.0/12 и 192.168.0.0/16 геолокации не имеют, поэтому проверяйте внешний IP. Если нужен быстрый ответ, узнайте расположение IP через сервис.
Такие данные нужны в четырёх задачах:
- антифрод: вход из неожиданной страны вызывает дополнительную проверку;
- региональный контент: язык, валюта и цены подстраиваются под посетителя;
- аналитика: вы видите, из каких стран и городов идёт трафик;
- выбор локации сервера: пинг внутри страны часто составляет 10–50 мс, а место по IP и происхождение адреса помогают оценить дата-центр.
Как работает определение местоположения по IP
Адресное пространство распределяют 5 региональных регистраторов (RIR): RIPE NCC, ARIN, APNIC, LACNIC и AFRINIC. Они выдают диапазоны провайдерам и хранят сведения о владельце. Эти записи отдаёт протокол WHOIS: команда whois 8.8.8.8 обращается к серверу через порт 43 и показывает страну, организацию и границы подсети. Как читать такой ответ, объясняет материал про whois.
Адрес IPv4 занимает 32 бита (например, 8.8.8.8), IPv6 — 128 бит. Базы хранят не отдельные адреса, а подсети: одна запись описывает сразу сотни или тысячи адресов. Город приблизителен, потому что диапазон принадлежит провайдеру, а не конкретному устройству. Поэтому адрес может указать на город, где стоит оборудование провайдера, а не на ваш дом.
Базы обновляются регулярно, но не мгновенно: после смены провайдера или переноса диапазона город может обновиться через дни или недели. Составители баз собирают данные из нескольких источников:
- записи RIR и WHOIS — страна и владелец диапазона;
- сведения провайдеров о том, в каких городах работают их подсети;
- измерения задержек (пинга) до адреса из разных точек сети;
- готовые данные о других адресах той же подсети.
Посмотреть, какие сведения о конкретном адресе есть в открытых источниках, можно через информацию об IP и поиск по IP. Для сайта сначала узнайте адрес домена, например через проверку DNS или команду nslookup example.com.
Как определить геолокацию по IP: пошаговая проверка
Проверка состоит из 7 шагов и занимает 2–5 минут. Вам понадобятся браузер и терминал. В примерах мы берём адрес 8.8.8.8 и домен example.com.
Сначала решите, что проверяете: свой адрес, чужой адрес или сайт. Для сайта домен нужно превратить в IP, а для своего адреса важно взять именно внешний, а не внутренний вроде 192.168.1.1: у внутренних диапазонов геолокации нет.
Пройдите шаги по порядку:
- Узнайте внешний IP: откройте любой сервис из материалов какой у меня айпи или мой IP и скопируйте адрес. Для примера дальше используем
8.8.8.8. - Для сайта выполните
nslookup example.com. В строкеAddressпосле имени сервера будет IP сайта (DNS, система доменных имён, переводит домен в адрес). - Выполните
whois 8.8.8.8. Команда обращается к протоколу WHOIS на порту 43. В ответе найдите поляcountry,netnameиorg: они показывают страну, имя сети и владельца диапазона. - Скачайте бесплатную базу GeoLite2 City, файл
GeoLite2-City.mmdb, и положите его в текущую папку. - Выполните
mmdblookup --file GeoLite2-City.mmdb --ip 8.8.8.8. В ответе ищите блокиcountry,cityиlocation. - Сверьте страну и город с одним веб-сервисом, например из подборки проверка IP-адреса.
- Запишите результат: IP, страну, город,
netnameи дату проверки.
Теперь сравните ответы. Страна в whois, в локальной базе и в сервисе обычно совпадает. Если не совпадает, перепроверьте адрес и обновите базу. Город может отличаться: он определяется приблизительно, а погрешность зависит от провайдера и бывает от очень малой до сотен километров. Это нормально. Подробнее о том, как узнать место по адресу, читайте в статье где я нахожусь по IP, а другие способы посмотреть адрес собраны в материале посмотреть IP.

Насколько точна геолокация по IP и от чего это зависит
Точность зависит от уровня детализации. Страну база определяет обычно верно, регион — чаще верно, чем неверно, город — приблизительно. Адрес дома или квартиры по IP узнать нельзя: базы такого не хранят.
Радиус погрешности для города зависит от провайдера: от очень малого до сотен километров. Поэтому расхождение двух сервисов в городе — нормальная ситуация, а расхождение в стране — повод проверить базу. Свой адрес быстро покажет проверка текущего IP.
На результат влияют четыре фактора:
- Тип провайдера: у крупного оператора адреса часто привязаны к узлу в центре региона, а не к вашему району.
- Мобильная сеть: адрес принадлежит оператору и может указывать на город, где стоит шлюз, а не абонент.
- Смена владельца диапазона: после переноса база может ещё какое-то время показывать старого владельца и старый город.
- Возраст базы: обновления идут регулярно, но не мгновенно, поэтому город может измениться через дни или недели.
Чтобы оценить погрешность, прогоните один адрес, например 8.8.8.8, через два-три сервиса из обзора IP-чекеров и сверьте страну, затем регион. При локальной проверке посмотрите дату файла GeoLite2-City.mmdb: чем он старше, тем выше риск устаревшего города.
Типичные ошибки при определении местоположения по IP
Геолокация по IP опирается на базы данных, а не на GPS. Поэтому большинство «неверных» результатов появляется из-за неверных ожиданий, а не из-за поломки сервиса.
Даже короткая проверка на 2–5 минут может дать ложный результат, если пропустить пару мелочей. Вот пять ошибок, которых стоит избежать:
- город принят за точный адрес;
- проверен внутренний IP 192.168.x.x;
- использована устаревшая база;
- ждут полного совпадения разных сервисов;
- путают расположение пользователя и провайдера.
Город принят за точный адрес
Город в результате показывает лишь приблизительную точку, а не дом или квартиру. Погрешность зависит от провайдера и бывает от очень малой до сотен километров. Опирайтесь на страну и регион, а город считайте ориентиром.
Проверен внутренний IP 192.168.x.x
Диапазоны 10.0.0.0/8, 172.16.0.0/12 и 192.168.0.0/16 геолокации не имеют. Узнайте внешний адрес и проверьте его, например через проверку IP сервера. Для пробы подойдёт публичный 8.8.8.8.
Использована устаревшая база
Базы обновляются регулярно, но не мгновенно. После смены провайдера или переноса диапазона город может обновиться через дни или недели. Скачайте свежий файл GeoLite2-City.mmdb и повторите запрос через mmdblookup.
Ждут полного совпадения разных сервисов
У каждого сервиса своя база, поэтому города могут различаться, и это нормально. Расхождение в стране уже повод проверить данные: выполните whois (порт 43) и сверьте регистратора диапазона. Для общей сверки пригодится тест IP-адреса.
Путают расположение пользователя и провайдера
Часто база показывает офис или узел провайдера, а не место, где человек сидит за компьютером. То же с сайтом: адрес из nslookup example.com указывает на сервер, а не на владельца. Сначала узнайте адрес через проверку DNS, затем убедитесь, что сервер отвечает.
Если держать в голове эти пять ловушек, результат проверки станет понятным: страна надёжна, город приблизителен, а расхождения между сервисами не повод для тревоги.
Чем определить геолокацию: сервис, whois или локальная база
Для проверки IP-адреса подходят четыре способа, и отвечают они на разные вопросы. Веб-сервис быстро покажет страну и город, whois назовёт владельца диапазона, локальная база выдаст те же данные без интернета, а traceroute подскажет город по названиям узлов маршрута.
Все примеры ниже выполняйте на адресе 8.8.8.8. Свой внешний адрес сначала узнайте на странице проверки IP, внутренние адреса вроде 192.168.1.1 геолокации не имеют. Сравнение способов:
| Способ | Где выполнить | Что покажет | Время проверки | Ограничения |
|---|---|---|---|---|
| Веб-сервис | Браузер | Страна, регион, город, провайдер | 10–30 секунд | Город приблизительный, у разных сервисов он может отличаться |
whois |
Терминал: whois 8.8.8.8, порт 43 |
Владелец диапазона, страна регистрации, регистратор RIR | Около 10 секунд | Страна регистрации не всегда совпадает с местом, где стоит сервер |
mmdblookup |
Терминал: mmdblookup --file GeoLite2-City.mmdb --ip 8.8.8.8 |
Страна, город, координаты | 1–2 минуты после скачивания базы | Файл GeoLite2-City.mmdb нужно обновлять вручную |
traceroute / tracert |
Терминал: traceroute 8.8.8.8, в Windows tracert 8.8.8.8 |
Намёки на город в именах узлов | 30–60 секунд | Имена есть не у всех узлов, вывод косвенный |
Для быстрой проверки берите веб-сервис, для спорных случаев сверяйте его ответ с whois. Локальную базу выбирайте, когда адресов много или нужна работа без сети. traceroute пригодится, если два сервиса назвали разные страны. Для домена сначала получите адрес через nslookup example.com или откройте информацию о сайте по адресу.
Геолокация сервера и сайта: как выбрать локацию VPS
Посетители и поисковые системы видят не ваш офис, а IP-адрес сервера. По нему базы геолокации определяют страну и город сайта, а расстояние до дата-центра задаёт пинг — время ответа сервера. Внутри страны он часто составляет 10–50 мс, а до площадки на другом континенте заметно выше. Если вы ещё не знаете, как устроен такой сервер, прочитайте, что такое VDS-сервер.
Локацию арендованного VPS (virtual private server, виртуальный сервер) проверяют теми же командами, что и любой адрес. Выполните nslookup example.com, возьмите IP из ответа и запустите whois с этим адресом. Затем сверьте результат через mmdblookup и базу GeoLite2-City.mmdb. Если страна не совпала с указанной в тарифе, напишите в поддержку хостинга; расхождение в городе — нормальная ситуация.
Перед заказом оцените:
- аудиторию: для посетителей из одной страны обычно берут дата-центр в этой стране;
- пинг: чем ближе площадка к посетителям, тем он ниже, а быстрый VDS даёт запас по скорости;
- требования к размещению данных: для некоторых проектов закон обязывает хранить данные в определённой стране;
- сетевые параметры: как связаны IP-адрес и порт.
Затем можно подобрать VPS с нужной локацией. Учтите: после смены провайдера или переноса диапазона база обновит город через дни или недели.

Для кого IP geolocation не подходит
IP geolocation опирается на базы данных, а не на GPS (Global Positioning System, спутниковая навигация). Страну она обычно определяет верно, город приблизительно, а конкретного человека, дом или квартиру по IP узнать нельзя. Погрешность по городу зависит от провайдера и составляет от единиц до сотен километров.
Если вам нужна точность выше города, берите данные у самого пользователя: GPS на телефоне или запрос геопозиции в браузере с его согласия. Для доставки или курьерской службы надёжнее спросить адрес в форме заказа.
Проверять домен и его владельца по IP тоже неудобно. Для этого лучше команда whois (порт 43) и возраст домена, о котором подробно написано в статье как узнать возраст домена. Если вы разбираете сам адрес и его формат, пригодится материал про IP и работу с адресами.
Подходящие альтернативы для разных задач:
- точное положение посетителя: геопозиция браузера с согласием пользователя;
- доставка и оплата: адрес, который человек вводит сам;
- владелец диапазона:
whois 8.8.8.8; - владелец и срок жизни домена: WHOIS и возраст домена;
- внутренние адреса вроде
192.168.1.1: геолокации нет, проверяйте внешний IP.
Если вы хотите применить геолокацию с пользой, выбирайте её для сайта, а не для поиска людей: чем ближе дата-центр к аудитории, тем ниже пинг, обычно 10–50 мс по стране. Подобрать подходящую локацию поможет страница, где можно подобрать VPS под вашу аудиторию.
Частые вопросы
Что такое IP geolocation простыми словами?
Можно ли по IP узнать точный адрес человека?
Почему сервис показывает не мой город?
Насколько точно определяется страна по IP?
Как узнать геолокацию по IP через командную строку?
Как узнать, где находится сайт?
Почему разные сервисы дают разные результаты?
Как часто обновляются базы геолокации?
Можно ли определить геолокацию внутреннего IP вроде 192.168.1.1?
Влияет ли расположение сервера на сайт?
Проверьте себя
- Вы проверяете внешний IP, а не внутренний адрес из диапазона 192.168.x.x
- Страна совпадает минимум в двух источниках
- К городу относитесь как к приблизительному значению, а не к точному адресу
- Для сайта сначала получили IP через `nslookup`, затем проверили его
- Сверили данные whois: поля country, netname и org
- Локацию сервера выбрали по основной аудитории проекта
На сайте есть партнёрские ссылки: если вы оформите заказ по ним, мы получим вознаграждение от провайдера. Это не влияет на цену для вас и на место в рейтинге.