Mentre agli umani piace dare nomi alle cose, i computer preferiscono di
molto i numeri. In una rete TCP/IP (che è quello che Internet è),
chiamiamo le macchine con un nome particolare per ogni macchina che
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 il FQDN
- fully qualified domain name).
Comunque, quando i computer comunicano attraverso Internet, affinché
questa macchina possa essere trovata dagli altri computer in 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).
Ciò 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
questa informazione;
- il risolutore interroga il file locale degli host (/etc/hosts)
e i domain name server di cui è a conoscenza (l'esatto
comportamento del resolver è 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 e questi 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
ad indirizzo IP (risoluzione dell'indirizzo - address resolution) in
modo che noi si possa usare i nomi delle macchine ma il nostro
computer possa tradurli in numeri IP di cui a bisogno per fare il
proprio lavoro.
Un modo è di inserire ogni host con il quale si vuole dialogare nel
file /etc/hosts (il che è realisticamente totalmente
impossibile se si è connessi ad Internet); un altro è di usare i
numeri IP della macchine invece dei loro nomi (un esercizio di memoria
impossibile tranne che per le LAN più piccole).
Il modo migliore è configurare Linux in modo che sappia dove andare a
prendere automaticamente queste informazioni nome/numero. Questo
servizio è fornito dai sistemi Domain Name Server (DNS). Tutto ciò che
serve è di inserire il numero (o i numeri) IP dei domain name server
nel proprio file /etc/resolv.conf.
L'amministatore del proprio server PPP o il servizio assistenza
clienti dovrebbe aver fornito due numeri IP di DNS (ne è necessario solo
uno, ma due danno un po' di ridondanza in caso di problemi in uno dei
due).
Come menzionato in precedenza, Linux non può impostare il proprio
name server nel modo che usa MS Windows 95. Quindi si deve
insistere (mantenendo la calma) in modo che il proprio ISP fonisca
questa informazione!
Il proprio /etc/resolv.conf potrebbe essere qualcosa di
simile a:
domain nome.di.dominio.del.proprio.isp
nameserver 10.25.0.1
nameserver 10.25.1.2
Si modifichi questo file (creandolo se necessario) per metterci le
informazioni fornite dal proprio ISP. Dovrebbe avere la proprietà e i
permessi che seguono:
-rw-r--r-- 1 root root 73 Feb 19 01:46 /etc/resolv.conf
Se si è già configurato un /etc/resolv.conf perché si è in
una LAN, semplicemente si aggiungano i numeri IP dei server DNS per il
PPP al file che già esiste.
Si dovrebbe pure controllare che il proprio file
/etc/host.conf sia configurato correttamente. Dovrebbe
essere una cosa così:
order hosts,bind
multi on
Ciò dice al risolutore di usare le informazioni nel file degli host
prima di interrogare un DNS per la risoluzione.