Introduzione alla rete
Una rete è un insieme di dispositivi e componenti hardware e software che si connettono tra loro per scambiare dati e condividere risorse. Le reti possono essere di diversi tipi, dimensioni e scopi, ma hanno in comune l’obiettivo di consentire la comunicazione e lo scambio di informazioni tra i dispositivi collegati.
Le reti possono essere suddivise in base alla loro estensione geografica:
- LAN (Local Area Network): una rete locale, di solito limitata a una zona geografica ristretta, come un ufficio, un edificio o una casa.
- WAN (Wide Area Network): una rete a larga distanza, che si estende su una vasta area geografica, come una città, un paese o persino il mondo intero.
- MAN (Metropolitan Area Network): una rete metropolitana, che copre una zona urbana o metropolitana.
Le reti possono anche essere classificate in base alla loro topologia:
- a stella: tutti i dispositivi sono collegati a un hub o a uno switch centrale.
- a maglia (mesh): tutti i dispositivi sono collegati tra loro in modo diretto.
- ad anello (ring): i dispositivi sono collegati in un anello chiuso.
- ad albero (tree): i dispositivi sono collegati in modo gerarchico, simile ad una struttura ad albero.
Le reti possono essere utilizzate per molti scopi diversi, tra cui:
- la condivisione di risorse come file, stampanti e dati
- l’accesso a Internet e la navigazione web
- la comunicazione tra dispositivi, come la messaggistica e la videoconferenza
- il controllo di dispositivi, come la domotica e l’automazione industriale
Le reti sono supportate da una vasta gamma di tecnologie, protocolli e standard, come ad esempio Ethernet, Wi-Fi, TCP/IP e HTTP. La loro implementazione richiede una pianificazione accurata, la configurazione e l’installazione dei dispositivi di rete e la gestione della sicurezza e della manutenzione della rete stessa.
TCP/IP
Il protocollo TCP/IP (Transmission Control Protocol e Internet Protocol) è un insieme standard di protocolli sviluppato nella seconda metà degli anni ’70 dalla DARPA (Defence Advanced Research Project Agency) con lo scopo di permettere la comunicazione tra diversi tipi di computer e di reti di computer. TCP/IP è il motore di Internet, ecco perché è l’insieme di protocolli di rete più diffuso al mondo.
Introduzione a TCP/IP
I due protocolli che compongono TCP/IP, interagiscono con differenti aspetti di una rete. L’Internet Protocol, la parte “IP” di TCP/IP, è un protocollo privo di connessione che interagisce solamente con il routing dei pacchetti attraverso la rete, usando l’IP Datagram come unità di base delle informazioni che consiste in un’intestazione seguita da un messaggio. Il Transmission Control Protocol, la parte “TCP” di TCP/IP, consente agli host della rete di stabilire le connessioni che possono essere usate per scambiare dati. Inoltre, garantisce che i dati tra le connessioni siano consegnati correttamente e nello stesso ordine in cui sono stati inviati.
Configurazione di TCP/IP
La configurazione del protocollo TCP/IP è composta da vari elementi che debbono essere impostati modificando gli appropriati file di configurazione oppure adottando soluzioni quali un server DHCP (Dynamic Host Configuration Protocol); tale server provvede ad assegnare automaticamente le corrette impostazioni di configurazione TCP/IP ai client della rete. Questi valori di configurazione debbono essere impostati correttamente per consentire al sistema Ubuntu di operare adeguatamente in rete.
I tipici elementi di configurazione di TCP/IP e i loro scopi sono i seguenti:
- Indirizzo IP: l’indirizzo IP è una stringa d’identificazione unica, espressa da quattro numeri decimali compresi tra zero (0) e duecentocinquantacinque (255), separati da punti; ciascuno dei quattro numeri rappresenta otto (8) bit dell’indirizzo per una lunghezza totale di trentadue (32) bit per l’indirizzo completo. Questo formato è detto notazione decimale a punti.
- Maschera di rete: la maschera di rete (o semplicemente netmask) è una maschera locale di bit, ovvero un insieme di indicatori che separano la porzione di un indirizzo IP che indica la rete dai bit che indicano la sotto-rete. Ad esempio, in una rete di classe C, la maschera di rete standard è 255.255.255.0 che serve a mascherare i primi tre byte dell’indirizzo IP, consentendo all’ultimo byte dell’indirizzo IP di essere disponibile per specificare gli host della sotto-rete.
- Indirizzo di rete: l’indirizzo di rete è dato dai byte che comprendono la parte di rete di un indirizzo IP. Per esempio, l’host 12.128.1.2 in una rete di classe A deve usare 12.0.0.0 come indirizzo di rete, dove dodici (12) è il primo byte dell’indirizzo IP (la parte di rete), e gli zeri (0) nei rimanenti tre byte indicano tutti i possibili valori degli host. Un host di rete che ha un indirizzo IP 192.168.1.100 deve invece usare un indirizzo di rete di 192.168.1.0, nel quale i primi tre byte specificano la rete di classe C 192.168.2 e lo zero (0) per tutti i possibili valori degli host nella rete.
- Indirizzo di broadcast: l’indirizzo di broadcast è un indirizzo IP che permette di inviare dei dati di rete simultaneamente a tutti gli host di una data sotto-rete piuttosto che a uno specifico host. L’indirizzo broadcast generale di base per una rete IP è 255.255.255.255, ma questo indirizzo broadcast non può essere usato per inviare un messaggio broadcast a tutti gli host presenti in internet perché i router lo bloccherebbero. Un indirizzo di broadcast appropriato è quello che indica una specifica sotto-rete. Per esempio, in una rete privata di classe C, 192.168.1.0, l’indirizzo broadcast è 192.168.1.255. I messaggi broadcast sono di norma prodotti dai protocolli di rete come il protocollo per la risoluzione degli indirizzi (ARP, Address Resolution Protocol) e il protocollo delle informazioni di instradamento (RIP, Routing Information Protocol).
- Indirizzo del gateway: l’indirizzo del gateway è l’indirizzo IP attraverso il quale una particolare rete, o un host su una rete, può essere raggiunta. Se un host di rete desidera comunicare con un altro host di rete, senza essere localizzato nelle stessa rete, allora deve essere usato un gateway. In molti casi l’indirizzo del gateway coincide con quello di un router della medesima rete che ha il compito di far transitare il traffico ad altre reti o host, come Internet. L’impostazione del valore dell’indirizzo del gateway deve essere corretta, altrimenti il sistema non è in grado di raggiungere gli host che non si trovano sulla rete cui appartiene.
- Indirizzo del server dei nomi: l’indirizzo del server dei nomi rappresenta l’indirizzo IP del sistema DNS (Domain Name Service) che traduce il nome host della rete in un indirizzo IP reale. Esistono tre livelli di indirizzo del server dei nomi che possono essere specificati in ordine di precedenza: il server dei nomi primario, quello secondario e il terziario. Affinché il sistema possa tradurre i nomi host in indirizzi IP, è necessario specificare degli indirizzi validi per i server dei nomi che è possibile utilizzare all’interno della configurazione TCP/IP del sistema. Nella maggior parte dei casi, questi indirizzi vengono forniti dal proprio fornitore di servizio Internet, ma ne sono disponibili anche di gratuiti e liberamente utilizzabili, come i server di terzo livello di Verizon con indirizzi IP da 4.2.2.1 a 4.2.2.6.
Gli indirizzi IP, le maschere di rete, gli indirizzi di rete, gli indirizzi di broadcast e gli indirizzi di gateway sono tipicamente determinati attraverso appropriate direttive nel file/etc/network/interfaces
. Gli indirizzi di server dei nomi sono tipicamente specificati attraverso le direttive nameserver nel file/etc/resolv.conf
. Per maggiori informazioni, consultare rispettivamente le pagine di manuale di sistema perinterfaces
eresolv.conf
, usando i seguenti comandi da digitare al prompt di un terminale:Accedere alla pagina di manuale di sistema perinterfaces
con il seguente comando:man interfaces Accedere alla pagina di manuale di sistema perresolv.conf
con il seguente comando: man resolv.conf
Instradamento IP
L’instradamento IP è un modo per indicare e scoprire percorsi in una rete TCP/IP attraverso i quali inviare dati. L’instradamento utilizza un insieme di tabelle di instradamento (routing) per dirigere i pacchetti di dati in una rete dalla loro sorgente avanti fino alla destinazione, spesso attraverso molti nodi di rete intermediari chiamati router. Esistono due forme primarie di instradamento IP: l’instradamento statico e l’instradamento dinamico.
L’instradamento statico comporta l’aggiunta manuale di rotte IP nella tabella di instradamento del sistema, attività che viene fatta modificando la tabella di instradamento con il comando route. L’instradamento statico presenta molti vantaggi rispetto quello dinamico, come la semplicità di implementazione per piccole reti, la predicibilità (la tabella di instradamento è scritta a priori, quindi la rotta è sempre la stessa ogni volta che viene utilizzata) e il basso carico di lavoro sugli altri router e nodi di rete dovuto all’assenza di un protocollo di instradamento dinamico. In ogni caso, l’instradamento statico presenta anche degli svantaggi. Per esempio, è limitato a piccole reti e non è facilmente espandibile. L’instradamento statico fallisce completamente se si prova ad adattarlo ai ritardi della rete e le perdite lungo la rotta per la natura statica della rotta stessa.
L’instradamento dinamico serve nelle grandi reti con molte possibili rotte IP tra una sorgente e una destinazione. Fa uso di protocolli di instradamento speciali, come il protocollo di informazione dell’instradamento (RIP, Router Information Protocol) che gestisce le correzioni automatiche nella tabella di instradamento rendendo possibile l’instradamento dinamico. Ci sono molti vantaggi rispetto l’instradamento statico, come l’adattamento alle dimensioni superiori e l’abilità di adattarsi agli errori e alle perdite lungo le rotte della rete. Inoltre, necessita di una minore configurazione manuale delle tabelle di instradamento, dato che i router comunicano tra di loro la relativa esistenza e le possibili rotte. Questo tratto caratteristico elimina anche la possibilità di introdurre inesattezze nelle tabelle di instradamento causate da errori umani. In ogni caso, l’instradamento dinamico non è perfetto e presenta alcuni svantaggi come, l’aumento della complessità e del carico di lavoro dovuto alle comunicazioni dei router della rete, dei quali non può beneficiare subito l’utente finale che comunque consuma banda di rete.
TCP e UDP
I protocolli TCP e UDP sono due dei principali protocolli di comunicazione utilizzati nella rete Internet. Entrambi sono protocolli di livello di trasporto, che forniscono servizi di trasmissione dati affidabili tra i dispositivi di rete.
TCP (Transmission Control Protocol) è un protocollo orientato alla connessione, che garantisce una trasmissione dati affidabile e senza errori. Utilizza un sistema di numerazione sequenziale per garantire che i pacchetti di dati vengano trasmessi e ricevuti nell’ordine corretto. Inoltre, TCP utilizza il meccanismo di “acknowledgment” (ACK) per garantire che ogni pacchetto di dati venga ricevuto correttamente prima di inviare il successivo. TCP è ampiamente utilizzato per applicazioni che richiedono un’elevata affidabilità e precisione, come l’invio di e-mail, la navigazione web e il trasferimento di file.
UDP (User Datagram Protocol), d’altra parte, è un protocollo senza connessione, che fornisce una trasmissione dati meno affidabile ma più veloce e flessibile. UDP non utilizza un sistema di numerazione sequenziale o ACK per garantire la consegna dei dati, il che significa che i pacchetti possono essere persi o duplicati senza alcun meccanismo di correzione degli errori integrato. Tuttavia, UDP ha una latenza inferiore rispetto a TCP ed è quindi preferito per applicazioni che richiedono una comunicazione a bassa latenza, come giochi online, streaming video e VoIP (Voice over Internet Protocol).
In generale, la scelta tra TCP e UDP dipende dalle esigenze specifiche dell’applicazione. Se la precisione e l’affidabilità sono fondamentali, TCP è la scelta migliore. Se invece la velocità e la flessibilità sono più importanti della precisione, UDP è la scelta migliore.
ICMP
ICMP (Internet Control Message Protocol) è un protocollo di livello di rete utilizzato per inviare messaggi di controllo e di errore tra i dispositivi di rete. ICMP è utilizzato per segnalare i problemi di rete come pacchetti persi, errori di routing, congestione di rete, ecc.
ICMP è spesso utilizzato dai router di rete per comunicare tra loro e per fornire informazioni sullo stato della rete. Ad esempio, un router può utilizzare ICMP per inviare messaggi di “ping” ad un altro dispositivo di rete, al fine di verificare la disponibilità della connessione.
ICMP funziona inviando un pacchetto di messaggio ICMP dal dispositivo mittente al dispositivo destinatario. Il pacchetto di messaggio contiene informazioni sulla natura del messaggio, come ad esempio l’identificatore, il numero di sequenza, il tipo di messaggio e la checksum.
ICMP può anche essere utilizzato per inviare messaggi di errore ai dispositivi di rete quando si verificano problemi nella trasmissione dei dati. Ad esempio, se un pacchetto di dati viene persi o non può essere consegnato, il dispositivo di rete destinatario può inviare un messaggio di errore ICMP al mittente per avvisarlo del problema.
In sintesi, ICMP è un protocollo di controllo di rete importante che fornisce una serie di funzionalità utili per monitorare e gestire la rete, nonché per segnalare problemi di comunicazione e di connettività tra i dispositivi di rete.
Demoni
In Linux e Unix, un demone (daemon) è un tipo di programma che viene eseguito in background come processo di sistema, senza interazione diretta con l’utente. I demoni vengono utilizzati per fornire una varietà di servizi di sistema, come ad esempio la gestione delle stampanti, la gestione dei servizi di rete, il monitoraggio delle attività di sistema, la gestione dei backup, la manutenzione del sistema, e molti altri.
I demoni sono eseguiti come processi di sistema a basso livello e di solito vengono avviati al momento dell’avvio del sistema o all’avvio di un servizio specifico. I demoni rimangono in esecuzione in background, senza richiedere l’interazione dell’utente, fino a quando il sistema viene spento o il servizio viene interrotto.
I demoni possono essere configurati per eseguire automaticamente determinate attività di sistema, ad esempio la scansione del sistema alla ricerca di virus o malware, la sincronizzazione dei dati, l’esecuzione di backup di sistema, ecc. Inoltre, i demoni possono essere configurati per avviare, arrestare o riavviare i servizi di sistema, come ad esempio il servizio di rete, il servizio web, il servizio di posta elettronica, ecc.
I demoni sono importanti componenti dei sistemi operativi Linux e Unix, poiché consentono di automatizzare molte attività di sistema e di fornire una gestione efficiente e affidabile dei servizi di sistema. Inoltre, grazie alla loro natura di processi di sistema a basso livello, i demoni offrono anche una maggiore sicurezza, poiché non richiedono l’interazione diretta dell’utente e non possono essere interrotti accidentalmente.
DHCP (Dynamic Host Configuration Protocol)
Il DHCP (Dynamic Host Configuration Protocol) è un protocollo di rete utilizzato per assegnare automaticamente gli indirizzi IP e altre informazioni di configurazione di rete ai dispositivi collegati ad una rete.
Il DHCP consente ai dispositivi di ottenere automaticamente gli indirizzi IP e le altre informazioni di configurazione di rete necessarie per connettersi alla rete, senza la necessità di una configurazione manuale. Ciò semplifica notevolmente la configurazione della rete e la gestione degli indirizzi IP, in particolare in reti con un gran numero di dispositivi.
Il processo di assegnazione dell’indirizzo IP attraverso il DHCP prevede la seguente procedura:
- Un dispositivo client invia una richiesta di assegnazione degli indirizzi IP alla rete.
- Il server DHCP riceve la richiesta del client e risponde inviando un pacchetto di offerta contenente un indirizzo IP disponibile e altre informazioni di configurazione di rete, come ad esempio l’indirizzo del gateway e dei server DNS.
- Il client riceve la risposta del server DHCP e accetta l’offerta dell’indirizzo IP.
- Il server DHCP conferma l’assegnazione dell’indirizzo IP al client e il client utilizza l’indirizzo IP per connettersi alla rete.
Il DHCP è utilizzato in molti ambienti di rete, inclusi gli ambienti aziendali e domestici. La sua implementazione semplifica notevolmente la gestione degli indirizzi IP e riduce il rischio di conflitti di indirizzo IP e di errori di configurazione della rete.
Le impostazioni comuni fornite da un server DHCP a un client includono:
- Indirizzo IP e maschera di rete
- DNS
- WINS
Un server DHCP può fornire anche altre proprietà di configurazione come:
- Nome dell’host
- Nome del dominio
- Gateway predefinito
- Server NTP (Network Time Protocol)
- Server di stampa
Il vantaggio di utilizzare DHCP è che i cambiamenti apportati alla rete, per esempio una modifica dell’indirizzo del server DNS, devono essere apportati solamente al server DHCP, mentre tutti gli host della rete vengono riconfigurati quando i client DHCP interrogano il server DHCP. Come ulteriore vantaggio, risulta anche molto semplice integrare nuovi computer nella rete, senza la necessità di controllare la disponibilità di un indirizzo IP. I conflitti nell’allocazione degli indirizzi IP sono quindi notevolmente ridotti.
Le impostazioni di configurazione sono fornite da un server DHCP usando due metodi:Indirizzo MAC
Questo metodo comporta l’utilizzo di DHCP per identificare l’indirizzo hardware univoco di ogni scheda di rete collegata alla rete, così da fornire in modo continuato una configurazione costante ogni volta che il client DHCP avanza una richiesta al server DHCP usando quel particolare dispositivo di rete.Spazio degli indirizzi
Questo metodo comporta la definizione di un insieme o intervallo di indirizzi IP (a volte indicati come pool) con cui configurare dinamicamente i client DHCP in base all’ordine di arrivo delle richieste (la prima che arriva è la prima servita, disciplina FIFO). Dopo un determinato periodo, se il client DHCP non è presente in rete, la configurazione scade e viene reinserita nello spazio di indirizzi per poter essere riutilizzata.
Ubuntu comprende sia un server che un client DHCP. Il server è dhcpd (dynamic host configuration protocol daemon). Il client fornito è dhclient e dovrebbe essere installato su tutti i computer che necessitano di essere configurati automaticamente. Entrambi i programmi sono facili da installare e da configurare e vengono lanciati automaticamente all’avvio del sistema.
Installazione
A un prompt di terminale, inserire il seguente comando per installare dhcpd:
$ sudo apt install dhcp3-server
È necessario modificare il file /etc/dhcp3/dhcpd.conf secondo le proprie necessità e per avere una configurazione particolare.
È inoltre necessario modificare il file /etc/default/dhcp3-server per specificare le interfacce su cui stare in ascolto. Di base è impostata l’interfaccia eth0.
I messaggi di dhcpd vengono inviati nel syslog, consultare quindi i relativi messaggi per quelli di diagnostica.
Configurazione
Il messaggio di errore con cui si conclude l’installazione potrebbe essere fuorviante, ma i passi seguenti consentono di configurare il servizio.
Nella maggior parte dei casi si vuole assegnare un indirizzo IP in modo casuale. Questo può essere ottenuto con impostazioni come le seguenti:
# Sample /etc/dhcpd.conf # (add your comments here) default-lease-time 600; max-lease-time 7200; option subnet-mask 255.255.255.0; option broadcast-address 192.168.1.255; option routers 192.168.1.254; option domain-name-servers 192.168.1.1, 192.168.1.2; option domain-name "miodominio.example"; subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.10 192.168.1.100; range 192.168.1.150 192.168.1.200; }
Come risultato si ottiene che il server DHCP fornisce a un client un indirizzo IP nell’intervallo 192.168.1.10 ~ 192.168.1.100 oppure 192.168.1.150 ~ 192.168.1.200. Se il client non richiede uno specifico intervallo di tempo, la durata di “affitto” di un indirizzo IP è di 600 secondi; in caso contrario il valore massimo (consentito) è di 7200 secondi. Il server inoltre “avvisa” il client di utilizzare 255.255.255.0 come maschera di sottorete, 192.168.1.255 come indirizzo di broadcast, 192.168.1.254 come gateway e 192.168.1.1 e 192.168.1.2 come server DNS.
Se è necessario specificare un server WINS per i client Windows, è necessario includere l’opzione netbios-name-servers, per esempio
option netbios-name-servers 192.168.1.1;
Le impostazioni di configurazione per dhcpd sono prese dal mini-HOWTO di DHCP, il quale può essere trovato qui.
Configurare la rete
Questa sezione è diretta agli amministratori di server e si focalizza sulla gestione della rete da riga di comando.
Ethernet
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.
Gestire i 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.
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. |
Gestione degli host
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
.
Bridging
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 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
Se si sta configurando un’interfaccia “bridge” usando la Ubuntu Desktop Edition oppure se dhcdbd è installato, il demone dhcdbd deve essere fermato e disabilitato.
Dopo aver configurato il “bridge” in /etc/network/interfaces
, arrestare dhcdbd:
$ sudo /etc/init.d/dhcdbd stop
Per fare in modo che non venga lanciato all’avvio, digitare:
$ sudo update-rc.d -f dhcdbd remove
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.
Riferimenti
Manualistica Ubuntu: Ubuntu Network Guides