Obter nome do host do endereço MAC no Windows

Respostas:

2

Se você começar com um endereço MAC, primeiro precisará obter o endereço IP. Isso significa que você precisa acessar um dispositivo que tenha o endereço IP associado ao MAC. Conforme a pergunta, arp -alistará os endereços MAC e os endereços IP correspondentes. Para preencher essa lista, a máquina terá que, em algum momento, ter emitido uma arpsolicitação, dizendo "quem tem IP xxxx" - o proprietário responderá e, após o recebimento, a tabela arp será preenchida.

Para que isso funcione, os dois dispositivos devem estar na mesma rede da camada 2 - o mesmo switch / vlan. Você pode acionar solicitações de ARP manualmente, executando ping em todos os IPs da rede ou usando um utilitário semelhante nmapa todos eles de uma só vez.

Depois de ter o endereço IP, você conta com um serviço de resolução de nomes para fazer uma pesquisa inversa e retornar um nome de host associado a um IP.

No DNS, isso é alcançado através de registros PTR. Para cada endereço IP, há um registro PTR no qual está armazenado o nome do host associado. No entanto, não há obrigação de armazenar registros PTR para que eles não estejam presentes; nesse caso, a pesquisa falhará .

Eles se parecem com isso:

13.12.11.10.in-addr.arpa. 900   IN      PTR     hostname.domain.com.

O endereço IP no registro PTR é revertido. Portanto, para obter o nome do host 10.11.12.13, dizemos ao DNS "Dê-me o registro PTR para 13.12.11.10.in-addr.arpa".

Retorna o registro acima. Você pode conseguir isso fazendo

nslookup 10.11.12.13

Quando nslookupé fornecido um endereço IP, ele tenta fazer uma pesquisa PTR.

Conforme a outra resposta, se o IP pertencer a uma máquina Windows, você também poderá fazê-lo nbtstat -A 10.31.46.59(observe -A em maiúsculas)

Paulo
fonte
1
ok, para resumir: faça arp -a para mostrar a tabela de endereços MAC para IP e siga com nslookup ...(ou nbstat -A no Windows) em cada IP para obter o nome do host. Que tal capturá-lo?
Matt Wilkie
@mattwilkie Sim - embora no Linux, por padrão arp -avai fazer uma pesquisa inversa por padrão (que você desligue com -n) e assim chegar lá em uma única etapa, se possível
Paul
1

Ping -a <ip address>

Isso analisará sua zona de pesquisa inversa no DNS.

Se você não tiver uma zona de pesquisa inversa, ela procurará no cache de nomes local.

Se você não tiver uma entrada, ela fará uma transmissão na sua LAN (dentro da sub-rede em que você está) para consultá-la.

Isso apenas para resolução de IP> hostname. Sem MACs.

Cidadão
fonte
0

Talvez isso funcione:

nbtstat -a 192.168.1.100

onde 192.168.100 é o seu endereço IP.

Expenzor
fonte