Product SiteDocumentation Site

8.3. Impostare il nome host e configurare il servizio dei nomi

Lo scopo di assegnare dei nomi agli indirizzi IP è quello di rendere più facile la memorizzazione per le persone. In verità, un indirizzo IP identifica un'interfaccia di rete associata con un dispositivo come una scheda di rete. Poiché ogni macchina può avere più schede e più interfacce per ogni scheda, un singolo computer può avere più nomi nel sistema dei nomi di dominio.
Ogni macchina è tuttavia identificata da un nome principale (o «canonico») conservato nel file /etc/hostname e comunicato al kernel Linux tramite gli script di inizializzazione attraverso il comando hostname. Il valore corrente è disponibile in un filesystem virtuale e lo si può ottenere con il comando cat /proc/sys/kernel/hostname.
Sorprendentemente, il nome del dominio non è gestito allo stesso modo, ma viene ricavato dal nome completo della macchina, acquisito tramite la risoluzione dei nomi. È possibile cambiarlo nel file /etc/hosts; si scriva semplicemente un nome completo per la macchina all'inizio della lista di nomi associati all'indirizzo della macchina, come nell'esempio che segue:
127.0.0.1     localhost
192.168.0.1   arrakis.falcot.com arrakis

8.3.1. Risoluzione dei nomi

Il meccanismo per la risoluzione dei nomi in Linux è modulare e può utilizzare svariate sorgenti di informazione dichiarate nel file /etc/nsswitch.conf. L'elemento che coinvolge la risoluzione dei nomi host è hosts. Per impostazione predefinita, contiene dns files; che significa che il sistema consulta prima di tutto il file /etc/hosts, quindi i server DNS. Server NIS/NIS+ o LDAP sono altre possibili sorgenti.

8.3.1.1. Configurare i server DNS

DNS (Domain Name Service) è un servizio distribuito e gerarchico che mappa i nomi agli indirizzi IP e vice-versa. In particolare converte un nome semplice da utilizzare come www.eyrolles.com nell'indirizzo IP corrispondente, 213.244.11.247.
Per accedere alle informazioni DNS, un server DNS dev'essere disponibile ad inoltrare le richieste. La Falcot ne ha uno proprio, ma un singolo utente utilizzerà probabilmente i server DNS forniti dal proprio provider dei servizi Internet.
I server DNS da utilizzare sono indicati in /etc/resolv.conf, uno per riga, con la parola chiave nameserver anteposta all'indirizzo IP, come nell'esempio seguente:
nameserver 212.27.32.176
nameserver 212.27.32.177
nameserver 8.8.8.8
Si noti che il file /etc/resolv.conf può essere gestito automaticamente (e sovrascritto) quando la rete è gestita da NetworkManager o configurata tramite DHCP.

8.3.1.2. Il file /etc/hosts

Se non esiste un server dei nomi nella rete locale è possibile stabilire una piccola tabella per mappare gli indirizzi IP ai nomi delle macchine nel file /etc/hosts, generalmente riservato per le postazioni della rete locale. La sintassi di questo file è molto semplice: ogni linea indica un indirizzo IP seguito dalla lista dei nomi associati (il primo «completamente qualificato», cioè con incluso il nome del dominio).
Questo file è disponibile anche quando la rete non è disponibile o quando i server DNS non sono raggiungibili, ma è realmente utile solo quando viene distribuito su tutte le macchine nella rete. La minima alterazione nelle corrispondenze richiede che il file sia aggiornato ovunque. Ecco perché /etc/hosts contiene generalmente solo le voci più importanti.
Questo file è sufficiente per una piccola rete non connessa ad Internet, ma con 5 macchine o più è raccomandato di installare un server DNS.