Страница 1 из 1
Устройства Online и MAC адрес (скрипт)
Добавлено: Вс мар 03, 2019 6:02 pm
SrFatCat
Тема не новая, но что-то не нашел решений.
Идея проста. Есть у меня десяток устройств на ESP8266 и количество их пугающе растет. Старенький роутер переодически страдает маразмом и перестает подключать то одно, то другое до их полной перезагрузки. Устройства перезагружаются сами, при отсутствии подключения более определенного времени, но иногда бывают казусы. Хотелось бы видеть здоровье устройств в Устройства онлайн. Понятно, что каждому назначить фиксированый IP не очень предпочтительный вариант. Тем более, что это все-таки ESP на колхозной плате и в зоопарке раз в 2-3 месяца кто-то дохнет насовсем и модуль приходится менять.
Короче завел на устройства объекты. В каждом добавил свойство MAC, прописал туда MAC адреса. Дальше вроде бы просто - запускаем скрипт раз в час, к примеру, который собирает все MAC скармливает их arp-scan, парсит ответ и обновляет IP адреса в объектах. Но не тут то было. Никакими силами у меня из под скрипта arp-scan не работает. Либо нет доступа, либо что-то типа нет терминала.
Может кто сможет подскажет, как запустить такое:
Код: Выделить всё
exec_shell('sudo arp-scan -T 94-65-2d-3d-52-f9 192.168.0.0/24 2> /tmp/readings1.txt');
Re: Устройства Online и MAC адрес (скрипт)
Добавлено: Вс мар 03, 2019 7:17 pm
Aven
а в sudoers добавили?
Re: Устройства Online и MAC адрес (скрипт)
Добавлено: Вс мар 03, 2019 7:44 pm
tarasfrompir
SrFatCat писал(а): ↑Вс мар 03, 2019 6:02 pm
Тема не новая, но что-то не нашел решений.
Идея проста. Есть у меня десяток устройств на ESP8266 и количество их пугающе растет. Старенький роутер переодически страдает маразмом и перестает подключать то одно, то другое до их полной перезагрузки. Устройства перезагружаются сами, при отсутствии подключения более определенного времени, но иногда бывают казусы. Хотелось бы видеть здоровье устройств в Устройства онлайн. Понятно, что каждому назначить фиксированый IP не очень предпочтительный вариант. Тем более, что это все-таки ESP на колхозной плате и в зоопарке раз в 2-3 месяца кто-то дохнет насовсем и модуль приходится менять.
Короче завел на устройства объекты. В каждом добавил свойство MAC, прописал туда MAC адреса. Дальше вроде бы просто - запускаем скрипт раз в час, к примеру, который собирает все MAC скармливает их arp-scan, парсит ответ и обновляет IP адреса в объектах. Но не тут то было. Никакими силами у меня из под скрипта arp-scan не работает. Либо нет доступа, либо что-то типа нет терминала.
Может кто сможет подскажет, как запустить такое:
Код: Выделить всё
exec_shell('sudo arp-scan -T 94-65-2d-3d-52-f9 192.168.0.0/24 2> /tmp/readings1.txt');
а не думал над тем что бы есп транслировала сама мак адрес при входе в онлайн?
Re: Устройства Online и MAC адрес (скрипт)
Добавлено: Вс мар 03, 2019 9:10 pm
SrFatCat
tarasfrompir писал(а): ↑Вс мар 03, 2019 7:44 pm
а не думал над тем что бы есп транслировала сама мак адрес при входе в онлайн?
Те, которые через MQTT те так и делают, но это решение так себе. В остальные тоже пихать поддержку MQTT? Да и кроме ESP есть еще планшеты, ТВ-боксы и другие девайся о состоянии которых не плохо бы знать, а специально на них навешивать что-то для трансляции адреса - ну совсем не хочется. Тем более, что решение вот оно - легкое, чуть-чуть понять что не так.
Aven писал(а): ↑Вс мар 03, 2019 7:17 pm
а в sudoers добавили?
Научите - как.
usermod -a -G sudo www-data делал
В sudo visudo что-о по наущению напихал, но похоже не то.
Результат все тот же..... Блин пока писал заработало

. Похоже дело было не в этом
Код: Выделить всё
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL:ALL) ALL
orangepi ALL=(ALL:ALL) ALL
www-data ALL= NOPASSWD: ALL
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
# See sudoers(5) for more information on "#include" directives:
#includedir /etc/sudoers.d
Re: Устройства Online и MAC адрес (скрипт)
Добавлено: Вс мар 03, 2019 9:32 pm
Aven
Я бы сделал резервирование в DHCP для устройств где нужны постоянные адреса.
Re: Устройства Online и MAC адрес (скрипт)
Добавлено: Вс мар 03, 2019 11:05 pm
SrFatCat
Aven писал(а): ↑Вс мар 03, 2019 9:32 pm
Я бы сделал резервирование в DHCP для устройств где нужны постоянные адреса.
Похоже все-таки придется сделать именно так. От arp-scan, arp, arping удовлетворительных результатов пока добиться не удается.
То icmp без ответа, то роутер подменяет своим MAC ответ по адресу.