Se você estiver conectado ao mesmo domínio de transmissão, poderá fazer arp -a
, que mostrará o cache do ARP. Daqui você pode combinar o MAC ao IP.
Existe uma maneira de obter o endereço IP quando tudo que você tem é o MAC de um item?
Se o dispositivo de destino e sua caixa * nix estiverem na mesma sub-rede IP (e eu especificamente significar uma verdadeira sub-rede IP, não o mesmo switch, ou mesmo VLAN, ou mesmo o mesmo domínio de broadcast ou qualquer outra coisa referido como uma "sub-rede" em termos leigos), e se eles tiveram a oportunidade de falar para falar um com o outro já, então IP do dispositivo de destino - > O mapeamento MAC provavelmente já está na tabela ARP da sua caixa Unix. Você pode fazer arp -a
para ver a tabela.
Se eles estiverem na mesma sub-rede, mas ainda não tiverem se falado, você poderá forçá-lo fazendo ping no endereço multicast de todos os hosts (224.0.0.1) ou no endereço de broadcast da sub-rede.
Se você não estiver na mesma sub-rede IP, mas estiver no mesmo domínio de difusão / difusão, poderá obter seu endereço IP executando um sniffer e assistindo a multicasts ou transmissões a partir do endereço MAC de destino:
sudo tcpdump -nei $INTERFACE ether host $MAC
... onde $ INTERFACE é a interface que você deseja ouvir (talvez "en0" ou "eth0" ou algo assim) e $ MAC é o endereço MAC que você está procurando.
Para acionar o dispositivo de destino para enviar multicasts ou transmissões enquanto você assiste com o sniffer, é possível executar ping como nos endereços que mencionei acima ou desligar e ligar o dispositivo de destino ou desconectar o dispositivo do switch ( ou ligue e desligue o comutador). A maioria dos dispositivos é mais propensa a enviar broadcasts e multicasts na inicialização, ou quando o link da rede aparece depois de ficar inativo por um tempo.
Sim, chama-se arp (Protocolo de resolução de endereços). Se você usar um programa como o TCP Dump ou o Wireshark, verá que, de vez em quando, o dispositivo de roteador / rede perguntará ao equivalente de "Who is [IP]" e a pessoa responderá com o endereço MAC.
Se você estiver usando o Windows, basta abrir uma linha de comando e digitar "arp -a" para listar o registro ARP que você possui.