Узнать айпи по мак адресу

Узнать айпи по мак адресу

Эта статья рассказывает, как узнать, какой IP адрес имеет сетевое устройство с известным MAC адресом.

Этот вопрос чаще возникает для сетевых устройств, таких как сетевые принтеры или сетевые телекамеры. Например, мы подключили сетевой принтер или сетевую телекамеру к сети с DHCP и хотим узнать IP адрес этого устройства, но доступа к статистике DHCP сервера нет. Или на устройстве задан статический IP адрес, но мы не помним, какой именно. При этом мы знаем MAC адрес (написан на корпусе). Этот вопрос бывает актуален и для компьютеров, особенно к которым нет физического доступа.

Консольные команды определения IP адреса представлены на картинке, а далее описано, почему команды должны быть именно такими и как они работают, также приведён пример bat файла:
Способ работает на любом Windows компьтере в сети и не требует административных полномочий. Используется информация ARP кэша, производится чтение списка и поиск нужной записи.

Просмотр ARP кэша

Командная строка просмотра ARP кэша с поиском записи по определённому MAC адресу:

Но, выполнив эту команду, мы можем не увидеть наше устройство.

Это происходит потому, что ARP кэш в Windows хранит записи от 15 до 45 секунд, начиная с Windows Vista: Address Resolution Protocol (ARP) caching behavior in Windows Vista TCP/IP implementations.

Наполнение ARP кэша

Поэтому перед чтением кэша необходимо заполнить его полным списком узлов сети. Это можно сделать, запустив ping на все узлы сети, например, если у нас сеть 192.168.1.1 / 255.255.255.0, то:

Важно, чтобы запуск ping’ов происходил как do @start /b ping, тогда

  • все ping’и запускаются почти одновременно, и время выполнения цикла составит всего несколько секунд. Если написать просто do ping, т.е. без start, то цикл будет выполняться более 10 минут.
  • значок @ перед start предотвращает вывод 254 команд ping

После завершения ping’ов нужно сразу запускать arp -a. Пауза более 15 секунд может привести к тому, что какие-то записи будут удалены из кэша.

Пакетный bat/cmd файл

То же решение в виде командного файла ip_by_mac.cmd с передачей MAC адреса в виде параметра будет выглядеть так:

Ограничения

Способ работает только для тех узлов, которые отвечают на ping (icmp запросы), т.е. если у компьютера icmp echo отключен, то этот командный файл не определит его IP адрес.

Читайте также:  Почему windows не подключается к wifi

Остается неудобство в том, что требуется явно указывать подсеть, а так же ограничение на подсеть – командный файл работает только для сетей 255.255.255.0.

Пример выполнения команд (видео)

Файлы для скачивания

Этот командный файл, как и другие скрипты, можно скачать по ссылке

IP-адрес подключенного сетевого устройства нужен пользователю в той ситуации, когда на него отправляется определенная команда, например, документ для печати на принтер. Помимо этого примеров существует достаточно много, мы не будем перечислять все их. Иногда юзер сталкивается с ситуацией, когда сетевой адрес оборудования для него неизвестен, а на руках имеется лишь физический, то есть MAC-адрес. Тогда нахождение IP осуществляется достаточно просто с помощью стандартных средств операционной системы.

Определяем IP устройства по MAC-адресу

Для выполнения сегодняшней задачи мы воспользуемся только «Командной строкой» Windows и в отдельном случае встроенным приложением «Блокнот». Вам не нужно знать никаких протоколов, параметров или команд, сегодня мы ознакомим вас со всеми ними. От юзера требуется только наличие правильного MAC-адреса подключенного аппарата для произведения дальнейшего поиска.

Приведенные в этой статье инструкции будут максимально полезны только тем, кто ищет IP других устройств, а не своего локального компьютера. Определить MAC родного ПК можно проще. Предлагаем вам ознакомиться с другой статьей по этой теме далее.

Способ 1: Ручной ввод команд

Есть вариант использования скрипта для проведения необходимых манипуляций, однако максимально полезным он будет только в той ситуации, когда определение IP производится большое количество раз. Для одноразового поиска достаточно будет самостоятельно прописать необходимые команды в консоли.

    Откройте приложение «Выполнить», зажав комбинацию клавиш Win + R. Впишите в поле ввода cmd, а затем щелкните на кнопку «ОК».

Считывание IP-адресов будет происходить через кэш, поэтому его сначала нужно наполнить. За это отвечает команда for /L %a in (1,1,254) do @start /b ping 192.168.1.%a -n 2 > nul . Обратите внимание, что сработает она только тогда, когда сетевые настройки являются стандартными, то есть 192.168.1.1 / 255.255.255.0. В противном случае изменению подлежит часть (1,1,254). Вместо 1 и 1 вводятся начальные и конечные значения измененного IP сети, а вместо 254 — установленная маска подсети. Пропечатайте команду, а затем нажмите на клавишу Enter.

Вы запустили скрипт на пропинговку всей сети. За нее отвечает стандартная команда ping, которая сканирует только один указанный адрес. Введенный же скрипт запустит быстрый анализ всех адресов. По завершении сканирования отобразится стандартная строка для дальнейшего ввода.

Читайте также:  Служба управления ключами kms недоступна windows 7

Теперь следует просмотреть сохраненные в кэше записи с помощью команды arp и аргумента -a. Протокол ARP (Address resolution protocol) показывает соответствие MAC-адресов к IP, выводя все найденные устройства в консоль. Учтите, что после наполнения некоторые записи хранятся не более 15 секунд, поэтому сразу после наполнения кэша запустите сканирование, введя arp -a .

Если список получился слишком длинный или вы хотите целенаправленно найти только одно совпадение, вместо arp -a после наполнения кэша следует ввести команду arp -a | find "01-01-01-01-01-01" , где 01-01-01-01-01-01 — имеющийся MAC-адрес.

Тогда вы получите только один результат, если совпадение будет найдено.

Вот такое простое руководство поможет вам определить IP-адрес сетевого устройства с помощью имеющегося MAC. Рассмотренный способ требует от пользователя ручного ввода каждой команды, что не всегда удобно. Поэтому тем, кому нужно часто производить подобные процедуры, мы советуем ознакомиться со следующим методом.

Способ 2: Создание и запуск скрипта

Для упрощения процесса нахождения мы предлагаем воспользоваться специальным скриптом — набором команд, автоматически запускающихся в консоли. Вам потребуется только создать вручную этот скрипт, запустить его и ввести MAC-адрес.

    На рабочем столе щелкните правой кнопкой мыши и создайте новый текстовый документ.

Откройте его и вставьте туда следующие строки:

@echo off
if "%1" == "" echo no MAC address & exit /b 1
for /L %%a in (1,1,254) do @start /b ping 192.168.1.%%a -n 2 > nul
ping 127.0.0.1 -n 3 > nul
arp -a | find /i "%1"

Мы не будем объяснять значение всех строк, поскольку вы можете ознакомиться с ними в первом способе. Ничего нового здесь не добавлено, только оптимизирован процесс и настроен дальнейший ввод физического адреса. После ввода скрипта через меню «Файл» выберите пункт «Сохранить как».

Задайте файлу произвольное название, например Find_mac, и после названия допишите .cmd , выбрав в поле ниже тип файла «Все файлы». В итоге должно получиться Find_mac.cmd . Сохраните скрипт на рабочем столе.

Читайте также:  Ведьмак 3 рекомендуемые системные требования

Сохраненный файл на десктопе будет выглядеть так:

Запустите «Командную строку» и перетащите туда скрипт.

Его адрес добавится в строку, а значит объект успешно загружен.

Нажмите Пробел и впишите MAC-адрес в таком формате, как указано на скриншоте ниже, а затем нажмите на клавишу Enter.

Пройдет несколько секунд и вы увидите результат.

Предлагаем вам ознакомиться с другими методами поиска IP-адресов различных сетевых устройств в отдельных наших материалах по следующим ссылкам. Там представлены только те способы, которые не требуют знания физического адреса или дополнительной информации.

Если поиск двумя приведенными вариантами не принес никакого результата, внимательно перепроверьте вводимый MAC, а при использовании первого способа не забывайте, что некоторые записи в кэше хранятся не более 15 секунд.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Оригинал здесь

Эта статья рассказывает, как узнать, какой IP адрес имеет сетевое устройство с известным MAC адресом.

Этот вопрос чаще возникает для сетевых устройств, таких как сетевые принтеры или сетевые телекамеры. Например, мы подключили сетевой принтер или сетевую телекамеру к сети с DHCP и хотим узнать IP адрес этого устройства, но доступа к статистике DHCP сервера нет. Или на устройстве задан статический IP адрес, но мы не помним, какой именно. При этом мы знаем MAC адрес (написан на корпусе). Этот вопрос бывает актуален и для компьютеров, особенно к которым нет физического доступа.

Консольные команды определения IP адреса представлены на картинке, а далее описано, почему команды должны быть именно такими и как они работают, также приведён пример bat файла:
Способ работает на любом Windows компьтере в сети и не требует административных полномочий. Используется информация ARP кэша, производится чтение списка и поиск нужной записи.

Просмотр ARP кэша

Командная строка просмотра ARP кэша с поиском записи по определённому MAC адресу:

Ссылка на основную публикацию
Adblock detector