Это своего рода продолжение это пост мой.
У меня есть mac-адрес моего телефона (samsung galaxy S9; хотя это не имеет значения). Я хочу проверить, есть ли он в сети или нет. У него нет статического ip, поэтому мне нужно проверить его по mac-адресу.
Я буду ссылаться на mac-адрес своего телефона с [1]
.
Это "журнал" событий:
#телефон подключен к сети
ping -b 192.168.2.255 -c 20 &> /dev/null
арп | grep -i "[1]"
-> успешный
#телефон НЕ подключен к сети (выключен Wi-Fi на телефоне)
ping -b 192.168.2.255 -c 20 &> /dev/null
арп | grep -i "[1]"
-> успешный
Второй раз не должно получиться. Телефон не подключен к сети, но он все еще показывает это в выводе arp.
У моего телефона нет статического ip-адреса, но при подключении к сети он почти всегда получает один и тот же ip-адрес. Это нормально. пинг -b
вывод всегда был правильным. Когда мой телефон подключен к сети, я вижу ip-адрес, который он почти всегда получает в списке (из пинг
команда). Когда мой телефон не подключен, я никогда не вижу его «стандартный» IP-адрес в выводе. Так что пинг работает и "актуален".
Поэтому я предполагаю, что arp не «актуален», как ping (но это только мое грубое предположение). Я думаю, что arp не обновляет свою таблицу, хотя ping «сделал» новую. Но это то, что я думаю, основываясь на комментарии к предыдущему сообщению: "Вы уже выполняете широковещательный пинг, ping -b 192.168.2.255. Это должно заполнить таблицу arp для любых онлайн-устройств с IP-адресом 192.168.2..*"
Помощь!