Ricerca nel sito web

Come configurare la rete tra la VM guest e l'host in Oracle VirtualBox


Dopo aver installato diversi sistemi operativi in Oracle VirtualBox, potresti voler abilitare la comunicazione tra l'host e le macchine virtuali.

In questo articolo descriveremo il metodo più semplice e diretto per configurare una rete per macchine virtuali guest e host in Linux.

Ai fini di questo tutorial:

  1. Sistema operativo host: Linux Mint 18
  2. Sistema operativo della macchina virtuale: CentOS 7 e Ubuntu 16.10

Requisiti

  1. Un Oracle Virtualbox funzionante installato sul computer host.
  2. Devi aver installato un sistema operativo guest come Ubuntu, Fedora, CentOS, Linux Mint o uno qualsiasi di tua scelta nella scatola virtuale Oracle.
  3. Spegni le macchine virtuali mentre esegui le configurazioni fino al passaggio in cui è necessario accenderle.

Affinché le macchine ospite e host possano comunicare, devono trovarsi sulla stessa rete e, per impostazione predefinita, puoi collegare fino a quattro schede di rete alle macchine ospite.

La scheda di rete predefinita (Adattatore 1) viene normalmente utilizzata per connettere i computer ospiti a Internet utilizzando NAT tramite il computer host.

Importante: imposta sempre il primo adattatore per comunicare con l'host e il secondo adattatore per connettersi a Internet.

Crea una rete per ospiti e macchina host

Nell'interfaccia del gestore Virtualbox di seguito, inizia creando una rete su cui opereranno l'host e gli ospiti.

Vai su File –> Preferenze o premi Ctrl + G:

Dalla seguente interfaccia sono disponibili due opzioni; scegli Reti solo host facendo clic su di esso. Quindi utilizza il segno + a destra per aggiungere una nuova rete solo host.

Di seguito è riportata una schermata che mostra che è stata creata una nuova rete solo host denominata vboxnet0.

Se vuoi, puoi rimuoverlo utilizzando il pulsante - al centro e per visualizzare i dettagli/impostazioni della rete, fai clic sul pulsante modifica.

Puoi anche modificare i valori secondo le tue preferenze, come l'indirizzo di rete, la maschera di rete, ecc.

Nota: l'indirizzo IPv4 nell'interfaccia sottostante è l'indirizzo IP del tuo computer host.

Nella prossima interfaccia, puoi configurare il server DHCP, ovvero se desideri che le macchine guest utilizzino un indirizzo IP dinamico (assicurati che sia abilitato prima di utilizzarlo). Ma consiglio di utilizzare un indirizzo IP statico per le macchine virtuali.

Ora fai clic su OK su tutte le interfacce delle impostazioni di rete di seguito per salvare le modifiche.

Configura le impostazioni di rete della macchina virtuale

Nota: puoi seguire i passaggi seguenti per ogni macchina virtuale che desideri aggiungere alla rete per comunicare con la macchina host.

Torna all'interfaccia del gestore della casella virtuale, seleziona la tua macchina virtuale ospite come il server Ubuntu 16.10 o CentOS 7 e fai clic sul menu Impostazioni.

Configura l'adattatore per connettere la macchina virtuale all'host

Scegli l'opzione Rete dall'interfaccia in alto. Successivamente, configura la prima scheda di rete (Adattatore 1) con le seguenti impostazioni:

  1. Seleziona l'opzione: "Abilita adattatore di rete" per attivarlo.
  2. Nel campo Allegato a: seleziona Adattatore solo host
  3. Quindi seleziona il nome della rete: vboxnet0

Come nella schermata qui sotto, fai clic su OK per salvare le impostazioni:

Configura l'adattatore per connettere la macchina virtuale a Internet

Quindi aggiungi una seconda scheda di rete (Adattatore 2) per connettere la macchina virtuale a Internet tramite l'host. Utilizza le impostazioni seguenti:

  1. Seleziona l'opzione: "Abilita adattatore di rete" per attivarlo.
  2. Nel campo Allegato a: seleziona NAT

Imposta l'indirizzo IP statico per la macchina virtuale guest

A questo punto, accendi la macchina virtuale guest, accedi e configura l'indirizzo IP statico. Esegui il comando seguente per mostrare tutte le interfacce sul computer guest e gli indirizzi IP allocati:

ip add

Dalla schermata sopra, puoi vedere che ci sono tre interfacce abilitate sulla macchina virtuale:

  1. lo – interfaccia di loopback
  2. enp0s3 (adattatore 1) – per la comunicazione solo host che utilizza il DHCP impostato in uno dei passaggi precedenti e successivamente configurato con un indirizzo IP statico.
  3. enp0s8 (Adattatore 2) – per la connessione a Internet. Utilizzerà DHCP per impostazione predefinita.
Su Debian/Ubuntu/Linux Mint

Importante: qui ho utilizzato il server Ubuntu 16.10: indirizzo IP: 192.168.56.5.

Apri il file /etc/network/interfaces utilizzando il tuo editor preferito con privilegi di superutente:

sudo vi /etc/network/interfaces

Utilizza le seguenti impostazioni per l'interfaccia enp0s3 (utilizza i tuoi valori preferiti qui):

auto  enp0s3
iface enp0s3 inet static
address  192.168.56.5
network  192.168.56.0
netmask  255.255.255.0
gateway  192.168.56.1
dns-nameservers  8.8.8.8  192.168.56.1

Salvare il file ed uscire.

Quindi riavvia i servizi di rete in questo modo:

sudo systemctl restart networking

In alternativa, riavvia il sistema e controlla attentamente se l'interfaccia utilizza i nuovi indirizzi IP:

ip add
Su RHEL/CentOS/Fedora

Importante: per questa sezione ho utilizzato CentOS 7: indirizzo IP: 192.168.56.10.

Inizia aprendo il file per enp0s3 – interfaccia di rete solo host; /etc/sysconfig/network-scripts/ifcfg-enp0s3 utilizzando il tuo editor preferito con privilegi di superutente:

sudo vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

Crea/modifica le seguenti impostazioni (usa i tuoi valori preferiti qui):

BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.56.10
NETWORK=192.168.56.0
NETMASK=255.255.255.0
GATEWAY=192.168.56.1
DNS=8.8.8.8 192.168.56.1
NM_CONTROLLED=no     #use this file not network manager to manage interface

Salvare il file ed uscire. Quindi riavvia il servizio di rete come segue (puoi anche riavviare):

sudo systemctl restart network.service 

Controlla se l'interfaccia utilizza i nuovi indirizzi IP come segue:

ip add

Gestisci macchine virtuali dall'host utilizzando SSH

Sulla macchina host, utilizza SSH per gestire le tue macchine virtuali. Nell'esempio seguente, sto accedendo al server CentOS 7 (192.168.56.10) utilizzando SSH:

ssh [email 
who

Questo è tutto! In questo post, abbiamo descritto un metodo semplice per configurare una rete tra una macchina virtuale ospite e l'host. Condividi le tue opinioni su questo tutorial utilizzando la sezione feedback di seguito.