VIP_Graff
New member
Помогите реализовать идею. Я честно пытался сам получать гуляющие DHCP пакеты, но увы моя каша не работает. От слова совсем.
Цель:
При появлении телефона в сети, включать свет в подъезде.
Хотел реализовать это на ардуинке подключенной к локальной сети через езернет шилд W5100. Меня направили в сторону ESP8266.
Исполнительное устройство: свет на улице, телефон подключается к Wi-Fi немного раньше попадания в освещаемую зону.
Что имеем:
Телефон при обнаружении WiFi, подключается к сети. Получение IP адреса по DHCP.
Готовая библиотека получения DHCP адреса для W5100, но у меня не получается ее переделать в свою библиотеку, чтобы она принимала все DHCP пакеты и возвращала МАК адреса устройства.
Дополнительный аргумент в пользу парсинга МАКов, охранять безопасность сети.
По принципу как с работой RF приемником.
Чтобы можно было построить выражние типа:
Для новых заглянувщих в тему краткий FAQ идей по реализации:
Я рассматривал эти идеи до создании темы, но нету знаний в реализации задуманного:
Цель:
При появлении телефона в сети, включать свет в подъезде.
Хотел реализовать это на ардуинке подключенной к локальной сети через езернет шилд W5100. Меня направили в сторону ESP8266.
Исполнительное устройство: свет на улице, телефон подключается к Wi-Fi немного раньше попадания в освещаемую зону.
Что имеем:
Телефон при обнаружении WiFi, подключается к сети. Получение IP адреса по DHCP.
Готовая библиотека получения DHCP адреса для W5100, но у меня не получается ее переделать в свою библиотеку, чтобы она принимала все DHCP пакеты и возвращала МАК адреса устройства.
Дополнительный аргумент в пользу парсинга МАКов, охранять безопасность сети.
По принципу как с работой RF приемником.
Чтобы можно было построить выражние типа:
PHP:
IF ResivedMAC == 112233445566 OR ResivedMAC == 998877665544 Then
// включить свет;
ELSEIF ResivedMAC == 889977665544 Then
// ничего не делать;
ELSE
// бить тревогу, чужие в сети;
END;
- 1. bluetooth и датчик движения - использовать не вариант, из-за большого расстояния, необходимое расстояние только Wi-Fi покрывает.
- 2. задать статические адреса и постоянно пинговать - выглядит не совсем правильным, из-за постоянно гуляющих запросов, которые будут долбить пока устройство в сети (будет ли себя хорошо чувствовать устройство под постоянной атакой пинга, знаю что айфоны уходят в энергосбережение и не отвечают на пинг)
- 3. Читал про приложение Tasker, но хотелось бы обойтись без задействования дополнительного ПО
- 4. Дома используется 3G интернет, "снаружи" доступ отсутствует. Сервера дома - нету. Есть роутер с OpenWRT. Сервера с белым IP - нету.
Я рассматривал эти идеи до создании темы, но нету знаний в реализации задуманного:
- 1. На роутере стоит OpenWRT. Знаю что можно спарсить оттуда МАК. Что бы роутер "скриптом проверял подключившихся" и передавал команды(или МАКи) на ардуину.
- 2. Парсить МАКи из ARP пакетов, они то всегда ходят в сети. Но информацию для меня понятную, как это делать не нашел.
- 3. Парсить МАКи из гуляющих DHCP запросов. Запросы в сети появляются когда устройство подключается или продлевает аренду (Что меня устраивает).