Как узнать mac-адрес удаленного компьютера через командную строку

Обновлено: 21.11.2024

Адрес управления доступом к среде (MAC) — это уникальный во всем мире идентификатор сетевого адаптера. Вам нужен MAC-адрес для различных задач управления, например, если вам нужно ограничить доступ к вашей сети Wi-Fi определенными устройствами или назначить образы компьютерам в службах развертывания Windows (WDS). Windows предлагает различные способы поиска MAC-адреса.

Вольфганг Зоммергут имеет более чем 20-летний опыт работы в сфере ИТ-журналистики. Он также работал системным администратором и техническим консультантом. Сегодня он руководит немецким изданием WindowsPro.de.

  • Синхронизация файлов между ПК и мобильными устройствами с помощью Synology Drive — понедельник, 14 марта 2022 г.
  • Защита RDP-соединений с помощью Remote Credential Guard – среда, 9 марта 2022 г.
  • Удаленное удаление программ с помощью PowerShell – среда, 2 марта 2022 г.

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

ipconfig: часто рекомендуется, но не подходит ^

В большинстве блогов и форумов для чтения MAC-адреса рекомендуется ipconfig. Чтобы отобразить MAC-адрес, вы должны использовать параметр /all, который выдает беспорядочную информацию. Это особенно верно, если ваша машина содержит несколько (виртуальных) адаптеров. Чтобы сократить результаты поиска, следует использовать фильтр:

Первый вызов findstr удаляет все строки с пустыми MAC-адресами. Второй вызов находит все оставшиеся строки с идентификаторами. Использование ipconfig неудобно и не подходит, если вам нужно удаленно считывать MAC-адреса.

getmac: создан для этой цели ^

Встроенный инструмент Windows getmac идеально подходит для этой цели. Он прост в использовании, поддерживает удаленные запросы и может отображать результаты в структурированном формате:

В этом примере MAC-адрес ПК с IP-адресом 192.168.23.214 отображается в формате CSV (параметр /fo csv) и в подробном режиме (/v). Вы можете перенаправить вывод в файл, а затем сохранить его в переменной среды с помощью команды setx.

Удаленный доступ к ПК будет работать только в том случае, если его брандмауэр настроен на разрешение входящих запросов WMI. Если вы получили сообщение об ошибке «Отказано в доступе», вы можете настроить брандмауэр с помощью следующей команды:

брандмауэр netsh advfirewall устанавливает правило group="инструментарий управления Windows (wmi)" new enable=yes.

wmic: прочитать свойства сетевой карты ^

wmic — довольно спартанский клиент для запросов WMI. Он также поддерживает чтение MAC-адреса через псевдоним NIC:

Этот запрос извлекает описание и MAC-адрес из обширной информации, которую WMI предоставляет об адаптере. Другими полезными атрибутами, которые можно получить с помощью wmic, являются «производитель» или «название продукта».

Преимущество wmic по сравнению с другими инструментами заключается в том, что вы можете получить доступ именно к той информации, которая вам нужна. Например, если вам нужны только MAC-адреса физических адаптеров, а не многочисленные виртуальные адаптеры, вы можете выполнить следующий запрос:

Здесь также обратите внимание, что брандмауэр на удаленном компьютере должен разрешать запросы WMI.

arp: найти MAC-адрес IP-адреса ^

Основной целью протокола разрешения адресов (ARP) является разрешение MAC-адреса для определенного IP-адреса. MAC-адрес требуется, если пакет IPv4 необходимо инкапсулировать в кадр Ethernet. Вы можете использовать этот факт, сначала подключившись к удаленному компьютеру, а затем прочитав MAC-адрес с помощью команды arp. Для этого достаточно простого пинга, чтобы найти машину в списке arp:

Подпишитесь на рассылку новостей 4sysops!

Вы не можете отформатировать вывод arp, как с помощью getmac или wmic; однако вывод легко читается, поскольку он содержит только основную информацию. Основное преимущество arp по сравнению с инструментами на основе WMI заключается в том, что вам не нужно настраивать брандмауэр на целевом компьютере.

Сетевые и системные администраторы часто сталкиваются с проблемой поиска MAC-адреса какого-либо удаленного устройства в сети. Физическая проверка каждого устройства может занимать много времени и быть очень утомительной деятельностью. В этом посте мы обсудим 3 команды в «Командной строке», которые помогут узнать MAC-адрес удаленного устройства за несколько секунд.

Команды для поиска MAC-адреса:

Три обсуждаемые команды указаны ниже –

Команда 1 — ARP

"ARP" — это протокол уровня 3, который используется компьютерами для определения и отслеживания TCP/IP и MAC-адресов устройств назначения, с которыми вы общаетесь.

Действия для определения MAC-адреса удаленной системы —

  • Откройте MS-DOS с помощью команды «CMD».
  • Ping IP-адрес устройства, MAC-адрес которого необходимо обнаружить.
  • Введите «ARP — a», чтобы просмотреть список IP-адресов и физических (MAC) адресов, соответствующих каждому IP-адресу —

Ниже приведен пример –

Команда 2 — Nbtstat

Команда «Nbtstat» — еще один способ узнать MAC-адрес удаленного компьютера. NBTSTAT — это встроенная в Windows утилита для NetBIOS через TCP/IP, используемая в системе Windows.

Ниже приведен один из способов определения MAC-адреса удаленной системы — ввести nbtstat -A remoteaddress в командной строке, где remoteaddress — это IP-адрес удаленной системы

Действия для определения MAC-адреса удаленной системы —

  • Откройте MS-DOS с помощью команды «CMD».
  • Введите «nbtstat – a» (где относится к IP-адресу удаленного устройства), чтобы просмотреть физический (MAC) адрес удаленной системы

Ниже приведен пример –

Команда 3 – Getmac

Это утилита командной строки, которая возвращает MAC-адрес вместе с сетевыми протоколами, связанными с каждым адресом, для всех сетевых адаптеров с локальных или удаленных компьютеров.

Шаги для определения MAC-адреса удаленной системы с помощью команды «Getmac» —

  • Откройте MS-DOS с помощью команды «CMD».
  • Введите «getmac /s /u имя пользователя /p пароль», чтобы просмотреть физический (MAC) адрес удаленной системы.

Ниже приведен пример –

Связано – MAC-адрес и IP-адрес

Я здесь, чтобы поделиться своими знаниями и опытом в области нетворкинга с целью: "Чем больше вы делитесь, тем больше вы узнаете".

По образованию я биотехнолог, а по интересам сетевой энтузиаст. Я заинтересовался сетями в компании страстного профессионала в области сетевых технологий, моего мужа.

Я твердо верю в то, что "обучение – это постоянный процесс самопознания".
- Рашми Бхардвадж (автор/редактор)

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

Если вы вошли в систему локально на компьютере под управлением Microsoft Windows, вы можете определить MAC-адрес системы, введя ipconfig /all и найдя запись с пометкой «Физический адрес». Но что, если ваша система находится где-то еще в вашей сети? Одним из способов определения MAC-адреса удаленной системы является ввод nbtstat -A remoteaddress в командной строке, где remoteaddress — это IP-адрес удаленной системы. Например, когда я выполняю это для блока Windows Server Core в своей тестовой сети, я получаю следующий результат:

MAC-адрес удаленной системы — это последняя запись в выводе команды.

В качестве альтернативы описанному выше можно использовать инструмент psexec из набора инструментов Windows Sysinternals Марка Руссиновича. Используя psexec, вы можете удаленно запустить ipconfig /all на удаленном компьютере и вернуть результат на локальный компьютер. Вот пример этого на работе (вы также можете подставить имя удаленного компьютера вместо его IP-адреса в приведенной ниже команде, и вам нужно указать учетные данные, которые работают на удаленном компьютере):

ipconfig завершил работу на 172.16.11.222 с кодом ошибки 0.

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

И последний совет: обязательная книга для администраторов Windows — Microsoft Windows Internals (4-е издание), написанная Марком Руссиновичем и Дэвидом А. Соломоном. Эта книга не только дает вам глубокое представление о том, как работает Microsoft Windows, но и показывает, как использовать некоторые инструменты Sysinternals для самостоятельного изучения операционной системы Windows.Я надеюсь, что когда-нибудь эту книгу обновят для Windows Vista и Windows Server 2008, но пока что это лучшее, что есть для тех, кто хочет глубже изучить Windows.

Эта статья "Дистанционное получение MAC-адресов" изначально была опубликована ITworld.

Как бы вы общались с устройством, если у вас нет IP-адреса?

Возможна ситуация, когда у вас нет IP-адреса устройства в локальной сети, но есть только записи MAC-адреса или аппаратного адреса.

Или ваш компьютер не может отображать свой IP-адрес по разным причинам, и вы получаете сообщение об ошибке «Нет действительного IP-адреса».

Поиск IP-адреса по известному MAC-адресу должен быть задачей приложения ReverseARP, аналога ARP. Но RARP — устаревший протокол со многими недостатками, поэтому его быстро заменили другие протоколы, такие как BOOTP и DHCP, которые имеют дело непосредственно с IP-адресами.

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

Понимание ARP

ARP (протокол разрешения адресов) — это протокол, отвечающий за поиск MAC-адресов с IP-адресами в сегментах локальной сети.

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

Устройство должно знать MAC-адрес назначения для локальной связи через такие типы мультимедиа, как Ethernet или Wi-Fi, на уровне 2 модели OSI. Понимание того, как работает ARP, поможет вам быстро находить IP-адреса и MAC-адреса.

Следующая схема потока сообщений поможет вам понять концепцию:

  • Локальный компьютер отправляет эхо-запрос ICMP на IP-адрес назначения (удаленный компьютер) в том же сегменте. К сожалению, локальный компьютер не знает MAC-адреса… он знает только IP-адрес.
  • Адрес получателя неизвестен, поэтому эхо-запрос ICMP приостановлен. Локальный компьютер знает только свой исходный/целевой IP-адрес и исходный MAC-адрес. ARP использует два типа сообщений: запрос ARP и ответ.

Локальный компьютер отправляет сообщение ARP REQUEST, чтобы найти владельца рассматриваемого IP-адреса.

Это сообщение отправляется на все устройства в пределах одного сегмента или локальной сети через широковещательный MAC-адрес (FF:FF:FF:FF:FF:FF) в качестве адресата.

  1. Поскольку удаленный компьютер является частью того же сегмента сети, он получает широковещательное сообщение, отправленное локальным компьютером. Все остальные компьютеры в локальной сети также получают широковещательную рассылку, но они знают, что IP-адрес назначения не принадлежит им, поэтому отбрасывают пакет. Только удаленный компьютер с IP-адресом назначения отвечает на ARP-ЗАПРОС ARP-ОТВЕТОМ, который содержит целевой MAC-адрес.
  2. Локальный компьютер получает ответ ARP с MAC-адресом. Затем он возобновляет эхо-запрос ICMP, и, наконец, удаленный компьютер отвечает эхо-ответом ICMP.

Поиск IP-адресов с помощью ARP

Вы можете использовать ARP для получения IP-адреса с известного MAC-адреса.

Но сначала важно обновить локальную таблицу ARP, чтобы получать информацию со всех устройств в сети.

  • Отправьте эхо-ответ ICMP по всей локальной сети, чтобы получить все записи MAC в таблице.
  • Чтобы пропинговать всю локальную сеть, вы можете отправить широковещательную рассылку в свою сеть.
  • Откройте командную строку в Windows или терминал в macOS и введите.

Моя подсеть — 192.168.0.0/24 (маска 255.255.255.0), поэтому широковещательный адрес — 192.168.0.255, который можно вычислить или найти с помощью команды «Печать маршрута» в Windows или «netstat -nr» в макОС. Или также можно получить с помощью калькулятора подсети, который можно скачать бесплатно.

Для Windows:

Шаг 1

  • Откройте CMD (командную строку)
  • Перейдите в меню "Пуск" и выберите "Выполнить" или нажмите [клавиша Windows] + [R], чтобы открыть приложение "Выполнить".
  • В текстовом поле «Открыть» введите «cmd» и нажмите «ОК».

Это откроет интерфейс командной строки в Windows.

Шаг 2

Шаг 3

  • Используйте arp с дополнительными аргументами, чтобы найти IP-адрес в том же сегменте сети.
  • С помощью команды «arp -a» вы можете увидеть таблицу ARP и ее записи, недавно заполненные вашим компьютером с помощью широковещательной проверки связи.

Шаг 4.

  • Чтение вывода.
  • Информация, отображаемая в arp-a, в основном представляет собой таблицу ARP на вашем компьютере.
  • Он показывает список с IP-адресами, их соответствующими физическими адресами (или MAC) и типом распределения (динамический или статический).

Исходя из показанных выше результатов, вы можете сопоставить MAC-адрес с IP-адресом в той же строке.

Вы можете забыть об этих адресах 224.0.0.x и 239.0.0.x, поскольку они являются многоадресными IP-адресами.

Для macOS:

Шаг 1

Шаг 2

  • Введите команду «arp» с флагом «-a».
  • После того как вы введете команду «arp -a», вы получите список со всеми записями ARP в таблице ARP на вашем компьютере.
  • В выходных данных будет показана строка с IP-адресом, за которым следует MAC-адрес, интерфейс и тип распределения (динамический/статический).

Поиск IP-адресов с помощью DHCP-сервера

Протокол динамической конфигурации хоста (DHCP) — это сетевой протокол, используемый протоколом TCP/IP для динамического выделения IP-адресов и других характеристик устройствам в сети. DHCP работает в режиме клиент/сервер.

DHCP-сервер — это устройство, отвечающее за назначение IP-адресов в сети, а клиентом обычно является ваш компьютер.

Для домашних сетей или локальных сетей сервер DHCP обычно является маршрутизатором или шлюзом.

Если у вас есть доступ к DHCP-серверу, вы можете просмотреть все взаимосвязи с IP-адресами, MAC-адресами, интерфейсами, именем устройства и временем аренды в вашей локальной сети.

Шаг 1

  • Войдите на сервер DHCP. В этом примере DHCP-сервер является домашним шлюзом.
  • Если вы не знаете IP-адрес своего DHCP-сервера/шлюза, вы можете запустить ipconfig (в Windows) или ifconfig (в macOS/Linux)
  • У этого конкретного DHCP-сервера/шлюза есть веб-интерфейс.

Шаг 2

  • Введите IP-адрес в строке поиска веб-браузера и введите правильные учетные данные.

Шаг 3

  • Найдите список DHCP-клиентов.
  • В этом маршрутизаторе TP-Link функция DHCP-сервера является дополнительной функцией.
  • Выберите DHCP > Список клиентов DHCP. В этом списке вы можете увидеть сопоставление между MAC-адресами и назначенными им IP-адресами.

Использование снифферов – Nmap

Если вы не смогли найти IP-адрес в списке ARP или, к сожалению, у вас нет доступа к DHCP-серверу, в крайнем случае вы можете использовать сниффер.

Снифферы пакетов или сетевые анализаторы, такие как Nmap (или Zenmap, версия с графическим интерфейсом), предназначены для сетевой безопасности.

Они могут помочь выявить атаки и уязвимости в сети.

С помощью Nmap вы можете активно сканировать всю сеть и находить IP-адреса, порты, протоколы, MAC-адреса и т. д.

Если вы пытаетесь найти IP-адрес известного MAC-адреса с помощью сниффера, такого как Nmap, найдите MAC-адрес в результатах сканирования.

Как найти устройство и IP с помощью сниффера?

Шаг 1

  • Храните информацию об IP-адресе вашей сети.
  • В данном случае мой сетевой IP-адрес — 192.168.0.0/24. Если вы этого не знаете, быстрый «ipconfig» в командной строке Windows или «ifconfig» в терминале macOS или Linux может показать вам локальный IP-адрес и маску.
  • Если вы не можете определить подсеть, загрузите этот бесплатный инструмент для расчета подсети или подключитесь к онлайн-калькулятору подсети и найдите IP-адрес своей сети.

Шаг 2

Шаг 3

  • Откройте Nmap (или Zenmap) и используйте команду «sudo nmap -sn (сетевой IP)» для сканирования всей сети (без сканирования портов).
  • Команда отобразит список компьютеров, которые отвечают на запрос Ping, и их MAC-адреса вместе с поставщиком.
  • Не забудьте команду «sudo».
  • Без него вы не увидите MAC-адреса.

Узнавание производителя устройства по MAC-адресу

Хорошо, теперь вы смогли узнать IP-адрес с помощью команды «arp -a» или через DHCP-сервер.

Но что, если вы хотите узнать больше об этом конкретном устройстве?

Что это за поставщик?

Ваш сетевой сегмент или локальная сеть могут быть заполнены различными устройствами, такими как компьютеры, брандмауэры, маршрутизаторы, мобильные телефоны, принтеры, телевизоры и т. д.

А MAC-адреса содержат ключевую информацию, позволяющую узнать больше о каждом сетевом устройстве.

Во-первых, важно понимать формат MAC-адреса.

Традиционные MAC-адреса представляют собой 48-битные 12-значные шестнадцатеричные числа (или шесть октетов).

Первая половина шести октетов представляет уникальный идентификатор организации (OUI), а другая половина — контроллер сетевого интерфейса (NIC), который уникален для каждого устройства в мире.

Мы мало что можем сделать с сетевой картой, кроме как общаться с ней.

Но OUI может предоставить нам полезную информацию о поставщике, если вы не использовали Nmap, который также может предоставить вам поставщика оборудования.

Использование поиска OUI Wireshark

В этом вам может помочь бесплатный онлайн-инструмент поиска OUI, такой как Wireshark OUI Lookup.

Просто введите MAC-адрес в поле поиска OUI, и инструмент проверит первые три октета и сопоставит их со своей производственной базой данных.

Использование DHCP для просмотра информации об IP

Хотя протокол RARP (аналог ARP) был специально разработан для поиска IP-адресов по MAC-адресам, он был быстро прекращен из-за множества недостатков.

RARP был быстро заменен DHCP и BOOTP. Но ARP по-прежнему остается одной из основных функций уровня IP в стеке протоколов TCP/IP. Он находит MAC-адреса по известным IP-адресам, что наиболее распространено в современных средствах связи. ARP работает скрытно, чтобы хранить часто используемый список MAC-адресов и IP-адресов.

Но вы также можете использовать его для просмотра текущих сопоставлений с помощью команды arp -a.

Помимо ARP, вы также можете использовать DHCP для просмотра информации об IP. DHCP-серверы обычно отвечают за назначение IP-адресов. Если у вас есть доступ к DHCP-серверу, перейдите в список DHCP-клиентов и определите IP-адрес с MAC-адресом. Наконец, вы можете использовать анализатор сети, такой как Nmap, сканировать всю сеть и находить IP-адреса и MAC-адреса.

Если вы хотите узнать только поставщика, онлайн-поиск OUI, такой как Wireshark, поможет вам быстро найти его.

Часто задаваемые вопросы о поиске устройства или IP-адреса

Можно ли найти IP-адрес по MAC-адресу?

Да. Откройте окно командной строки и введите команду arp -a. Вывод показывает все IP-адреса, которые активны в вашей сети. Следующий столбец выходных данных называется «Физический адрес». Это MAC-адрес. Найдите в выводе строку с известным вам MAC-адресом и запишите IP-адрес в этой строке.

Как получить доступ к устройству по MAC-адресу?

Самый простой способ получить доступ к устройству, зная MAC-адрес, — использовать команду arp -a для поиска соответствующего IP-адреса. С этим адресом вы можете получить доступ к устройству с помощью управления удаленным рабочим столом, программы Telnet или другого средства подключения.

Как найти устройство по IP-адресу? (командные инструкции)

Вы можете отслеживать путь к устройству, если знаете его IP-адрес, с помощью команды tracert в командной строке (cmd). Откройте окно командной строки и введите tracert, а затем известный вам IP-адрес. В выходных данных будет показано, что каждый маршрутизатор, подключенный к этому устройству, будет проходить через него.

Читайте также: