VirtualBox: creazione di una rete virtuale: differenze tra le versioni

m
nessun oggetto della modifica
mNessun oggetto della modifica
Riga 7: Riga 7:
Una volta realizzata la struttura, sarà possibile provare a creare server proxy, [[Un server DNS e DHCP su Debian | DHCP, DNS]], [[Samba e OpenLDAP: creare un controller di dominio con Debian Lenny | LDAP]], [[Condivisione risorse con Samba | condivisioni samba]] e quant'altro.
Una volta realizzata la struttura, sarà possibile provare a creare server proxy, [[Un server DNS e DHCP su Debian | DHCP, DNS]], [[Samba e OpenLDAP: creare un controller di dominio con Debian Lenny | LDAP]], [[Condivisione risorse con Samba | condivisioni samba]] e quant'altro.


'''Nota''': In alternativa, utilizzando le ultime versioni di Virtualbox, e` possibile sfruttare il supporto nativo per VDE (Virtual Distributed Ethernet) che consente di creare reti virtuali piu` complesse, reti ibride (reali+virtuali), reti condivise tra diversi software di virtualizzazione (kvm, qemu, umlinux, bochs, etc.). Per maggiori informazioni sul supporto nativo VDE: [http://wiki.virtualsquare.org/index.php/VDE_native_support_for_VirtualBox sul wiki del progetto Virtualsquare] (in inglese).
{{Box|Nota|In alternativa, utilizzando le ultime versioni di Virtualbox, è possibile sfruttare il supporto nativo per VDE (Virtual Distributed Ethernet) che consente di creare reti virtuali più complesse, reti ibride (reali+virtuali), reti condivise tra diversi software di virtualizzazione (kvm, qemu, umlinux, bochs, etc.). Per maggiori informazioni sul supporto nativo VDE: [http://wiki.virtualsquare.org/index.php/VDE_native_support_for_VirtualBox sul wiki del progetto Virtualsquare] (in inglese).}}


== Requisiti ==
== Requisiti ==
Il software utilizzato è [http://www.virtualbox.org VirtualBox], installato dai repository degli sviluppatori ed al momento della stesura della guida alla versione 3.0.8. Nonostante la versione 3.0 offra la possibilità di fare quanto segue in maniera automatica, si sceglie comunque di procedere manualmente per meglio comprendere quanto accade.<br/>
Il software utilizzato è [http://www.virtualbox.org VirtualBox], installato dai repository degli sviluppatori ed al momento della stesura della guida alla versione 3.0.8. Nonostante la versione 3.0 offra la possibilità di fare quanto segue in maniera automatica, si sceglie comunque di procedere manualmente per meglio comprendere quanto accade.
Per la configurazione dei repository di VirtualBox e per l'installazione del software si segua ad esempio questa guida: [[Installare Virtualbox su un server Debian senza X]]
 
<br/>
Per la configurazione dei repository di VirtualBox e per l'installazione del software si segua ad esempio questa guida: [[Installare Virtualbox su un server Debian senza X]].
 
È inoltre necessario installare il pacchetto [http://packages.debian.org/lenny/bridge-utils bridge-utils] presente nei repository standard di Debian.
È inoltre necessario installare il pacchetto [http://packages.debian.org/lenny/bridge-utils bridge-utils] presente nei repository standard di Debian.


== Installazione delle macchine virtuali ==
== Installazione delle macchine virtuali ==
Per la creazione delle tre macchine virtuali (ovviamente Debian-powered!) si rimanda ad altre guide, il procedimento è piuttosto semplice e non richiede spiegazioni aggiuntiva. Si abbia solo l'accortezza di configurare le reti delle macchine virtuali come NAT, in questo modo non ci saranno problemi durante l'installazione. Questa configurazione sarà poi modificata più avanti.
Per la creazione delle tre macchine virtuali (ovviamente Debian-powered!) si rimanda ad altre guide; il procedimento è piuttosto semplice e non richiede spiegazioni aggiuntiva. Si abbia solo l'accortezza di configurare le reti delle macchine virtuali come NAT, in questo modo non ci saranno problemi durante l'installazione. Questa configurazione sarà poi modificata più avanti.


== Realizzazione delle interfacce virtuali ==
== Realizzazione delle interfacce virtuali ==
Riga 91: Riga 92:


== Configurazione delle macchine virtuali ==
== Configurazione delle macchine virtuali ==
Si utilizzi la GUI di Virtualbox per assegnare <code>''tap0''</code> e <code>''tap1''</code> al server, <code>''tap2''</code> al primo client e <code>''tap3''</code> al secondo. Si rimanda alla documentazione di Virtualbox per la configurazione delle interfacce di rete delle macchine guest come [http://www.virtualbox.org/manual/UserManual.html#id2513808 Schede con bridge].
Si utilizzi la GUI di Virtualbox per assegnare <code>''tap0''</code> e <code>''tap1''</code> al server, <code>''tap2''</code> al primo client e <code>''tap3''</code> al secondo. Si rimanda alla documentazione di Virtualbox per la configurazione delle interfacce di rete delle macchine guest come [http://www.virtualbox.org/manual/UserManual.html#id2513808 Schede con bridge].


Una volta avviate le tre macchine virtuali è necessario configurarle come segue.
Una volta avviate le tre macchine virtuali è necessario configurarle come segue.
Riga 161: Riga 160:
nameserver 10.1.2.2 # Il server sarà poi configurato per fornire il servizio DNS
nameserver 10.1.2.2 # Il server sarà poi configurato per fornire il servizio DNS
</pre>
</pre>


Dopo aver modificato la configurazione della rete, si impartisca su ogni macchina il comando:
Dopo aver modificato la configurazione della rete, si impartisca su ogni macchina il comando:
Riga 168: Riga 166:
/etc/init.d/networking restart
/etc/init.d/networking restart
</pre>
</pre>


== Abilitare la comunicazione verso l'esterno ==
== Abilitare la comunicazione verso l'esterno ==
La comunicazione verso l'esterno (host ed internet) è inibita. Per permettere al server di comunicare con l'host è necessario modificare le regole di iptables nel modo seguente.
La comunicazione verso l'esterno (host ed internet) è inibita. Per permettere al server di comunicare con l'host è necessario modificare le regole di iptables nel modo seguente.


Riga 181: Riga 177:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
</pre>
</pre>


Si noti che per quanto fatto finora l'unica macchina in grado di accedere all'esterno è il server. Sarà poi compito del server stesso fornire l'accesso ai suoi client.
Si noti che per quanto fatto finora l'unica macchina in grado di accedere all'esterno è il server. Sarà poi compito del server stesso fornire l'accesso ai suoi client.


== Test della rete ==
== Test della rete ==
Per verificare il corretto funzionamento della rete è sufficiente controllare di ottenere risposta ai seguenti comandi:
Per verificare il corretto funzionamento della rete è sufficiente controllare di ottenere risposta ai seguenti comandi:


Riga 212: Riga 205:
ping 10.1.2.3
ping 10.1.2.3
</pre>
</pre>


== Ripristinare la situazione iniziale ==
== Ripristinare la situazione iniziale ==
Una volta spente le macchine virtuali, per eliminare le interfacce virtuali è sufficiente digitare:
Una volta spente le macchine virtuali, per eliminare le interfacce virtuali è sufficiente digitare:


Riga 235: Riga 226:


== Gestire le interfacce tramite Script ==
== Gestire le interfacce tramite Script ==
Per evitare di digitare ogni volta i comandi di creazione e eliminazione delle interfacce virtuali è possibile realizzare un semplice script bash.
Per evitare di digitare ogni volta i comandi di creazione e eliminazione delle interfacce virtuali è possibile realizzare un semplice script bash.
Si crei dunque un file di nome <code>''initmachines.sh''</code> e si copi all'interno il seguente codice:
Si crei dunque un file di nome <code>''initmachines.sh''</code> e si copi all'interno il seguente codice:
914

contributi