Mentre agli umani piace dare nomi alle cose, i computer preferiscono di molto i numeri. Su una rete TCP/IP (quello che è Internet), chiamiamo le macchine con un nome particolare - e ogni macchina vive in un particolare dominio. Per esempio, la mia workstation Linux si chiama archenland e risiede nel dominio interweft.com.au. Il suo indirizzo "umano" è quindi archenland.interweft.com.au (che è noto come FQDN - fully qualified domain name).
Comunque, quando i computer comunicano attraverso Internet, affinché questa macchina possa essere trovata dagli altri computer su Internet, è in realtà nota con il suo numero IP.
La traduzione (risoluzione) del nome (e del dominio) della macchina nei numeri realmente usati su Internet è compito di macchine che offrono il servizio di Domain Name (Domain Name Service).
Quello che succede è questo:-
la propria macchina ha bisogno di sapere l'indirizzo IP di un particolare computer. L'applicazione che richiede questa informazione chiede al 'risolutore' (resolver) nel proprio PC Linux di fornire quest'informazione;
il risolutore interroga il file locale degli host (/etc/hosts e/o i domain name server di cui è a conoscenza); l'esatto comportamento del risolutore è determinato da /etc/host.conf;
se la risposta è trovata nel file degli host, ne viene ritornato il valore in risposta;
se è specificato un domain name server, il proprio PC interroga questa macchina;
se la macchina DNS sa già il numero IP per il nome richiesto, lo ritorna in risposta. Se così non è, interroga altri name server in Internet per trovare l'informazione. Il name server poi passa questa informazione al risolutore - che la dà all'applicazione che ne aveva fatto richiesta.
Quando si fa una connessione PPP, si deve dire alla propria macchina Linux dove andare a prendere le informazioni sulla conversione da nome a numero IP (risoluzione dell'indirizzo - address resolution) in modo che noi possiamo usare i nomi delle macchine ma il nostro computer possa tradurli nei numeri IP di cui ha bisogno per fare il proprio lavoro.
Un metodo è quello di inserire ogni host con il quale si vuole dialogare nel file /etc/hosts (il che è in realtà totalmente impossibile se si è connessi ad Internet); un altro è di usare i numeri IP delle macchine invece dei loro nomi (un esercizio di memoria impossibile tranne che per le LAN più piccole).
Il metodo migliore è configurare Linux in modo che sappia dove andare a prendere queste informazioni nome/numero - automaticamente. Questo servizio è fornito dai sistemi Domain Name Server (DNS). Tutto quello che è necessario fare è inserire il numero (o i numeri) IP dei domain name server nel file /etc/resolv.conf.