it-swarm-ru.tech

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

Я знаю IP-адрес хоста в своей локальной сети. Используя это, как я могу найти его MAC-адрес (без физического доступа к нему)?

34
Frederick

Если вы работаете на компьютере с Windows, откройте окно командной строки (Пуск ... Выполнить ... cmd),ping целевой машины, чтобы вы установили с ней связь , а затем введите команду arp -a, чтобы просмотреть свой локальный Таблица ARP, в которой будут перечислены IP-адреса и их соответствующие MAC-адреса, например,

C:\Users\L3K> arp -a

Interface: 192.168.200.128 --- 0xb
  Internet Address      Physical Address      Type
  192.168.200.1         00-50-7f-c3-5c-88     dynamic
  192.168.200.2         00-50-7f-d1-e1-40     dynamic
  192.168.200.6         00-80-77-dd-a8-6b     dynamic

Если вы работаете в системе на основе Linux, установите утилиту arp-scan, а затем из командной строки вы можете запросить сканирование вашей сети - в моем случае:

Sudo arp-scan 192.168.200.0/24

Если вы используете интерфейс, отличный от Ethernet, скажем, беспроводной, вам необходимо указать его, например:

Sudo arp-scan -I wlan0 192.168.200.0/24

Если вы не знаете, какой интерфейс используете, просто используйте соответствующую команду ниже.

ifconfig  (For Debian based OS such as Ubuntu)
ip link   (For OS like Arch Linux)
46
Linker3000

Команда arping поставляется с пакетом iputils в linux. Укажите IP-адрес для ping, и он возвращает MAC-адрес даже через коммутаторы и подсети в локальной сети (по крайней мере, в нашей локальной сети).

# arping -c 1 -I eth0 10.100.10.11
ARPING 10.100.10.11 from 10.100.10.25 eth0
Unicast reply from 10.100.10.11 [00:22:68:88:F3:90]  0.594ms
Sent 1 probes (1 broadcast(s))
Received 1 response(s)
19
Joe Zacky

Пытаться

getmac /s hostname

или же:

getmac /s IP

Вам нужен доступ администратора к машине, чтобы сделать это.

8
Patrick

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

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

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

2
imoatama

просто используйте что-то вроде:

nmap -n -sP 192.168.146.0/24

после адаптации параметров к вашей настройке будет сканироваться вся ваша подсеть с указанием адресов IP и MAC

2
sparkie

Если и ваша машина, и целевой компьютер находятся в одной подсети, вы можете просто пропинговать ее, чтобы ее ассоциация IP-MAC была зарегистрирована через протокол разрешения адресов (ARP).

ping -c1 $IP
arp -n | grep $IP

например, если я хочу найти IP-адрес 10.1.135.150:

# ping -c1 10.1.135.150
PING 10.1.135.150 (10.1.135.150) 56(84) bytes of data.
64 bytes from 10.1.135.150: icmp_seq=1 ttl=64 time=1.88 ms

--- 10.1.135.150 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 1.883/1.883/1.883/0.000 ms

Затем запросите таблицу ARP

# arp -n | grep 10.1.135.150
10.1.135.150             ether   8c:ae:4c:f4:4d:e1   C                     eth0

Таким образом, MAC 10.1.135.150 - это 8c:ae:4c:f4:4d:e1

1
RobM

Вы можете использовать утилиту типа http://trogonsoftware.com/trogon-mac-scanner.html или другой сканер адресов ip\mac для сканирования сети на наличие адресов удаленных компьютеров в локальной сети.

1
boogoo

Другой способ это:

nbtstat -a 192.168.1.1

(замените 192.168.1.1 на нужный адрес)


Кроме того, если getmac используется на компьютере, отличном от Windows, вы получите:

ОШИБКА: сервер RPC недоступен.

0
Pacerier

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

0
Ofir

Вы всегда можете обратиться к таблице arp на своем маршрутизаторе (в некоторых случаях маршрутизатор объединяет таблицы аренды arp и dhcp).

0
MaQleod