Определение людей дома с использованием ARP и SNMP

Всё, что не подходит под вышеперечисленные разделы

Модератор: immortal

iapet
Сообщения: 289
Зарегистрирован: Вт авг 18, 2015 6:23 pm
Благодарил (а): 8 раз
Поблагодарили: 36 раз

Re: Определение людей дома с использованием ARP и SNMP

Сообщение iapet » Пн ноя 28, 2016 10:44 pm

craber писал(а):А чем стандартный функционал "Устройства Online" не подходит?
У меня работает уже давно. Ни каких сбоев не замечено.
Постоянные. Два телефона на Андроидах и оба бывает теряет не по одному разу.
Ged
Сообщения: 105
Зарегистрирован: Чт окт 20, 2016 10:59 pm
Благодарил (а): 1 раз
Поблагодарили: 7 раз

Re: Определение людей дома с использованием ARP и SNMP

Сообщение Ged » Вт ноя 29, 2016 12:51 am

А чем стандартный функционал "Устройства Online" не подходит?
ЧТо-то с MAC адресом есть:
плюс работы то, что не важно закрыт ли фаерволом компьютер/телефон или нет.
ПО поводу таскеров и прочего.
Зачем ставить на телефоны лишнее, если это не требуется?
Так на таскере, наверное, и некоторый функционал MD изобразить можно.
Вопрос только, а надо ли это? :-)
alex1015
Сообщения: 4
Зарегистрирован: Пн мар 14, 2016 5:05 pm
Благодарил (а): 1 раз
Поблагодарили: 1 раз

Re: Определение людей дома с использованием ARP и SNMP

Сообщение alex1015 » Ср ноя 30, 2016 10:08 am

Меня полностью устраивает "Устройства Online", работает чётно трубку не теряет. Но есть одно НО, на телефоне wifi должен работать в спящем режиме, а это сильно батарею садит.
Думаю метод с ARP тоже не поможет никак. :(
Ivan
Сообщения: 1473
Зарегистрирован: Сб окт 12, 2013 11:03 pm
Благодарил (а): 49 раз
Поблагодарили: 327 раз

Re: Определение людей дома с использованием ARP и SNMP

Сообщение Ivan » Ср ноя 30, 2016 10:19 am

Тоже такое было с батареей. Пока телефон не поменял. Последние телефона отлчно эконоият батарею с вайфай. С вайфай 1 день заряда. Без 1.5 дня

Отправлено с моего SM-G7102 через Tapatalk
Linux, Raspberry PI, MySensors
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
Osirix
Сообщения: 7
Зарегистрирован: Чт ноя 24, 2016 11:16 pm
Благодарил (а): 0
Поблагодарили: 1 раз

Re: Определение людей дома с использованием ARP и SNMP

Сообщение Osirix » Пн дек 05, 2016 1:49 pm

Сорри что долго не заглядывал. Вижу что вы мне много тут насоветовали.
Попробую ответить по очереди на все предложенные выше варианты варианты.

1. Использовать стандартную фичу определения устройства OnLine методом ping. Это плохой метод. Потому что во все современные телефоны очень сильно экономят батарейку и включают радио модуль только когда он им необходим. Этот метод будет давать огромное количество False Positive срабатываний. Уже проверил... Так же мне совсем не удобно прописывать всем телефонам которые появляются в моей сети статические адреса...

2. Ставить сторонний софт на телефон. Решение плохо тем что не все из телефонов мои и далеко не все они Android. Да и зачем?

3. Syslog и все что с ним связано. Решение интересное. Но не без нюансов. Роутер должен поддерживать отсылку изменений ARP таблицы или DHCP событий (DHCP offer?) через Syslog. По умолчанию Syslog использует UDP и как следствие может теряться. А потеря одного события о входе или устройства из сети никак не исправляется до следующего его входа а это временной лаг который плохо прогнозируется.

Предложенное же мной решение основанное на опросе ARP таблицы роутера имеет плюсом свою инерционность. А так же может работать как по событию (например по датчику двери), так и просто по расписанию. И никак не зависит от клиентского устройства.
Так же просто добавлять новые устройства. Да и само по себе беспалевно дать человеку доступ к сети, и потом все время получать информацию о его доступности.

Буду пробовать реализовывать...
Osirix
Сообщения: 7
Зарегистрирован: Чт ноя 24, 2016 11:16 pm
Благодарил (а): 0
Поблагодарили: 1 раз

Re: Определение людей дома с использованием ARP и SNMP

Сообщение Osirix » Вт дек 06, 2016 4:37 pm

Ged писал(а):ЧТо-то с MAC адресом есть:
плюс работы то, что не важно закрыт ли фаерволом компьютер/телефон или нет.
минусы:
  • нужно рисовать свой обработчик
  • требуется "умный" роутер
  • работает только в локальной сети
Я предвидел подобные аргументы.
Что бы это работало из-за пределов локальной сети надо просто заменить SNMP (все же знают что это расшифровывается как Security is Not My Problem) на ssh допсустим с авторизацией по ключам, ну а дальше все тривиально:

Код: Выделить всё

ssh root@192.168.1.1 arp -an
Естественно надо прописывать реальный IP адрес полученный от провайдера.

К стати метод с Пингом тоже не будет работать из-за пределов локальной сети...
Sas
Сообщения: 207
Зарегистрирован: Вт июл 12, 2016 6:16 pm
Благодарил (а): 2 раза
Поблагодарили: 14 раз

Re: Определение людей дома с использованием ARP и SNMP

Сообщение Sas » Чт дек 08, 2016 8:09 pm

2 роутер пишет в сислог когда к нему подключается устройство и никакие arp ему туда писать не надо.

Не на всех железках есть ssh да и вообще искать железки по arp плохая идея.
Я тоже раньше пытался и по 10 раз в день все в разное время "выходили из дома".
Сейчас через сислог вообще не одного ложного за 4 месяца
Osirix
Сообщения: 7
Зарегистрирован: Чт ноя 24, 2016 11:16 pm
Благодарил (а): 0
Поблагодарили: 1 раз

Re: Определение людей дома с использованием ARP и SNMP

Сообщение Osirix » Пт дек 09, 2016 11:35 am

Sas писал(а):2 роутер пишет в сислог когда к нему подключается устройство и никакие arp ему туда писать не надо.

Не на всех железках есть ssh да и вообще искать железки по arp плохая идея.
Я тоже раньше пытался и по 10 раз в день все в разное время "выходили из дома".
Сейчас через сислог вообще не одного ложного за 4 месяца
Я правильно понимаю что в логах значатся IP адреса клиентов или хостнеймы? Логи какого процесса парсятся? dhcpd?
Можешь показать строчку входа и выхода клиента?
В случае с ARP можно увеличить срок жизни записи в таблице и ложных срабатываний выхода станет меньше, но соответственно и выход будет обрабатываться с большим опозданием...
Поглядел на своем роутере, у меня тоже есть отправка через syslog логов, но как это работает руки не доходят посмотреть. На эти игры у меня всего 2 часа в сутки есть...
Сейчас пишу скетч для ESP8266 что бы снимать показания со счетчиков воды через MQTT. Буду автоматизировать отправку показаний в органы ЖКХ...
redmagic
Сообщения: 1
Зарегистрирован: Пт дек 09, 2016 1:40 pm
Благодарил (а): 0
Поблагодарили: 0

Re: Определение людей дома с использованием ARP и SNMP

Сообщение redmagic » Пт дек 09, 2016 2:19 pm

Наткнулся тут на вашу темку. Хотел узнать что у вас получилось? По поводу задачи отслеживания устройств в сети у себя я опирался на "arp -a" и MAC адреса. Я не обсуждаю включение WiFi на телефоне, при входе домой. WiFi включен 24х7 в у меня в телефоне. Все запросы выполняются на сервере (виндовая машина, но тоже и на Unix будет). Ни каких опросов\команд на роутере. Что бы не увеличивать время жизни ARP таблицы, обновляю ее непосредственно перед командой. Замарачиваться с sys логами мне кажется излишне. В объектах созданы телефоны\компы\ноуты\IPTV. В свойствах жестко прописаны только MAC. Раз в 3 минуты под MAC подтягивается текущий IP если онлайн (это что бы не прописывать статистические DHCP на роутере раз, и мои андройд устройства не ищутся по hostname два. Только виндовые). Онлайн устройства пингуются раз в минуту просто по свойству "%ноут.IP%". Телефоны действительно бывают дают два периода в оффе. Но добавив 3 попытки в свойствах получил 99% точность с погрешностью +3 мин в случае худшего расклада. Все это позволило отслеживать не только устройства в локалке, но и создало систему защиты на предмет появления в сети неизвестного устройства (нового MAC) о чем Алиса и сообщает. Наверно в логах роутера будет прям очень точно, по пока "arp -a" на сервере ни разу не потеряла стандартные устройства. Одна проблема пока, одна из TV приставок при перезагрузке меняет свой MAC при этом не отдает hostname в сеть. Вот это сейчас проблема.)
Ответить