• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Датчик присутствия клиента (станции)

AlexandreVN

Member
Идея не нова, но все не было времени попробовать. Суть дела: ESP в широковещательном режиме анализирует кадры. При наличии в кадре целевого MAC адреса станции, автоматически выполняется какое - либо действие. У меня такой "детектор" надежно фиксирует наличие станции только по кадрам типа 2 (дата). Т.е. станция должна быть подключена к WIFI и вести обмен с точкой доступа. Но это уже не интересно. Вопрос в следующем: есть или возможность фиксировать наличие станции по ее MAC адресу без подключения к сети. Или сейчас реальные MACи так надежно спрятаны, что эта идея бесполезна?
 

pvvx

Активный участник сообщества
Это зачем станции вообще что-то передавать в эфир, если она не соединена с AP?
Сканирование до подключения станции к AP есть двух типов - пассивное и активное . Никто не требует включать активное сканирование ещё не подключившейся станции. Оно только мешает - сбивает транзакции другим участникам. А пассивное - это просто станция только принимает и ждет когда найдется её AP.
Так что никто и никакие реальные МАС никуда не прятал.
 

AlexandreVN

Member
Это зачем станции вообще что-то передавать в эфир, если она не соединена с AP?
Сканирование до подключения станции к AP есть двух типов - пассивное и активное . Никто не требует включать активное сканирование ещё не подключившейся станции. Оно только мешает - сбивает транзакции другим участникам. А пассивное - это просто станция только принимает и ждет когда найдется её AP.
Так что никто и никакие реальные МАС никуда не прятал.
Я не на что не претендую но вроде есть маркеры от AP и маркеры от STS ( беконы и пробы). Так вот когда STA ищет сеть, она отправляет маркеры и в этих маркерах рандомизируется (сейчас почти всегда) реальный MAC.
PS Прикол был такой: обнаружил маркеры, STA искал знакомую сеть, а имя сети "Катя из 9A соска". По маку выяснил что это телефон старшенькой. Школьники сейчас так развлекаются.
 

pvvx

Активный участник сообщества
МАКи в маркерах сейчас модно передавать не реальные, а рандомные. В этом все и загвоздка.
Десять раз - активное сканирование эфира станцией не обязательно. Она и в пассивном режиме получит список AP. Читайте хоть древние стандарты WiFi, хоть новейшие.
Активное сканирование (посылка запроса в эфир) применяется для быстрого нахождения AP, но всё равно большинство реализаций ждет цикл beacоn для пассивного приема списка окружающих AP (на каждом канале)...
Т.е. всё зависит от реализации ПО на станции - какая внутренняя галочка стоит для режима поиска AP.
В большинстве случаев станции используют совмещенный режим поиска AP - активный + пассивный. Но это не обязательно.
Тем более в запросе есть ли тут такая-то AP МАС не обязателен.
Есть ещё требование об объявлении выхода в эфир - это когда любой WiFi включается - то должен объявить об этом всем участникам...
Так что MAC от станции гарантированно за какой-то период и режим станции вы не получите во многих реальных вариантах работы сети WiFi, без всяких там озабоченностей о секретности МАС. Так сложились протоколы...
 

pvvx

Активный участник сообщества
AlexandreVN - это всё разбиралось в 2015 году, но вы только проснулись...
Для поиска ищите "Probe Request"
Было давно реализовано в web-свалке и сбор Probe Request там идет постоянно и на ходу...
Так-же - на запрос "Probe Request" AP обычно отвечает несколькими дублями ответа - обычно 4 штуки и скорость их посылки превышает все возможности сниферов на ESP8266/ESP32 - они большинство их теряют из-за узких каналов передачи в логер...
Купите проф. сканер - в зависимости от цены он не пропустит N-ое кол-во пакетиков :p
 

AlexandreVN

Member
разбиралось в 2015 году, но вы только проснулись...
ВЫ еще вспомните что было в прошлом веке. Я не знаю что там в свалке, у меня все отлично ловится и я вижу как мой Андроид 10 ищет сети из списка сохраненных. Только реальный МАК свой он не отдает. В Probe Reques МАК "левый", их я в первую очередь побывал детектировать. Реальный МАК он отдает только когда нашел AP и подключается к ней.
 

nikolz

Well-known member
ВЫ еще вспомните что было в прошлом веке. Я не знаю что там в свалке, у меня все отлично ловится и я вижу как мой Андроид 10 ищет сети из списка сохраненных. Только реальный МАК свой он не отдает. В Probe Reques МАК "левый", их я в первую очередь побывал детектировать. Реальный МАК он отдает только когда нашел AP и подключается к ней.
а в чет проблема? Смысл данной темы?
 

pvvx

Активный участник сообщества
ВЫ еще вспомните что было в прошлом веке. Я не знаю что там в свалке, у меня все отлично ловится и я вижу как мой Андроид 10 ищет сети из списка сохраненных.
Значит дерьмовый у вас аппрат с Андроид 10.
С чего он тратит батарейку просто так на лишние запросы - сбивать пакеты в эфире другим? Китайцы поставили тупой чип или тупое ПО в дрова нижнего уровня WiFi?
 

pvvx

Активный участник сообщества
А так-же вам никто (кроме ESP8266 с закрытым кодом либ) не мешает послать ответ на "Probe Request" и получить запрос на соединение с реальным MAC.
 

pvvx

Активный участник сообщества
И такая штука – отвечающая на любой "Probe Request" будет очень полезна для общества.
Иначе выходит такая ситуация: сидят люди и спокойно разговаривают. Но тут вламывается ваш аппарат с Андроид 10 и орет со всей дури на всех каналах… Что ему должны ответить люди, чтобы более он так не делал?
Видимо по этому он рожу то и прячет :)
 

AlexTVR

Member
Идея не нова, но все не было времени попробовать. Суть дела: ESP в широковещательном режиме анализирует кадры. При наличии в кадре целевого MAC адреса станции, автоматически выполняется какое - либо действие. У меня такой "детектор" надежно фиксирует наличие станции только по кадрам типа 2 (дата). Т.е. станция должна быть подключена к WIFI и вести обмен с точкой доступа. Но это уже не интересно. Вопрос в следующем: есть или возможность фиксировать наличие станции по ее MAC адресу без подключения к сети. Или сейчас реальные MACи так надежно спрятаны, что эта идея бесполезна?
А почему станция не может на короткое время стать AP, в этом случае другая AP ее легко обнаружит.
 
Сверху Снизу