Как узнать IP, зная MAC
Все команды необходимо выполнять от лица супер-пользователя. Начнем с установки программы arp-scan - она есть в репозиториях практически любого дистрибутива Linux. Именно она позволяет определить IP адреса устройств в сети по их MAC адресам. Для Debian-base дистрибутивов (Ubuntu, Mint...) команда будет звучать так:
apt-get install arp-scan
Если же вы пользователь дистрибутивов ветки Red Hat (Centos, Fedora...) выполните:
yum install arp-scan
Немного о том, как работает утилита. Она использует функции протокола ARP, который выполняет обратное действие - позволяет узнать MAC необходимого IP, широковещательно (каждому узлу сети) рассылая запрос содержания: "У кого такой IP - пришлите мне свой MAC". И узел с совпавшим IP отвечает: "Это я, а это мой MAC".
В нашем случае мы знаем MAC, поэтому широковещательная рассылка не требуется, а вот IP не знаем - будем перебирать их из заданного диапазона адресов, или всей нашей сети. Рано или поздно IP совпадет и узел ответит тем же сообщением.
arp-scan -T aa:20:5c:64:71:bf 192.168.1.0/24 | grep aa:20:5c:64:71:bf
В данном примере сообщения будут отправлены узлу с MAC-адресом aa:20:5c:64:71:bf, для перебора будет использована сеть 192.168.1.0/24. /24 - это маска подсети, указывающая на диапазон перебираемых IP адресов: 192.168.1.1-192.168.1.254. Диапазон можно указывать и в таком формате. GREP в конце команды позволяет отфильтровать вывод только для данного MAC адреса. Это связано с тем, что если ваш коммутатор еще не успел "обучиться" данному MAC адерсу, он разошлет сообщения широковещательно (всем узлам), и некоторые узлы с совпавшем IP адресом из диапазона перебираемых адресов могут решить, что это сообщение им, и подзасорят вывод нашей команды.
Помимо вышеописанной задачи - "Узнать IP по MAC адресу", данная утилита используется для составления списка IP адресов сети в связке с их MAC адресами. В этом случае MAC адрес узла через ключ "-T" указывать не нужно - пускай сообщения идут всем узлам сети широковещательно:
arp-scan 192.168.1.0/24
Вывод команды будет содержать список всех узлов с IP из указанного диапазона и их MAC-адреса
Добавить комментарий