Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1
Routing
Allo scopo di fare comunicare due o più so:ore>, si individuano degli host che svolgono il ruolo di
router, che inoltrano pacche3 da una so:orete a un'altra. L'inoltro dei pacche3 viene
determinato in base all'indirizzo IP di des>nazione (Livello-3 dello stack TCP/IP)
L'host che svolge il ruolo di router quando riceve un pacche:o con un indirizzo IP di des>nazione
non suo, invece di scartarlo (azione effe:uata da un host comune), lo inoltra ad un altro router
secondo Regole di Rou5ng prestabilite.
Nel caso in cui il des>natario del pacche:o non faccia parte della so:orete dell'host, quest'ul>mo
inoltrerà il pacche:o ad un router prestabilito iden>ficato con il termine di gateway.
I problemi principali da risolvere all'interno delle configurazioni di rete che comprendono mul>ple
so:ore> (ad esempio quella nello schema precedente) sono:
§ Ogni router deve sapere come raggiungere ogni rete, sia quelle alle quali è connesso
dire:amente sia quelle a cui è connesso indire:amente (ad esempio, nello schema precedente
la comunicazione tra H1 e H3).
§ Ogni host deve sapere a quali router (gateway) della propria so:orete deve inviare i pacche3
in base alla des>nazione.
IP Forwarding
L'IP Forwarding, o inoltro IP, è il processo che perme:e a un disposi>vo di rete, come un router, di
acce:are pacche3 IP in arrivo e di inoltrarli alla des>nazione corre:a basandosi sulle informazioni
contenute nelle intestazioni dei pacche3.
È possibile controllare lo stato dell'IP Forwarding su un host tramite il comando:
§ Se il parametro è 0 (valore di default), l'IP Forwarding è disabilitato
$ sysctl net.ipv4.ip_forward
net.ipv4.ip forward = 0
Per abilitare la funzionalità di IP Forwarding temporaneamente si esegue il comando:
$ sysctl -w net.ipv4.ip_forward=1
net.ipv4.ip forward = 1
Per abilitare l'IP Forwarding in maniera permanente su un host, all'interno del file
/etc/sysctl.conf si modifica il campo net.ipv4.ip_forward impostandolo ad 1:
§ Al termine va effe:uato il riavvio del Network Manager per rendere effe3ve le modifiche
$ nano /etc/sysctl.conf
…
net.ipv4.ip_forward=1
…
$ service networking restart ← Riavvia i servizi di rete
Oppure:
$ sysctl -p /etc/sysctl.conf ← Legge e Applica le modifiche nel file specificato
2
Routing
Una Tabella di Rou5ng è una stru:ura da> u>lizzata da router, gateway e computer per
determinare il percorso più ada:o per l'inoltro dei pacche3 di da> in una rete.
Essa con>ene informazioni sui percorsi di rete, compreso l'indirizzo IP di des>nazione, la so:orete
di des>nazione, l'indirizzo IP del gateway (il "next hop") e l'interfaccia di rete da u>lizzare per
inviare i pacche3 a quella des>nazione.
Quando un pacche:o arriva a un disposi>vo, la tabella di rou>ng viene consultata per decidere
dove inviare il pacche:o successivamente. Se la des>nazione finale del pacche:o è all'interno della
stessa rete del disposi>vo, il pacche:o viene inviato dire:amente all'host di des>nazione. Se la
des>nazione finale è in un'altra rete, il pacche:o viene inviato al gateway appropriato per essere
inoltrato alla rete di des>nazione.
Il target di des>nazione può essere una Subnet o un Host, inoltre, è possibile impostare un
Gateway di Default per tu:e le des>nazioni target che non soddisfano nessuna delle des>nazioni
presen> nella Tabella di Rou>ng.
§ le des>nazioni nella tabella sono definite da NetID + Subnet Mask, e non solo da "Destination"
3
Routing
Aggiungere Regole di Routing
Le regole di rou>ng, memorizzate nella tabella di rou>ng, determinano come i pacche3 di da>
vengono indirizza> tra diverse so:ore> all'interno di una rete, oppure tra la rete locale e altre re>,
incluso Internet. Queste regole possono essere configurate per o3mizzare il flusso del traffico di
rete, migliorare la sicurezza, bilanciare il carico, e soddisfare altre esigenze specifiche.
Configurazione Permanente
Per rendere permanen> le Tabelle di Rou>ng si agisce sui blocchi delle interfacce all'interno del file
/etc/network/interfaces. Il Default Gateway è impostato tramite il comando gateway,
mentre altre Regole di Rou>ng possono essere impostate tramite la dire3va post-up, che
esegue un comando in seguito all'a3vazione dell'interfaccia.
Esempio:
$ nano /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
gateway 192.168.1.254
post-up route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.1.253
4
Routing
Rete con IP Forwarding (3 Host – 2 Switch)
Si configuri la rete presente nel seguente scenario:
Soluzione:
Rete Marionnet
1. Machine: H1, H2, H3
2. Machine > Modify > H2 > Ethernet cards = 2
3. Switch: S1, S2
4. Straight cable: d1 [H1 to S1], d2 [H2 to S1], d3 [H2 to S2], d4 [H3 to S2]
§ Then press the [Start all] bu:on.
Con>nuazione →
5
Routing
Rete con IP Forwarding (3 Host – 2 Switch)
Configurazione delle Interfacce di Rete
§ H1 Terminal
$ nano /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
$ ifup eth0
§ H2 Terminal
$ nano /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.1.254
netmask 255.255.255.0
auto eth1
iface eth1 inet static
address 192.168.2.254
netmask 255.255.255.0
$ ifup eth0 eth1
§ H3 Terminal
$ nano /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.2.1
netmask 255.255.255.0
$ ifup eth0
Abilitazione IP Forwarding
§ H2 Terminal
$ sysctl -w net.ipv4.ip_forward=1 ← Abilitazione dell'IP Forwarding temp.
net.ipv4.ip forward = 1
6
Routing
Rete con IP Forwarding (4 Host – 3 Switch)
Estendere la configurazione precedente rete per consen>re la comunicazione fra i nodi della
seguente rete:
Soluzione:
Rete Marionnet
1. Machine > Modify > H3 > Ethernet cards = 2
2. Machine: H4
3. Switch: S3
4. Straight cable: d4 [H3 (eth1) to S2], d5 [H3 (eth0) to S3], d6 [H4 to S3]
§ Then press the [Start all] bu:on.
Con>nuazione →
7
Routing
Rete con IP Forwarding (4 Host – 3 Switch)
auto eth1
iface eth1 inet static
address 192.168.2.254
netmask 255.255.255.0
post-up route add -net 192.168.3.0 netmask 255.255.255.0 gw 192.168.2.1
$ ifup eth0 eth1
§ H3 Terminal
$ nano /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.3.1
netmask 255.255.255.0
auto eth1
iface eth1 inet static
address 192.168.2.1
netmask 255.255.255.0
post-up route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.2.254
$ ifup eth0 eth1
§ H4 Terminal
$ nano /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.3.2
netmask 255.255.255.0
post-up route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.3.1
post-up route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.3.1
$ ifup eth0
Con>nuazione →
8
Routing
Rete con IP Forwarding (4 Host – 3 Switch)
Abilitazione IP Forwarding
§ H2 Terminal
$ sysctl -w net.ipv4.ip_forward=1
net.ipv4.ip forward = 1
§ H3 Terminal
$ sysctl -w net.ipv4.ip_forward=1
net.ipv4.ip forward = 1