## Configurazione della rete

Ubuntu è corredato da una serie d'utilità grafiche per la configurazione dei dispositivi di rete. Questo documento è diretto agli amministratori di server e si focalizza sulla gestione della rete da riga di comando.

### Ethernet

La maggior parte delle configurazioni ethernet sono concentrate in un unico file, `/etc/network/interfaces`. Se non si dispone di dispositivi ethernet, in questo file sarà presente solo l'interfaccia di loopback e il contenuto sarà simile a questo:

    # This file describes the network interfaces available on your system
    # and how to activate them. For more information, see interfaces(5).

    # The loopback network interface
    auto lo
    iface lo inet loopback
    address 127.0.0.1
    netmask 255.0.0.0

Se si dispone di un unico dispositivo ethernet, eth0, e questo riceve la configurazione da un server DHCP e deve essere attivato automaticamente all'avvio, servono solamente due righe aggiuntive:

    auto eth0
    iface eth0 inet dhcp

La prima riga specifica che il dispositivo eth0 deve essere attivato all'avvio, la seconda stabilisce che l'interfaccia (“iface”) eth0 deve avere uno spazio di indirizzi IPv4 (sostituire “inet” con “inet6” per un dispositivo IPv6) e che questo deve ottenere la sua configurazione automaticamente da un server DHCP. Assumendo che la rete e il server DHCP siano correttamente configurati, la rete di questa macchina non dovrebbe necessitare di ulteriori configurazioni per funzionare correttamente. Il server DHCP fornirà il gateway di base (tramite il comando route), l'indirizzo IP del dispositivo (tramite il comando ifconfig) e i server DNS usati nella rete (attraverso il file `/etc/resolv.conf`).

Per configurare il proprio dispositivo ethernet con un indirizzo IP statico e una configurazione personalizzata, sono richieste ulteriori informazioni. Supponiamo di voler assegnare al dispositivo eth1 l'indirizzo IP 192.168.0.2, con una maschera di rete di 255.255.255.0. L'indirizzo IP del proprio gateway di base è 192.168.0.1. Nel file `/etc/network/interfaces` è necessario aggiungere qualcosa come:

    iface eth1 inet static
    	address 192.168.0.2
    	netmask 255.255.255.0
    	gateway 192.168.0.1

In questo caso è necessario specificare manualmente i server DNS nel file `/etc/resolv.conf`, che dovrebbe apparire simile a questo:

    search mydomain.example
    nameserver 192.168.0.1
    nameserver 4.2.2.2

La direttiva search farà in modo di aggiungere mydomain.example alle richieste di hostname per poter risolvere i nomi della rete. Per esempio, se il dominio della rete è mydomain.example e si cerca di eseguire il ping verso l'ospite “mybox”, la richiesta del DNS verrà modificata in “mybox.mydomain.example” per la risoluzione del nome. Le direttive nameserver specificano i server DNS da utilizzare per risolvere i nomi degli host in indirizzi IP. Se viene usato un proprio server dei nomi, inserirlo qui, altrimenti chiedere al provider di servizi internet per i server DNS primario e secondario da utilizzare. Questi devono essere inseriti nel file `/etc/resolv.conf` come spiegato precedentemente.

È possibile realizzare molte altre configurazioni, incluse quelle per le interfacce PPP dialup, le reti IPv6, i dispositivi VPN, ecc. Fare riferimento a man 5 interfaces per maggiori informazioni e per le opzioni supportate. Notare che `/etc/network/interfaces` è usato dagli script ifup/ifdown come schema di configurazione a un livello più alto rispetto ad altre distribuzioni Linux e che le tradizionali utilità di livello inferiore, come ifconfig, route e dhclient sono sempre disponibili per una configurazione ottimale.

### Gestione dei record DNS

Questa sezione spiega come configurare un server dei nomi da usare quando devono essere risolti gli indirizzi IP in nomi host e viceversa. Non viene spiegato come configurare il sistema per usarlo come server dei nomi.

Nel gestire i record DNS, è possibile aggiungere, modificare o rimuovere i nomi DNS dal file `/etc/resolv.conf`. Un

    search com
    nameserver 204.11.126.131
    nameserver 64.125.134.133
    nameserver 64.125.134.132
    nameserver 208.185.179.218

Il campo search specifica la stringa che deve essere aggiunta ad un nome host incompleto. Qui è stato configurato per essere un dominio com. Così eseguendo: ping ubuntu viene interpretato come ping ubuntu.com.

Il campo nameserver specifica l'indirizzo IP del server dei nomi che viene utilizzato per risolvere gli indirizzi IP in nomi host. Questo file può avere vari server dei nomi e saranno usati dalle richieste di rete nello stesso ordine.

Se i server dei nomi DNS sono ottenuti dinamicamente tramite DHCP o PPPoE (forniti dal proprio ISP), non aggiungere server dei nomi in questo file o verranno sovrascritti.

Le modifiche fatte nel file `/etc/resolv.conf` saranno cancellate al riavvio della macchina. Per rendere permanenti le modifiche, installare il pacchetto resolvconf dal repository Universe e aggiornare le informazioni sui DNS nel file `/etc/resolvconf/resolv.conf.d/base` fornito col pacchetto.

### Gestione degli host

Nel gestire gli host, è possibile aggiungere, modificare o rimuovere gli host dal file `/etc/hosts`. Il file contiene indirizzi IP e i loro corrispettivi nomi di host. Quando il sistema tenta di risolvere un nome di host in un indirizzo IP oppure di determinare il nome di host per un indirizzo IP, viene fatto riferimento al file `/etc/hosts` prima di usare i server di nomi. Se l'indirizzo IP è elencato nel file `/etc/hosts`, i server di nomi non vengono utilizzati. Questo comportamento può essere modificato editando il file `/etc/nsswitch.conf` a proprio rischio e pericolo.

Se la rete comprende dei computer i cui indirizzi IP non sono elencati nel DNS, è consigliabile aggiungerli al file `/etc/hosts`.

Capitolo 2. Rete |  | TCP/IP