Name resolution (computer systems)

In computer systems, name resolution refers to the retrieval of the underlying numeric values corresponding to computer hostnames, account user names, group names, and other named entities.

Computer operating systems commonly employ multiple key/value lists that associate easily remembered names with the integer numbers used to identify users, groups, other computers, hardware devices, and other entities. In that context, name resolution refers to the retrieval of numeric values given the associated names, while Reverse name resolution refers to the opposite process of finding the name(s) associated with specified numeric values:
 * In computer networking, it refers to processes used to obtain the assigned IP addresses needed to communicate with devices whose host or domain names are known. Examples include the Domain Name System (DNS), Network Information Service and Multicast DNS (mDNS). IP addresses for devices on the local segment can in turn be resolved to MAC addresses by invoking the Address Resolution Protocol (ARP).
 * Unix operating systems associate both an alphanumeric name and a user or group ID with each user account or defined group of user names.

The GNU C Library provides various operating system facilities that shell commands and other applications can call to resolve such names to the corresponding addresses or IDs, and vice versa. Some Linux distributions use an nsswitch.conf file to specify the order in which multiple resolution services are used to effect such lookups.