Как такие службы, как Google Локатор, через мой браузер, очевидно, через мое интернет-соединение (Ethernet, а не Wi-Fi), точно определяют мое местоположение, используя только мой текущий общедоступный IP-адрес? Спросив моего провайдера?
Как такие службы, как Google Локатор, через мой браузер, очевидно, через мое интернет-соединение (Ethernet, а не Wi-Fi), точно определяют мое местоположение, используя только мой текущий общедоступный IP-адрес? Спросив моего провайдера?
Ответы:
В Google Локаторе используется запатентованный сервис Google, который работает точно так же, как и более популярная система Skyhook Wireless . Программное обеспечение берет показания с вашего адаптера Wi-Fi и сравнивает их с базой данных известных беспроводных сетей и их местоположений, что позволяет выполнить триангуляцию вашего местоположения на основе уровня сигнала. Это позволяет сервису определять точное местоположение без GPS.
База данных сетей WiFi довольно обширна и поступает из нескольких источников. Во-первых, они, вероятно, импортируют из общедоступных баз данных, таких как WiGLE. Во-вторых, всякий раз, когда ноутбук, на котором запущена служба, видит новую сеть, об этом сообщается службе. Когда несколько компьютеров сообщают о новой сети, ее положение может быть триангулировано на основе положения известных компьютеров. Вести базу данных всех беспроводных сетей довольно просто, потому что все беспроводные сети (даже те, которые имеют одинаковый ESSID) имеют уникальный MAC-адрес интерфейса, назначенный производителем.
[Пожалуйста, подтвердите / примите ответ @ jcrawfordor, но я хотел добавить некоторую информацию, и ограничение на количество символов в поле комментария было слишком маленьким, поэтому я решил вместо этого использовать его в качестве ответа.]
Обратите внимание на веб-браузер Geolocation API . Возможно, вы забыли, что в первый раз, когда вы посещали Google Локатор, вы разрешили браузеру разрешить Google Локатор доступ к данным Служб определения местоположения вашего Mac. Для браузеров, которые изначально не поддерживают Geolocation API, существуют загружаемые подключаемые модули браузера или Java-апплеты, которые предоставляют такую функцию, почти всегда, запрашивая карту Wi-Fi на предмет того, какие сети она видит вокруг. Технология Skyhook «Loki» является Java-апплетом, но, поскольку ей требуется доступ к системным API-интерфейсам для запроса данных о сканировании сети на вашей Wi-Fi-карте, ваш браузер должен запросить разрешение, прежде чем запускать Loki. Обычно Java-приложения полностью изолированы и не требуют разрешения на запуск, потому что они не могут нарушить вашу конфиденциальность или получить доступ к чему-либо в вашей системе.
Вот что Safari делает при первом посещении Google Локатор:
.
Вот что делает Safari, когда вы пытаетесь загрузить апплет Loki Skyhook:
Хотя @jcrawfordor в значительной степени прибил это, и ОП, должно быть, перешло это, но только для тех, кто здесь оказался, вот что делается.
Google, Mozilla и некоторые другие имеют свои собственные базы данных Wifi Location, которые заполняются. Поставщики имеют возможность отключить это сопоставление через '_nomap' для своего имени Wi-Fi (SSID), если они заинтересованы в конфиденциальности.
Таким образом, определение местоположения является просто расширением поиска, основанного на силе сигнала. Кроме того, это частные базы данных, т.е. FB и Mozilla. Вы можете изучить общедоступную БД, такую как OpenWLANMap .
Надеюсь это поможет.
IP-адреса назначаются провайдерам в блоках. Если вы знаете, где конкретный провайдер работает, то вы можете сопоставить блок IP-адресов с общим географическим местоположением. Это не всегда идеально, хотя. Например, большинство баз данных GeoIP считают, что я нахожусь примерно в 60 милях от того места, где я на самом деле.
Они также могут оценить ваше расстояние от своего сервера, посмотрев, сколько « прыжков » существует между вашим компьютером и их сервером, а также посмотрев, где находятся прыжки.
Использование вашего IP-адреса в сочетании с данными прыжков и другими источниками данных (например, язык вашей системы и часовой пояс) может еще больше сузить ваше местоположение.
Итак, если IP-адрес человека был 220.123.321.234, его часовой пояс был GMT + 9, а его компьютер был настроен на корейский язык, то вы можете быть уверены, что он находится в Сеуле, Южная Корея .