Como encontrar o endereço MAC de um computador remoto?
Eu conheço o endereço IP de um host na minha própria LAN. Usando isso, como posso encontrar o seu endereço MAC (sem ter de aceder fisicamente a ele)?
Eu conheço o endereço IP de um host na minha própria LAN. Usando isso, como posso encontrar o seu endereço MAC (sem ter de aceder fisicamente a ele)?
Se estiver numa máquina Windows, abra uma caixa de comando (Start…Run…cmd), ping
a máquina alvo para que tenha feito contacto com ela, e depois emita o comando arp -a
para ver a sua tabela ARP local, que irá listar os endereços IP e os seus endereços MAC correspondentes, por exemplo
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
Se estiver num sistema baseado em Linux, instale o utilitário arp-scan
, e depois a partir de uma linha de comando pode pedir um scan da sua rede - no meu caso:
sudo arp-scan 192.168.200.0/24
Se estiver a utilizar um interface que não seja Ethernet, digamos, sem fios, terá de especificar isso, tal como
sudo arp-scan -I wlan0 192.168.200.0/24
Se não souber qual o interface que está a utilizar, basta usar o comando apropriado abaixo.
ifconfig (For Debian based OS such as Ubuntu)
ip link (For OS like Arch Linux)
O comando arping
vem com o pacote iputils
no linux. Especifique um endereço ip para ping e ele retorna o endereço MAC, mesmo entre switches e sub-redes na LAN (pelo menos na nossa LAN).
# 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)
Se tiver um switch gerido ou o seu router permite-lhe ver a sua tabela ARP pode obtê-lo a partir daí.
Se o computador para o qual tem o IP estiver online pode pingá-lo e obter o seu MAC a partir da sua tabela ARP local.
Uma nota geral para o bem dos outros: não é possível obter o endereço MAC para máquinas que estão numa LAN diferente, uma vez que neste caso são utilizados protocolos de Camada 3 para endereçamento e entrega e MAC é de Camada 2.
Você pode usar utilitários como http://trogonsoftware.com/trogon-mac-scanner.html ou outro ip\mac scanner de endereços para procurar endereços de computadores remotos na LAN.
Se tanto a sua máquina como a máquina de destino estiverem na mesma sub-rede, pode simplesmente pingar para que a sua associação IP⟷MAC seja registada através do protocolo de resolução de endereço (ARP).
ping -c1 $IP
arp -n | grep $IP
por exemplo, se eu quiser encontrar o IP de 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
Então consulte a tabela ARP
# arp -n | grep 10.1.135.150
10.1.135.150 ether 8c:ae:4c:f4:4d:e1 C eth0
Então o MAC de 10.1.135.150 é 8c:ae:4c:f4:4d:e1