Name resolution

from Wikipedia, the free encyclopedia

As a name resolution refers to methods that make it possible names of computers or services translate into editable computer, usually numeric addresses.

For humans, names such as "www.wikipedia.org" are easier to remember and use than numeric addresses. For computers and network components, on the other hand , character strings are unwieldy or inefficiently processable. Name resolution mediates between these two requirements by being able to translate names into addresses and, under certain circumstances, also back. In the case of web addresses ( URLs ), the domain contained (for example “www.wikipedia.org”) is converted into an IP address (for example “91.198.174.232”) using the Domain Name System .

use cases

Name resolution is used in many areas. A well-known application is the translation of computer names or domain names into network addresses. In addition, many network services are also assigned names. The used in web browsers such as Firefox to retrieve Web pages "http" protocol, for example, to the above-mentioned network address and TCP - Port  dissolved "80". Protocol names such as “TCP” in turn have an associated number, for example “17” (protocol ID in the header) for “ UDP ”.

Under Unix , each user and group is assigned an identification number (UID or GID) between 0 and 65535. Here, too, the user logs on with his name, however, access rights are checked using the numeric UID and the GIDs of the groups to which the user belongs. Programs such as “ls” and “ps”, on the other hand, convert the numeric IDs back to names in order to produce an output that is easy to read for the user.

Procedure

There are several methods that can be used to resolve names. Often several procedures are used, which are queried in a certain order until one could provide a valid answer.

The name resolution of a Windows computer in an SMB network (hybrid node), for example, takes place in this order:

  1. DNS name cache (DNS cache): The DNS cache on the local computer is searched.
  2. Hosts file: The hosts file on the local computer is searched.
  3. DNS query: A query is sent to a DNS server in the network.
  4. NetBIOS name cache: The NetBIOS name cache is searched on the local computer.
  5. WINS request: A request is sent to a WINS server in the network.
  6. Broadcast: A NetBIOS broadcast is sent to the own subnet.
  7. Lmhosts file: The Lmhosts file on the local computer is searched.

Local configuration files

The simplest way to resolve names is to use local files that contain a corresponding assignment. In text files - as in a table - one or more addresses or numbers are assigned to a name.

Local configuration files are used when central organization of the data is not required or when the data changes very rarely. Since these files are available locally, the resolution will still work if the network has completely or partially failed. Therefore, very important data is often (also) entered in local files.

Examples (UNIX):

  • /etc/passwd
    Local user database. The administrator user ("root") and system user of services (for example the user with whose rights the web server works) are entered here. If there is no central user administration, "normal" users are also entered here.
  • /etc/protocols
    Protocol names and numbers assigned by the IANA . These dates change very rarely.
  • /etc/hosts(see  hosts file)
    Local table for host names. For example, the alias “localhost” is defined here. A web server could enter the name of the database server here in order to be able to communicate with the database even if the network-based name resolution fails.

Visual comparison:
The address book in a mobile phone is comparable to a local configuration file: the stored phone numbers can be looked up without asking someone else. The information is also available if the directory assistance cannot be reached due to a technical error. The address book is not maintained automatically for this: Any new or changed telephone number does not appear automatically in the address book.

Broadcast

An attempt is made to find the name via a broadcast in the directly connected network. This procedure is used, for example, by ARP in Ethernet networks to find out the MAC address for an IPv4 address .

Visual comparison:
In the open-plan office in which you are, you call the name of the partner you want to call and ask for his telephone number. When you have received this, you can call the partner you want. Due to the principle, only people who are in the same room can be reached.

Special services

The computer requests the required information from a special network service. Other services are used depending on the application. Thanks to the centralized data management, changes can be made at one point, querying computers do not have to be adjusted.

Examples:

  • Domain Name System (DNS)
    Can resolve host names or domain names into addresses. This service is the name resolution used on the Internet, for example to look up the IP address for "www.wikipedia.de".
  • Windows Internet Naming Service (WINS)
    Resolves NetBIOS names. Client computers report the data to the WINS server so that manual configuration is not necessary.
  • Lightweight Directory Access Protocol (LDAP)
    Can be used for user and group administration of POSIX accounts . LDAP also forms the basis for the Active Directory service of Windows systems.

Visual comparison:
You (only) know the telephone number of the directory assistance. You call them to find out the phone number of a third person. New telephone numbers only have to be given to the information desk, not to every telephone owner. If the information service has technical problems, you can only make calls if you have an alternative way of finding the phone number.

Local cache

The computer looks in its local cache to see whether it has already resolved this name. If so, the required address / number is in the cache, which it can reuse. This caching is used in particular in connection with name services to reduce the number of accesses and to speed up the resolution.

Visual comparison:
You want to call someone with whom you have recently spoken on the phone. So you just press the redial, because the phone has the last numbers saved.

sequence

The order is not standardized, but depends on various factors.

  • : the operating system
    Sun prioritized for. B. Windows XP and Windows 2000 DNS name resolution and Windows NT NetBIOS name resolution.
  • of the protocols used IP or NetBIOS over TCP / IP :
    If only the IP protocol is used, the name can only be resolved into an IP address with the DNS name resolution. If NetBIOS over TCP / IP is used, NetBIOS and DNS name resolution can be used.
  • of configuration files and options:
    On UNIX-like systems, the order is determined by entries in the file /etc/nsswitch.conf( /etc/netsvc.confon AIX ). The Samba and Samba TNG servers know the option “name resolve order”. In Windows, since Windows NT 3.5, the order can be set under the registry key HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ Tcpip \ ServiceProvider (small number means high priority). Standard under Windows 7 is 1. local name, 2. hosts file, 3. DNS and 4. NetBIOS.

Special forms

This procedure can be used to configure a web server so that websites with different names have the same IP address. The web server uses the host header contained in the HTTP request to differentiate. The different websites are also referred to as (name-based) virtual hosts in this case .

Visual comparison:
You call a telephone number that you have found using one of the methods described above. The person who answers (at this number) is told who exactly one would like to speak to.

Individual evidence

  1. http://www.elektronik-kompendium.de/sites/net/0901081.htm
  2. Microsoft Knowledge Base Entry 139270