У меня есть несколько веб-камер, MAC-идентификаторы которых известны. Мне нужен способ определения соответствующих IP-адресов. Предположим, что все в одной сети Wi-Fi. Однако у меня нет прав изменять настройки сетевого маршрутизатора Wi-Fi (другими словами, я не могу назначать статические IP-адреса для кулачков).RARP с использованием стандартных библиотек Python
Я слышал об обратном протоколе ARP, который может помочь идентифицировать IP-адрес с учетом MAC-идентификатора. There is библиотека, доступная для ARP/RARP, но мне было интересно, можно ли это сделать без установки внешней библиотеки.
Что такое "ARP scan"? Могу ли я выполнять ARP с использованием стандартных библиотек в Python? – Nik
Это просто «bruteforce», вы делаете ARP-запросы для каждого IP-адреса в подсети (возможно, сначала запрашиваете IP-адреса, ранее принадлежавшие вашим целям), пока не найдете то, что хотите. Это грязный и уродливый, но я не могу думать ни о чем лучше. Однако протокол ARP не реализован в стандартных libs в python, но это довольно простой протокол, вы можете попробовать реализовать его самостоятельно со структурными и сырыми сокетами. Вот некоторые ссылки: [Спецификации ARP] (https://tools.ietf.org/html/rfc826), [struct] (http://docs.python.org/2/library/struct.html). – smeso
В качестве побочного примечания: при работе с сокет на низком уровне [scapy] (http://www.secdev.org/projects/scapy/) действительно полезно, но я предполагаю, что вы не хотите использовать внешние библиотеки. – smeso