Как Google вычисляет мое местоположение на рабочем столе?

108

Правильно, это меня немного сбивает с толку, я не уверен, заметил ли кто-нибудь из вас или использовал функцию «мое местоположение» на картах Google с помощью своего рабочего стола (или без мобильного устройства GPS / none). Если у вас есть браузер с Google Gears (проще всего использовать Google Chrome), тогда у вас будет синий кружок над функцией масштабирования в Google Maps, при нажатии (без входа в мою учетную запись Google) с использованием стандартного Wi-Fi для моей личной маршрутизатор и нормальное интернет-соединение с моим интернет-провайдером, ему каким-то образом удается определить мое точное местоположение со 100% точностью (на данный момент).

Как это сделать? они кратко упоминают об этом здесь, но это не совсем объясняет это, в нем говорится, что мой браузер знает, где я ...

... я сбит с толку, как?

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

Шади Альмосри
источник
1
«дубликат» моего вопроса суперпользователя superuser.com/questions/12495/how-does-google-my-location-work
Стефано Борини
Они находят точное местоположение моего дома. Это замечательно.
Бен Шелок
1
@ badbod99 - я уверен, что они могут найти это и другими способами: P @Stefano - у вас все еще нет ответа, и я думаю, что это связано с программированием, поэтому stackoverflow @ben - точно!
Шади Альмосри

Ответы:

91

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

Что ж, секрет в том, что теперь я подключен через беспроводную сеть, и мой беспроводной маршрутизатор был идентифицирован (благодаря связи с другими Wi-Fi вокруг меня в то время) в очень точном районе в Швейцарии. Теперь мой Wi-Fi переехал в Токио, но запрашиваемая система по-прежнему считает, что маршрутизатор Wi-Fi находится в Швейцарии, потому что либо у нее нет информации о дополнительных Wi-Fi, окружающих меня прямо сейчас, либо она не может отсортировать противоречивую информацию (а именно конкретную информацию о моем маршрутизаторе Wi-Fi против моего геолокации ip, который указывает мне на дальний восток).

Итак, чтобы ответить на ваш вопрос, Google или кто-то вместо него сделал "вардрайвинг" вокруг, отображая присутствие Wi-Fi. Каждый раз, когда к системе выполняется запрос (вероятно, в соответствии с проектом W3C для API геолокации ), ваш компьютер отправляет идентификаторы Wi-Fi, которые он видит, а система выполняет две вещи:

  1. запрашивает свою базу данных, если геолокация существует для некоторых из переданных вами wifis, и возвращает "защищенную" позицию, если она найдена, в конечном итоге с триангуляцией, если присутствуют интенсивности. Чем больше сетей Wi-Fi, тем выше точность определения местоположения.
  2. добавляет в свою базу данных дополнительные сети, которых нет в базе данных, чтобы их можно было использовать повторно.

Как видите, система выстраивается сама по себе. Единственное, что вам нужно, это хороший посев. После этого он расширяется «кусками по 50 метров» (радиус действия только что обнаруженного Wi-Fi-соединения).

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

Стефано Борини
источник
Вы разместили правку в своем сообщении, когда я писал свой ответ :)
Шади Альмосри
Кажется, он с большой точностью знает, где я нахожусь в моем доме, хотя у меня нет ключей / карт беспроводной связи, подключенных к моей системе.
Генри
2
Вроде все хорошо. Но на моем рабочем столе нет беспроводной связи? Однако когда я захожу в карты Google. Он точно знает, где я. И если я пойду и попробую отследить свой IP-адрес или использовать расположение браузеров, это далеко от того места, где карты Google говорят, что я нахожусь? Как это работает?
Zapnologica
8
@Zapnologica Это действительно хороший вопрос: «Как карты Google могут узнать мое местоположение с моего рабочего стола без установленной беспроводной сетевой карты?». Проверяя это самостоятельно, я вижу, что он знает мою позицию только тогда, когда я вхожу в свою учетную запись Google. Когда я использую другой браузер, в который не вошел в мою учетную запись Google, мое местоположение будет в ближайшем большом городе (геолокация IP). Я считаю, что Google использует мой Android-смартфон, чтобы делиться моим реальным местоположением с картами Google на рабочем столе.
Ким К.
Отличное объяснение!
Рамашиш Баранвал
11

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

Я доказал это, установив RDP на свой компьютер с Windows дома с работы и удаленно проверяя карты Google. Он показывает мое местоположение так же, как Chrome в Linux на работе.

Если у вас нет мобильного телефона, на котором выполнен вход в Google, все, что они могут сделать, это искать данные GeoIP по IP-адресу, назначенному вашим интернет-провайдером. Как правило, это будет совершенно неточно.

Брюс
источник
2
Спасибо, что поделились с нами своим тестом. это была дыра нового уровня ответа.
M at
ЭТО ПОЛНАЯ БЕЗУМНОСТЬ !! GPS на моем телефоне все время отключен. Не подключен к Wi-Fi. Как они могут узнать точное местоположение моего телефона? Не могу. Итак, ваша гипотеза неверна. Подключитесь к VPN, а затем зайдите в Google и посмотрите, вы не двигались, но покажете другое местоположение. Я думаю, что интернет-провайдеры передают данные об адресе клиента и его IP в Google. ТАК как всегда клиенты продаются.
Tommix 02
Томмикс: Я думаю, ты слишком много смотрел CSI. Данные GeoIP недостаточно детализированы. В лучшем случае это точность на уровне страны или штата. Например, широко используемая база данных MaxMind GeoIP2 City правильно разрешает 58% IP-адресов в точном городе (помните город, а не улицу или номер дома) в США. В радиусе 50 км это улучшается до 87%.
Брюс
10

Они используют комбинацию IP-геолокации, а также сравнивают результаты сканирования близлежащих беспроводных сетей с базой данных на своей стороне (которая создается путем сбора координат GPS вместе с данными сканирования Wi-Fi, когда пользователи телефонов Android используют свой GPS)

бдонлан
источник
Хорошо, давайте предположим, что они получили мой IP-адрес в Лондоне, я действительно не понимаю, что такое следующая часть? Как они сканируют, какая беспроводная связь находится рядом со мной, как они узнают, где находится «рядом со мной»? Мой WiFi-роутер принадлежит мне и никому не разрешает доступ, поэтому они не могут знать об этом или использовать его.
Шади Альмосри
1
см. мой комментарий ниже: они запускают клиентский код (в Chrome и т. д.), поэтому Google не получает доступ к вашему маршрутизатору, но клиентский браузер может получить доступ к вашей беспроводной карте и определить, какие беспроводные сети находятся поблизости.
pxb 03
Итак, как Google знает, что такое SSID Wi-Fi, где? У меня есть SSID "suckMyBalls", откуда они узнают местонахождение SuckMyBalls? Если на основе других SSID WIFI - как они узнали свое местоположение? Ответ прост - интернет-провайдер продает Google IP и данные о местоположении клиента.
Tommix 02
7

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

Это «кажется» примерно таким:

  1. Компания skyhookwireless.com [или аналогичная] нанесла на карту расположение многих точек беспроводного доступа, я предполагаю, что аналогичным образом Google Streetview обошел и подобрал все фотографии.
  2. Используя шестерни Google и мой браузер, мы можем сообщить, какие беспроводные сети я вижу и которые есть вокруг меня.
  3. Сравните эти беспроводные точки с их геолокацией и триангулируйте мое местоположение.

Ссылка: Slashdot

Шади Альмосри
источник
Нет, эта теория НЕПРАВИЛЬНА. Никто ничего не отображает. Интернет-провайдер продает ваш ip и адрес в Google.
Tommix 02
2

Согласно собственной справке Google Maps:
Если ваш браузер не может отображать изображения, приобретите новый!

bit2shift
источник
1

Отказ от идеи сетей Wi-Fi!

Извините, ребята ... Я этого не вижу. Использование сетей Wi-Fi рядом с вами кажется очень неточным и неэффективным методом сбора данных. В наши дни сети Wi-Fi просто не остаются надолго на одном месте.

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

Я думаю, что идея о том, что пользователи iPhone "сканируют и отправляют" данные опроса WiFi обратно в Google, и вардрайвинг, возможно, в сочетании с картированием "Street View" Google Maps, может показаться очень возможным методом сбора этих данных, однако, На практике это не работает как бизнес-модель.

Да, кстати, я забыл упомянуть в своем предыдущем посте ... когда я изначально вытащил свое местоположение, время, когда я был «точно» определен на карте, я подключался к маршрутизатору со своего рабочего стола через соединение Ethernet. У меня на рабочем столе нет карты WiFi.

Так что, если бы теория о "близлежащих сетях Wi-Fi" была верна ... тогда я не смог бы определить свое местоположение с такой точностью.

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

ct07
источник
1
coderrr.wordpress.com/2008/09/10/… вы были подключены через Ethernet, но это был беспроводной маршрутизатор?
Шади Альмосри
Независимо от того, работает ли сбор данных о местоположении в качестве бизнес-модели, Google делает это - googleblog.blogspot.com/2009/08/…
Дэн Даскалеску
1
  • Таким образом, Google ведет учет местоположения маршрутизатора Wi-Fi, используя GPS любого мобильного телефона, подключенного к этому маршрутизатору, когда вы используете карты Google или местоположение на мобильном телефоне. тогда Google знает, что каждое устройство, подключенное к этому маршрутизатору Wi-Fi, использует одно и то же местоположение.
  • когда GPS выключен или мобильный телефон не подключен к маршрутизатору, Google использует геолокацию по IP
Раад Алтайе
источник
0

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

Обновить:

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

pxb
источник
1
Это слишком просто и недостаточно точно. Вы можете сопоставить это с ближайшей биржей по максимуму, а не с моей точной точкой.
Шади Альмосри
да, иногда это совсем не так. Мы показываем, как в Глазго, хотя мы находимся в сотнях миль от Лондона.
pxb 03
По поводу обновления - как он узнает, какие точки доступа WiFi находятся вокруг меня? : P
Шади Алмосри
1
Цитата взята из предоставленной вами ссылки. Я предполагаю, что браузер (и это должен быть поддерживаемый браузер, поэтому для этого определенно есть код конкретного клиента) может получать информацию из ОС о точках доступа Wi-Fi, которые может видеть ваш компьютер (даже если он не подключен к их) и используйте сервер для поиска информации о них, чтобы определить их местонахождение. Тогда вы, может быть, сможете выполнить триангуляцию, чтобы вычислить местоположение компьютера?
pxb 03
IP назначается интернет-провайдеру. так что НИКТО не может знать точный IP и местоположение. КРОМЕ ISP. Интернет-провайдер продает ваши личные данные Google и т. Д.
Tommix
0

Возможно получить приблизительное местонахождение на основе вашего IP-адреса (беспроводного или фиксированного).

См., Например, hostip.info или maxmind, которые в основном обеспечивают сопоставление IP-адреса с географическими координатами. Вероятно, они используют много видов эвристики и источников данных. У такой системы, вероятно, достаточно точности, чтобы в большинстве случаев поместить вас в нужный крупный город.

Google, вероятно, использует несколько похожий подход в дополнение к уловкам с WiFi.

Юха Сюрьяля
источник
1
IP-местоположение было известно некоторое время, и его довольно легко определить на уровне города, это точность местоположения, которая интересовала этот вопрос ...
Шади Альмосри