From Angry IP Scanner's FAQ ("Hostnames not shown"):
Angry IP Scanners displays hostnames returned by your DNS (name)
server, by doing a reverse lookup. The server is provided the IP
address and returns the hostname if it knows it.
If some computer
knows its own name, it doesn't mean that it has provided it the the
network's DNS server. In other words, the name of the host as it knows
it itself (the local name) and the name attached to the IP address
(the global name) as it known by the DNS server may not always match.
Very often, DNS queries will return some generic names, e.g.
dhcp-12-13.superisp.com, especially in ISP networks.
The names match
in either of these cases:
- Your computer has sent the name to the DHCP server from which it obtained the IP address and DHCP server has provided it to the local
- You have a static IP address and your local hostname is configured according to the rules that match global naming convention in your
- Your host's TCP stack returns the local name if the local IP address is queried, not asking the global name
From Nmap's documentation ("Host Discovery"):
By default, Nmap still does reverse-DNS resolution on the hosts to
learn their names.
Additional reading/info here.