3
How can I Get Hostname from IP address/MAC address on Windows? (Win7, if it's version dependent)
I know that arp -a
will give me a table of IP and MAC. Is there something similar for Hostname and MAC/IP?
3
How can I Get Hostname from IP address/MAC address on Windows? (Win7, if it's version dependent)
I know that arp -a
will give me a table of IP and MAC. Is there something similar for Hostname and MAC/IP?
2
If you start with a MAC address, you first need to get the IP address. This means that you need access to a device that has the IP address associated with the MAC. As per the question, arp -a
will list the MAC addresses and corresponding IP addresses. In order to populate that list, the machine will have had to at some point issued an arp
request, saying "who has IP x.x.x.x" - the owner will reply and upon receipt, the arp table will be populated.
In order for this to work, both devices must be on the same layer 2 network - the same switch/vlan. You can trigger arp requests manually by pinging every IP on the network, or using a utility like nmap
to do them all in one go.
Once you have the IP address, you are relying on a name resolution service to do a reverse lookup and return a hostname that is associated with an IP.
In DNS this is achieved through PTR records. For each IP address, there is a PTR record in which is stored the associated hostname. However, there is no obligation to store PTR records so they may not be present, in which case the lookup will fail.
They look like this:
13.12.11.10.in-addr.arpa. 900 IN PTR hostname.domain.com.
The IP address in the PTR record is reversed. So to get the hostname of 10.11.12.13, we say to DNS "Give me the PTR record for 13.12.11.10.in-addr.arpa."
It returns the above record. You can achieve this in by doing
nslookup 10.11.12.13
When nslookup
is given an IP address, it will try to do a PTR lookup.
As per the other reply, if the IP belongs to a Windows machine, you can also do nbtstat -A 10.31.46.59
(note the uppercase -A)
1
Ping -a <ip address>
This will parse your reverse lookup zone in DNS.
If you don't have a reverse lookup zone it will lookup in your local name cache.
If you don't have an entry it will do a broadcast on your LAN (within the subnet you are in) to query for it.
This only for IP > hostname resolution. No MACs.
0
Maybe this will work:
nbtstat -a 192.168.1.100
where 192.168.100 is your IP address.
1ok, to boil this down: do
arp -a
to show table of MAC to IP addresses, then follow withnslookup ...
(ornbstat -A
on Windows) on each IP in order to get the hostname. That about capture it? – matt wilkie – 2016-06-05T00:56:20.027@mattwilkie Yes - though on linux, by default
arp -a
will do a reverse lookup by default (that you switch off with-n
) and so get there in one step if possible – Paul – 2016-06-05T05:45:09.703