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