Wi-Fi радар для сбора MAC-адресов
Сегодня для отслеживания и анализа целевой аудитории, интернет-маркетологи используют не только данные из счетчиков посетителей, но и более продвинутые методы, например сбор MAC-адресов при помощи Wi-Fi сенсора.
Такое устройство можно разместить в кафе, гостинице, кинотеатре, чтобы собрать информацию о посетителях. Статистика показывает, что более 50% пользователей не отключают функцию Wi-Fi на своих смартфонах, что позволяет их отслеживать в режиме реального времени.
Зачем компании собирают MAC-адреса своих клиентов?
Сбор MAC-адресов мобильных устройств активно используется в маркетинге для формирования портрета клиента. Маркетолог выгружает список MAC-адресов в сервис Яндекс.Аудитории, и тем самым, создает сегмент обезличенных пользователей.
После добавления собранных MAC-адресов, сервис подбирает всю известную информацию о владельце устройства (интересы, геолокации, поведение) и формирует список анонимных ID для настройки рекламных кампаний в агрегаторах Яндекса (Директ, Дисплей). В дальнейшем этот сегмент используется для таргетирования рекламных предложений.
Мониторинг MAC-адресов в беспроводных сетях может быть незаконным, особенно в сетях, которыми вы не владеете. Пожалуйста, ознакомьтесь с законами вашей страны. Материал опубликован в ознакомительных целях.
Запуск Wi-Fi радара
Скрипт, который будет работать на базе нашего сенсора, вычисляет количество людей поблизости, используя смартфоны в качестве прокси. Телефоны находящиеся в зоне покрытия определяются на основе фрейм-запросов, так называемых probe request.
Возможное использование howmanypeoplearearound включает в себя: мониторинг окружения и пешеходного движения, сбор MAC-адресов. Вероятно, он был разработан для использования на миниатюрных устройствах, например Raspberry Pi etc.
Подготовка рабочей среды
Для запуска скрипта нам потребуется:
Любая антенна с поддержкой Monitor Mode (режима мониторинга):
Установка Python 3
sudo apt-get install python3
Python и установщик пакетов pip, должен быть установлен на вашем компьютере. Я использую Ubuntu 18.04, в которой Python уже предустановлен и не хватает только установщика pip:
Установка pip для Python 2.7
sudo apt install python-pip
Установка pip для Python 3
sudo apt install python3-pip
Установка tshark
Если на компьютере не установлен Wireshark, выполните:
sudo add-apt-repository ppa:wireshark-dev/stable sudo apt-get update sudo apt-get install wireshark
Если установлен, выполните команду для установки tshark:
sudo apt-get install tshark
Затем обновите его для запуска без получения полномочий root:
sudo dpkg-reconfigure wireshark-common
sudo usermod -a -G wireshark $ sudo newgrp wireshark
Установка скрипта
pip install howmanypeoplearearound
В новых версиях Ubuntu при установке pip могут возникнуть проблемы, как решить проблему Unable to locate package, читайте по ссылке.
Мониторинг устройств
Подключаем антенну к компьютеру и выполняем команду:
Выбираем адаптер для сканирования, кладем рядом с собой устройство, а лучше несколько, с включенной функцией Wi-Fi:
Ожидаем окончания операции:
Скрипт определил поблизости 6 мобильных устройств. Но, где найти или как вывести MAC-адреса?
Чтобы выгрузить их, воспользуемся флагами из справки, например:
howmanypeoplearearound -o test.json -s 100
После окончания сканирования, находим в домашней директории файл test.json
Результат сбора MAC-адресов
Точность сканирования
Точность сканирования устройств зависит от того, как часто смартфон проверяет связь с сетью Wi-Fi (что происходит каждые 1–10 минут, если Wi-Fi не отключен).
Ошибки при запуске
Если не работают команды или встречается ошибка «command not found», выполните:
python3 -m pip install --upgrade --no-cache-dir howmanypeoplearearound