Как узнать MAC-адрес по ip-адресу или имени хоста?
Как можно узнать MAC-адрес по ip-адресу или имени хоста имея просто рабочую станцию под управлением ОС Windows?
Ответ прост — с помощью стандартной командной строки.
Чтобы узнать адрес MAC удаленного компьютера или компьютера в локальной сети, необходимо:
1. В командной строке выполнить пинг этого компьютера (пинг ip-адреса или dns-имени).
Для этого нажмите комбинацию клавиш Win+R, введите cmd. В окне командной строки введите: ping ip-адрес или ping dns-имя.
Выполняем ping на искомый узел.
Если вы выполнили пинг имени хоста, то это имя в процессе будет преобразовано в ip-адрес.
2. По окончанию отработки комманды ping, введите команду arp -a. В результатах вывода команды найдите нужный вам ip-адрес и соответсвующий ему MAC-адрес.

arp — это отображение и изменение таблиц преобразования ip-адресов в физические, используемые протоколом разрешения адресов (ARP).
Так же можно пропинговать броадкастовый адрес вашей сети.
Например, если у вас сеть 192.168.31.0 с маской 255.255.255.0, ваш адрес тогда будет 192.168.31.1-254, а броадкастовый — самый последний 192.168.31.255. Его то мы и должны пропинговать, потом дать команду: arp -a
Вы увидите все ip адреса в вашей сети с их маками, останется лишь найти нужный.
Если нужно узнать MAC по ip, то вводим команду: nbtstat -A 192.168.31.5
Хочу заметить, что данная команда не работает в powershell только в cmd.
источник: https://pingmeup.ru/2015/07/15/kak-uznat-mac-adres-po-ip-adresu-ili-imeni-kh/