Ubuntu è corredato da una serie di utilità grafiche per la configurazione dei dispositivi di rete. Questa sezione è diretta agli amministratori di server e si focalizza sulla gestione della rete da riga di comando.
La maggior parte delle configurazioni relative alla rete Ethernet avvengono in un unico file: etc/network/interfaces
. Se non vi sono dispositivi Ethernet, in quel file sarà presente la sola interfaccia di loopback e sarà simile a quanto segue:
# 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 è presente un solo dispositivo Ethernet, eth0, riceve la configurazione da un server DHCP e deve venir abilitato automaticamente all'avvio, sono richieste solo due righe aggiuntive:
auto eth0 iface eth0 inet dhcp
La prima riga specifica che il dispositivo eth0 deve attivarsi all'avvio, la seconda che l'interfaccia («iface») eth0 deve avere un indirizzo di tipo IPv4 (sostituire «inet» con «inet6» per un dispositivo IPv6) e che deve ottenere la propria configurazione automaticamente da DHCP. Se il server DHCP e la rete sono configurati correttamente, non sono necessarie altre configurazioni, il server DHCP fornirà il gateway predefinito (attraverso il comando route), l'indirizzo IP del dispositivo (attraverso il comando ifconfig) e il server DNS usato nella rete (nel file /etc/resolv.conf
).
Per configurare il dispositivo Ethernet con un indirizzo IP statico, sono necessarie alcune informazioni in più. Si presuppone che si voglia assegnare l'indirizzo IP 192.168.0.2 al device eth1, con la tipica maschera di rete di 255.255.255.0 e l'indirizzo del gateway è 192.168.0.1. Bisogna inserire quindi quanto segue nel file /etc/network/interfaces
:
iface eth1 inet static address 192.168.0.2 netmask 255.255.255.0 gateway 192.168.0.1
In questo caso è necessario specificare il server DNS manualmente in /etc/resolv.conf
:
search miodominio.example nameserver 192.168.0.1 nameserver 4.2.2.2
La direttiva search aggiunge mydomain.example alle interrogazioni sul nome host per risolvere i nomi della propria rete. Per esempio, se il dominio della rete è mydomain.example e si prova a eseguire ping sull'host «mybox», l'interrogazione DNS viene modificata in «mybox.mydomain.example». Le direttive nameserver specificano quali server DNS devono essere usati per risolvere i nomi hsot in indirizzi IP. Se si utilizzano dei server dei nomi personalizzati, inserirli qui, altrimenti chiedere al proprio fornitore di servizi Internet il DNS primario e secondario e inserirli in /etc/resolv.conf
.
È 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.
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.
Per gestire i record DNS, è possibile aggiungere, modificare o rimuovere i nomi DNS dal file /etc/resolv.conf
. Viene fornito un semplice file di esempio:
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 a 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. |
Per la gestione degli host è possibile aggiungere, modificare o rimuovere gli host dal file /etc/hosts
, contenente gli indirizzi IP e il corrispondente nome host. Quando il sistema cerca di risolvere un nome host in un indirizzo IP, o determinare il nome host di un indirizzo IP, fa riferimento al file /etc/hosts
prima di usare i server dei nomi. Se l'indirizzo IP è presente in /etc/hosts
, i server dei nomi non vengono nemmeno usati. Questo comportamento può essere cambiato modificando il file /etc/nsswitch.conf
a seconda delle proprie esigenze.
Se la rete comprende dei computer i cui indirizzi IP non sono elencati nel DNS, è consigliabile aggiungerli al file /etc/hosts
.
Il "bridging" di molteplici interfacce è una configurazione avanzata, ma utile in diversi scenari. Uno di questi scenari può consistere nel configurare un bridge con molteplici interfacce di rete e usare un firewall per filtrare il traffico tra due segmenti della rete. Un altro scenario consiste nell'usare un bridge su un sistema con una sola interfaccia per permettere alle macchine virtuali accesso diretto alla rete esterna. L'esempio che segue prende in considerazione quest'ultimo scenario.
Prima di configurare un bridge è necessario installare il pacchetto bridge-utils. In un terminale digitare:
sudo apt-get install bridge-utils
Configurare il bridge modificando il file /etc/network/interfaces
:
auto lo iface lo inet loopback auto br0 iface br0 inet static address 192.168.0.10 network 192.168.0.0 netmask 255.255.255.0 broadcast 192.168.0.255 gateway 192.168.0.1 bridge_ports eth0 bridge_fd 9 bridge_hello 2 bridge_maxage 12 bridge_stp off
![]() |
|
Inserire i valori appropriati per la propria interfaccia di rete. |
Riavviare la rete per abilitare il bridge sull'interfaccia:
sudo /etc/init.d/networking restart
La nuova interfaccia dovrebbe ora essere funzionante. L'applicazione brctl fornisce utili informazioni riguardo lo stato del bridge, controlla le interfacce che compongono il bridge, ecc... Per maggiori informazioni, consultare la pagina di manuale: man brctl.
-
La pagina man di interfaces dispone di maggiori dettagli sulle molte opzioni di
/etc/network/interfaces
. -
Per maggiori informazioni riguardo la configurazione DNS dei client, consultare la pagina man di resolver. Anche il capitolo 6 del libro Linux Network Administrator's Guide è un'ottima fonte di informazioni per configurazioni DNS.
-
Per maggiori informazioni riguardo il bridging, consultare la pagina man di brctl e la pagina riguardo Net:Bridge della Linux Foundation.