In questo moderno mondo degli affari, il networking è un componente cruciale delle operazioni informatiche interattive. È difficile immaginare come scambiare dati tra computer senza reti in un mondo in cui tutto cambia a una velocità sempre crescente. Una delle idee centrali dietro la virtualizzazione hardware è la possibilità di utilizzare macchine virtuali in quasi tutti i casi in cui possono essere utilizzati anche computer fisici.
Pertanto, le macchine virtuali devono essere in grado di connettersi alle reti fisiche e virtuali con i loro adattatori di rete virtuali. Le macchine virtuali in esecuzione su VirtualBox possono essere collegate a reti diverse. VirtualBox fornisce molteplici modalità di rete per le macchine virtuali. Questo post del blog copre le impostazioni di rete di VirtualBox per aiutarti a configurare VirtualBox nel modo migliore possibile per soddisfare le tue esigenze.
Adattatori di Rete Virtuali
Ogni VM di VirtualBox può utilizzare fino a otto adattatori di rete virtuali, ciascuno dei quali a sua volta è chiamato controller di interfaccia di rete (NIC). Quattro adattatori di rete virtuali possono essere configurati nell’interfaccia grafica di VirtualBox. Tutti gli adattatori di rete virtuali (fino a 8) possono essere configurati con il comando VBoxManage modifyvm. VBoxManage è uno strumento di gestione a riga di comando di VirtualBox che può essere utilizzato per configurare tutte le impostazioni di VirtualBox, comprese le impostazioni di rete di VirtualBox. Le impostazioni dell’adattatore di rete di VirtualBox possono essere accessibili nelle impostazioni della macchina virtuale (seleziona la tua VM, premi Impostazioni e vai alla sezione Rete nella finestra delle impostazioni della VM).
Lì dovresti vedere quattro schede di adattatori. Un adattatore di rete virtuale è abilitato per impostazione predefinita dopo la creazione della macchina virtuale. Puoi spuntare la casella “Abilita Adattatore di Rete” per abilitare l’adattatore e deselezionare la casella per disabilitarlo (questa casella definisce se un dispositivo di adattatore di rete virtuale è connesso a una VM o meno).
Premi Avanzate per espandere le impostazioni avanzate dell’adattatore di rete di VirtualBox.
Tipi di Adattatori di Rete Virtuali in VirtualBox
A virtual network adapter is a software-emulated physical device. There are six virtual adapter types that can be virtualized by VirtualBox.
- AMD PCnet-PCI II (Am79C970A). Questo adattatore di rete si basa sulla scheda di rete AMD e può essere utilizzato in molte situazioni. Per i guest Windows, questo adattatore di rete può essere utilizzato per le vecchie versioni di Windows (come Windows 2000) perché le nuove versioni di Windows come Windows 7, 8 e 10 non contengono un driver integrato per questo adattatore. In origine, il dispositivo PCI Am79C970A conteneva un controller da 10 Mbit in un unico chip e l’engine DMA era integrato. Questo adattatore di rete supporta anche la tecnologia Magic Packet di AMD per il risveglio remoto.
- AMD PCnet-FAST III (Am79C973). Questo adattatore di rete virtualizzato è supportato da quasi tutti i sistemi operativi guest che possono essere eseguiti su VirtualBox. GRUB (il caricatore di avvio) può utilizzare questo adattatore per il boot di rete. Allo stesso modo dell’adattatore di rete precedente, questo si basa sulla scheda di rete AMD.
- Intel PRO/1000 MT Desktop (82540EM). Questo adattatore funziona perfettamente con Windows Vista e versioni più recenti di Windows. La maggior parte delle distribuzioni Linux supporta anche questo adattatore.
- Intel PRO/1000 T Server (82543GC). Windows XP riconosce questo adattatore senza installare driver aggiuntivi.
- Intel PRO/1000 MT Server (82545EM). Questo modello di adattatore è utile per importare modelli OVF da altre piattaforme e può facilitare il processo di importazione.
- Adattatore di rete paravirtualizzato (virtio-net) è un caso speciale. Invece di virtualizzare l’hardware di rete supportato dalla maggior parte dei sistemi operativi, un sistema operativo guest deve fornire un’interfaccia software speciale per gli ambienti virtualizzati. Questo approccio consente di evitare la complessità dell’emulazione dell’hardware di rete e, di conseguenza, può migliorare le prestazioni di rete.
I driver di rete virtIO, standard del settore, sono supportati da VirtualBox. I driver di rete virtIO fanno parte del progetto KVM e sono open-source. Questi driver sono disponibili per Linux con kernel 2.6.25 o successivo, e per Windows, comprese versioni più vecchie come Windows 2000, XP e Vista.
Supporto per frame jumbo
VirtualBox fornisce un supporto limitato per i frame jumbo (frame Ethernet che possono trasportare pacchetti di dimensioni superiori a 1.500 byte). Se è necessario utilizzare frame jumbo, selezionare un adattatore di rete virtualizzato Intel e configurare tale adattatore per lavorare in modalità bridge. Gli adattatori di rete virtuali basati su AMD non supportano i frame jumbo. Se si cerca di abilitare i frame jumbo per gli adattatori di rete virtuali basati su AMD, i frame jumbo verranno eliminati silenziosamente per il traffico in ingresso e in uscita. I frame jumbo sono disabilitati per impostazione predefinita.
Modalità di rete di VirtualBox
VirtualBox fornisce una lunga lista di modalità di rete, che è una delle caratteristiche più interessanti delle impostazioni di rete di VirtualBox. Ciascun adattatore di rete virtuale può essere configurato separatamente per operare in una modalità di rete diversa. Ad esempio, è possibile impostare la modalità NAT per l’adattatore 1 e la modalità Solo host per l’adattatore 2. È possibile selezionare la modalità di rete nel menu a discesa Collegato a.
Consideriamo ora ogni modalità di rete di VirtualBox in dettaglio.
Non collegato
A virtual network adapter is installed in a VM, but the network connection is missing, much like when you unplug the Ethernet network cable when using a physical network adapter. This mode can be useful for testing. For example, you can enable this network mode for a short time to emulate unplugging the cable. When you disable the Not Attached mode by switching to another network mode, the network connection becomes available again. You can also check whether a DHCP client obtains the IP address correctly, whether the appropriate application can resume downloading after link interruption or packet loss, and so on.
Invece di utilizzare la modalità di rete Non collegato, è possibile utilizzare qualsiasi altra modalità di rete senza spuntare la casella di controllo Cavo collegato. È possibile spuntare/despu ntare la casella di controllo quando una VM è in stato di esecuzione (vedi screenshot sopra). Non dimenticare di premere OK per applicare le modifiche alla configurazione di rete della VM.
NAT
Questa modalità di rete è abilitata per impostazione predefinita per un adattatore di rete virtuale. Un sistema operativo guest su una VM può accedere agli host in una rete locale fisica (LAN) utilizzando un dispositivo NAT virtuale (Traduzione degli Indirizzi di Rete). Le reti esterne, compreso Internet, sono accessibili da un sistema operativo guest. Una macchina guest non è accessibile da una macchina host o da altre macchine nella rete quando viene utilizzata la modalità NAT per la rete di VirtualBox. Questa modalità di rete predefinita è sufficiente per gli utenti che desiderano utilizzare una VM solo per l’accesso a Internet, ad esempio.
L’indirizzo IP dell’adattatore di rete della VM viene ottenuto tramite DHCP e gli indirizzi IP della rete utilizzata in questa modalità di rete non possono essere modificati nell’interfaccia grafica utente. VirtualBox ha un server DHCP integrato e un motore NAT. Un dispositivo NAT virtuale utilizza l’adattatore di rete fisico dell’host VirtualBox come interfaccia di rete esterna. L’indirizzo predefinito del server DHCP virtuale utilizzato in modalità NAT è 10.0.2.2 (questo è anche l’indirizzo IP del gateway predefinito per una VM). La maschera di rete è 255.255.255.0.
Se si configurano gli adattatori di rete di due o più VM per utilizzare la modalità NAT, ogni VM otterrà l’indirizzo IP 10.0.2.15 nella propria rete isolata dietro un dispositivo NAT virtuale privato. Il gateway predefinito per ogni VM è 10.0.2.2. In VirtualBox gli indirizzi IP non vengono modificati quando viene utilizzata la modalità NAT, come si può vedere di seguito:
Per abilitare la modalità NAT per una VM con VBoxManage, eseguire il seguente comando:
Dove:
- nome_VM è il nome della tua macchina virtuale;
- nic1 è il numero dell’adattatore di rete virtuale;
- nat è il nome della modalità di rete VirtualBox che devi impostare.
Il reindirizzamento delle porte può essere configurato direttamente dalla finestra delle impostazioni di rete della VM di VirtualBox cliccando sul pulsante Reindirizzamento porta (come mostrato nella schermata sopra). Informazioni dettagliate sulla configurazione del reindirizzamento delle porte nelle impostazioni di rete di VirtualBox, che puoi trovare di seguito dopo la sezione Modalità di rete.
Rete NAT
Questo modo è simile alla modalità NAT che si utilizza per configurare un router. Se si utilizza la modalità NAT Network per più macchine virtuali, possono comunicare tra loro tramite la rete. Le VM possono accedere ad altri host nella rete fisica e possono accedere alle reti esterne, incluso Internet. Nessuna macchina proveniente da reti esterne, così come quelle provenienti da una rete fisica alla quale è connessa la macchina host, può accedere alle VM configurate per utilizzare la modalità NAT Network (analogamente alla configurazione di un router per l’accesso a Internet dalla propria rete domestica). Non è possibile accedere alla macchina guest dalla macchina host quando si utilizza la modalità NAT Network (a meno che non si stia configurando il port forwarding nelle impostazioni globali di rete di VirtualBox). Un router NAT VirtualBox integrato utilizza un controller di interfaccia di rete fisica dell’host VirtualBox come interfaccia di rete esterna (come nel caso della modalità NAT).
L’indirizzo di rete e il nome possono essere modificati nelle preferenze globali di VirtualBox (File > Preferenze). Nel riquadro sinistro della finestra delle Preferenze, selezionare Rete per accedere alle impostazioni globali di rete di VirtualBox, quindi fare doppio clic sulla propria rete NAT esistente per modificare le impostazioni (è anche possibile aggiungere una nuova rete o eliminare una rete esistente facendo clic sulle icone + o x).
Nella piccola finestra pop-up che apparirà, è anche possibile abilitare/disabilitare DHCP, IPv6 e configurare il port forwarding.
L’indirizzo predefinito della rete NatNetwork è 10.0.2.0/24.
Il gateway predefinito IP è 10.0.2.1 (il modello x.x.x.1 viene utilizzato per assegnare l’IP del gateway predefinito). Ad esempio, se si crea una nuova rete virtuale per la modalità NAT Network in VirtualBox e si imposta l’indirizzo di rete 192.168.22.0/24, l’indirizzo IP del gateway in questa rete sarà 192.168.22.1. Non è possibile modificare l’indirizzo IP del gateway per la rete utilizzata nella modalità NAT Network e modificare l’intervallo di indirizzi IP emessi dal server DHCP. Allo stesso modo, l’indirizzo IP del server DHCP è 10.0.2.3 per impostazione predefinita (viene utilizzato il modello x.x.x.3).
La configurazione IP della VM Windows 7 in esecuzione su VirtualBox con un adattatore di rete virtuale configurato nella modalità NAT Network è visualizzata nello screenshot.
Se non si desidera modificare le impostazioni di rete di VirtualBox nell’interfaccia grafica, è possibile aggiungere una nuova rete NAT con VBoxManage utilizzando il comando:
Dove:
- natnet1 è il nome della rete NAT;
- 192.168.22.0/24 è l’indirizzo di tale rete NAT.
Se si desidera configurare un adattatore di rete VM per utilizzare la modalità NAT Network con VBoxManage, eseguire il seguente comando:
Dove:
- nic1 è il primo adattatore di rete virtuale (controller dell’interfaccia di rete);
- natnetwork è il nome della modalità di rete di VirtualBox.
Potrebbe essere necessario arrestare la VM prima di applicare queste impostazioni.
Per evitare di ripetere lo stesso comando con VBoxManage quando si seleziona una modalità di rete per l’adattatore di rete virtuale di una VM in ogni sezione dell’articolo, considera i nomi di tutte le possibili modalità di rete di VirtualBox: none, null, nat, natnetwork, bridged, intnet, hostonly, generic.
L’inoltro di porta è un’altra opzione che può essere accessibile e configurata da questa finestra. L’inoltro di porta può essere utilizzato per configurare l’accesso dalla macchina host e da altre macchine della stessa rete fisica ai servizi in esecuzione all’interno del sistema operativo guest all’interno della VM (vedi dettagli di seguito). Come puoi vedere, la posizione delle impostazioni di inoltro di porta per la modalità NAT e le modalità NAT Network sono diverse nell’interfaccia grafica di VirtualBox. Le impostazioni di inoltro di porta per la modalità NAT sono disponibili in VM > Impostazioni > Rete, mentre le impostazioni di inoltro di porta per la modalità NAT Network possono essere configurate in File > Preferenze > Rete. Questo perché le regole di inoltro di porta per la modalità NAT sono individuali per ogni VM, mentre le regole di inoltro di porta per la modalità NAT Network sono comuni per più VM i cui adattatori sono collegati alla rete NAT appropriata. Vedi i dettagli sulla configurazione dell’inoltro di porta di seguito nella sezione Inoltro di Porta.
Adattatore Bridged
Questa modalità viene utilizzata per collegare l’adattatore di rete virtuale di una VM a una rete fisica a cui è collegato un adattatore di rete fisica della macchina host di VirtualBox. Un adattatore di rete virtuale della VM utilizza l’interfaccia di rete dell’host per una connessione di rete. In parole semplici, i pacchetti di rete vengono inviati e ricevuti direttamente da/per l’adattatore di rete virtuale senza ulteriori instradamenti. VirtualBox utilizza un driver di filtro di rete speciale per la modalità di rete bridged al fine di filtrare i dati dall’adattatore di rete fisica dell’host.
Questa modalità di rete può essere utilizzata per eseguire server su VM che devono essere completamente accessibili da una rete locale fisica. Quando si utilizza la modalità di rete bridged in VirtualBox, è possibile accedere a una macchina host, a host della rete fisica e a reti esterne, compreso Internet, da una VM. La VM può essere accessa dalla macchina host e da altri host (e VM) collegati alla rete fisica.
Se hai più adattatori di rete fisici sulla macchina host, dovresti selezionare l’adattatore corretto nelle impostazioni di rete di VirtualBox. Nella schermata sottostante puoi vedere due adattatori di rete fisici – l’adattatore Ethernet e l’adattatore Wi-Fi. Se utilizzi la modalità bridge per un adattatore di rete wireless, non puoi utilizzare le funzionalità di basso livello di quell’adattatore Wi-Fi in un sistema operativo guest. Ad esempio, non puoi selezionare reti Wi-Fi a cui connetterti, abilitare la modalità di monitoraggio, ecc. Invece, devi connetterti alla rete Wi-Fi sulla macchina host. Se devi utilizzare tutte le funzionalità dell’adattatore Wi-Fi nel sistema operativo guest della VM, utilizza un adattatore Wi-Fi USB e la funzionalità di passaggio USB come spiegato nel post del blog sull’installazione di Kali Linux su VirtualBox.
In VirtualBox, l’indirizzo IP di un adattatore di rete virtuale della VM può appartenere alla stessa rete dell’indirizzo IP dell’adattatore di rete fisico della macchina host quando viene utilizzata la modalità bridge. Se c’è un server DHCP nella tua rete fisica, l’adattatore di rete virtuale della VM otterrà automaticamente l’indirizzo IP nella modalità bridge (se l’ottenimento automatico di un indirizzo IP è impostato nelle impostazioni dell’interfaccia di rete in un sistema operativo guest). Pertanto, il gateway predefinito per un adattatore di rete virtuale che opera in modalità bridge è lo stesso del tuo host. Vediamo un semplice esempio con gli indirizzi IP.
L’indirizzo della rete fisica: 10.10.10.0/24
L’indirizzo IP del gateway predefinito nella rete fisica: 10.10.10.1
L’indirizzo IP del server DHCP nella rete fisica: 10.10.10.1
Configurazione IP della macchina host: Indirizzo IP – 10.10.10.72; netmask – 255.255.255.0; gateway predefinito – 10.10.10.1.
Configurazione IP della macchina guest: Indirizzo IP – 10.10.10.91; netmask – 255.255.255.0; gateway predefinito – 10.10.10.1.
A volte, potresti trovare più gateway nella tua rete fisica. Puoi utilizzare una macchina host per connetterti alle reti necessarie tramite un gateway e utilizzare una macchina guest per connetterti ad altre reti tramite il secondo gateway. Puoi anche modificare una tabella di routing sulla tua VM e aggiungere percorsi per utilizzare entrambi i gateway per connetterti alle reti appropriate. Come puoi vedere, la modalità di rete bridged è un’opzione potente nelle impostazioni di rete di VirtualBox con molti casi d’uso.
Modalità promiscua. Questa modalità consente a un adattatore di rete di passare tutto il traffico ricevuto, indipendentemente dall’adattatore a cui è indirizzato il traffico. In modalità normale, un adattatore di rete riceve solo frame che includono l’indirizzo MAC di questo particolare adattatore di rete come indirizzo di destinazione nell’intestazione. I frame indirizzati a un indirizzo MAC diverso dall’indirizzo MAC dell’adattatore selezionato (quando il traffico non è trasmesso in broadcast) vengono eliminati in modalità normale. La modalità promiscua consente a un adattatore di rete fisico di avere più indirizzi MAC, consentendo a tutto il traffico in ingresso di passare attraverso l’adattatore di rete fisica della macchina host e raggiungere l’adattatore di rete virtuale della VM che ha il proprio indirizzo MAC rappresentato sull’adattatore host, anche se quel traffico non è indirizzato all’adattatore di rete virtuale di quella particolare VM.
La maggior parte delle schede di rete wireless non supporta la modalità promiscua. Il bridging verso le schede Wi-Fi viene effettuato nel modo seguente – VirtualBox sostituisce gli indirizzi MAC appropriati nei campi di intestazione dei frame Ethernet che devono essere consegnati all’adattatore di rete virtuale della VM (l’indirizzo MAC dell’adattatore Wi-Fi host deve essere utilizzato per tale traffico). La modalità promiscua è utile per i test di rete e le verifiche di sicurezza. È possibile abilitare la modalità promiscua nelle impostazioni di rete di VirtualBox e monitorare il traffico di rete con uno sniffer.
Ci sono tre opzioni di utilizzo della modalità promiscua.
- Nega. Tutto il traffico che non è destinato all’adattatore di rete virtuale della VM è nascosto alla VM. Questa opzione è impostata per impostazione predefinita.
- Consenti VM. Tutto il traffico è nascosto dall’adattatore di rete della VM ad eccezione del traffico trasmesso e ricevuto da altre VM.
- Consenti Tutto. In questa modalità non ci sono restrizioni. Un adattatore di rete VM può vedere tutto il traffico in entrata e in uscita.
La modalità promiscua può essere utilizzata non solo per la modalità bridged, ma anche per NAT Network, Internal Network e Host-Only Adapter modalità.
Internal Network
Le macchine virtuali i cui adattatori sono configurati per funzionare in modalità Rete Interna di VirtualBox sono connesse a una rete virtuale isolata. Le VM collegate a questa rete possono comunicare tra loro, ma non possono comunicare con una macchina host VirtualBox o con altri host in una rete fisica o in reti esterne. Le VM collegate alla rete interna non possono essere accessibili da un host o da altri dispositivi. La rete interna di VirtualBox può essere utilizzata per modellare reti reali.
Ad esempio, è possibile creare tre VM, ciascuna delle quali ha un adattatore di rete virtuale (Adattatore 1) collegato alla rete interna. Gli indirizzi IP di questi adattatori di rete sono definiti dalla subnet utilizzata per la rete interna di VirtualBox (è necessario definire manualmente la subnet). Una di queste VM (VM1) ha anche un secondo adattatore di rete virtuale configurato per funzionare in modalità NAT. La VM1 è configurata come router (una delle migliori soluzioni per creare un router è installare Linux e configurare IPTABLES, ma per la prima volta è possibile utilizzare soluzioni di routing più semplici in caso di test di rete di VirtualBox).
A VM2 and VM3 whose network adapters are connected only to the VirtualBox internal network can have access to external networks if the IP address of the internal network adapter of the VM1 are set as a gateway in the network settings of VM2 and VM3.
Configurazione di rete utilizzata in questo esempio:
VM1. Indirizzo IP – 192.168.23.1 (modalità rete interna); 10.0.2.15 (modalità NAT), gateway 10.0.2.2 (l’indirizzo IP del dispositivo NAT integrato di VirtualBox).
VM2. Indirizzo IP – 192.168.23.2 (rete interna), gateway – 192.168.23.1
VM3. Indirizzo IP – 192.168.23.3 (rete interna), gateway – 192.168.23.1
Subnet della rete interna di VirtualBox: 192.168.23.0/24
Vedi il diagramma qui sotto per maggiore chiarezza.
Nota: Puoi anche implementare un’infrastruttura virtuale simile per testare le regole del firewall in IPTABLES prima di implementarle nella tua infrastruttura di rete reale, ma è preferibile utilizzare la modalità bridged e non la modalità NAT per il secondo adattatore di rete virtuale del VM1 quando si connette a/da reti esterne.
Adattatore solo host
Questo modo di rete è utilizzato per comunicare tra un host e gli ospiti. Una VM può comunicare con altre VM connesse alla rete solo host e con la macchina host. La macchina host di VirtualBox può accedere a tutte le VM connesse alla rete solo host.
L’adattatore di rete virtuale solo host di VirtualBox viene creato in un sistema operativo host per l’uso nella rete solo host. Puoi modificare le impostazioni di questa rete VirtualBox andando su File > Gestore della rete host.
Nel nostro caso, l’indirizzo di rete predefinito della rete solo host è 192.168.56.0/24 e l’indirizzo IP dell’adattatore di rete virtuale sulla macchina host è 192.168.56.1. Puoi modificare manualmente questi indirizzi IP nella scheda Adattatore. Un server DHCP può essere abilitato o disabilitato spuntando la casella appropriata. Nella scheda Server DHCP, puoi impostare l’indirizzo IP del server DHCP, la maschera di rete e l’intervallo di indirizzi IP da assegnare ai client DHCP.
Gli adattatori di rete virtuali delle VM non hanno un gateway nella loro configurazione IP perché la modalità Solo Host non consente di connettersi a dispositivi esterni alla rete host-only. È anche possibile creare più adattatori di rete host-only di VirtualBox per utilizzare reti host-only diverse: basta premere il pulsante Crea. Se la rete host-only non è più necessaria, selezionare semplicemente l’adattatore e premere Rimuovi.
Driver Generico
Questa modalità di rete consente di condividere l’interfaccia di rete generica. Un utente può selezionare il driver appropriato da distribuire in un pacchetto di estensione o essere incluso con VirtualBox.
Vi sono due sottomodalità disponibili per la modalità Driver Generico di VirtualBox: Tunnel UDP e Networking VDE (Ethernet Distribuita Virtuale).
Tunnel UDP. Le macchine virtuali che eseguono su host diversi possono comunicare in modo trasparente utilizzando un’infrastruttura di rete esistente.
Networking VDE. Le macchine virtuali possono connettersi a uno switch distribuito virtuale su host Linux o FreeBSD. È necessario compilare VirtualBox dalle fonti per utilizzare il networking VDE poiché i pacchetti standard di VirtualBox non includono questa funzione.
Confronto delle Modalità di Rete di VirtualBox
Per maggiore comodità, riassumiamo tutte le informazioni sulle modalità di rete supportate da VirtualBox in questa tabella:
Inoltro Porte
Il forwarding di porta è un processo di intercettazione del traffico indirizzato all’indirizzo IP e alla porta appropriati, oltre a reindirizzare tale traffico a un diverso indirizzo IP e/o porta. Applicazioni speciali possono essere utilizzate su computer e altri dispositivi router per configurare il forwarding delle porte. Uno dei casi d’uso più popolari per il forwarding delle porte è quello di fornire accesso a particolari servizi di rete nascosti dietro al NAT dalle reti esterne. Dopo aver configurato le regole di forwarding delle porte, i clienti possono accedere ai servizi appropriati dall’esterno collegandosi all’indirizzo IP esterno e alla porta specificati del router (host).
I pacchetti vengono prima intercettati da un’applicazione sul router, quindi l’applicazione legge l’indirizzo IP di destinazione e il numero di porta degli header appropriati (header del pacchetto IP, header dei segmenti TCP o UDP). Se una combinazione dell’indirizzo IP di destinazione e/o del numero di porta negli header corrisponde a una condizione impostata in una regola di forwarding della porta, l’applicazione di routing riscrive le informazioni dell’header (indirizzo IP e/o numero di porta) e invia un pacchetto/segmento a un’altra interfaccia di rete secondo la regola di forwarding della porta.
Per impostazione predefinita, è impossibile connettersi alle VM di VirtualBox il cui adattatore di rete è impostato per funzionare in modalità NAT o NAT Network da un host di VirtualBox e da altri host nella LAN, ma VirtualBox fornisce una funzionalità di forwarding delle porte integrata per abilitare tale accesso.
Esempio 1 – Accesso SSH
Consideriamo ora la configurazione dell’inoltro della porta per connettersi alle VM di VirtualBox utilizzando l’esempio della connessione a un server SSH in esecuzione su una VM Ubuntu Linux che è connessa alla rete tramite la modalità NAT. Puoi leggere come installare Ubuntu su VirtualBox in questo post del blog.
I dati di input:
Indirizzo IP host: 10.10.10.72 (una NIC fisica).
Indirizzo IP VM Ubuntu: 10.0.2.15 (modalità NAT)
Nome utente: user1
1. Installa il server SSH sulla VM Ubuntu.
apt-get install openssh-server
2. Modifica il file di configurazione del server SSH.
vim /etc/ssh/sshd_config
3. Rimuovi il commento dalla stringa per abilitare l’autenticazione con password.
PasswordAuthentication yes
4. Riavvia il demone (servizio) SSH.
/etc/init.d/ssh restart
5. Verifica che il server SSH funzioni e prova a connetterti al server SSH da localhost (VM Ubuntu).
6. Se tutto è a posto, puoi iniziare a configurare l’inoltro delle porte in VirtualBox.
Come ricorderai, dovresti aprire le impostazioni della VM e selezionare la sezione Network. Seleziona il tuo adattatore di rete virtuale configurato per funzionare in modalità NAT, espandi le Impostazioni Avanzate e premi il pulsante Inoltro Porte. Clicca sull’icona + per aggiungere una nuova regola di inoltro porte nelle impostazioni di rete di VirtualBox della VM.
Un server SSH ascolta di default sulla porta TCP 22. Creiamo una regola che ti permetta di inoltrare tutte le connessioni alla macchina host di VirtualBox sulla porta 8022 alla VM Ubuntu sulla porta 22 ascoltata dal server SSH. Per prima cosa, puoi creare una regola che consenta le connessioni solo dalla macchina host di VirtualBox.
Nome | Protocollo | IP Host | Porta Host | IP Guest | Porta Guest |
Ubuntu-SSH | TCP | 127.0.0.1 | 8022 | 10.0.2.15 | 22 |
La vista della finestra delle regole di inoltro porte nell’interfaccia grafica di VirtualBox è mostrata nello screenshot qui sotto.
Apri un client SSH (per esempio, PuTTY se usi Windows) sulla tua macchina host di VirtualBox e connettiti a 127.0.0.1 sulla porta 8022.
Nome | Protocollo | Indirizzo IP host | Porta host | Indirizzo IP ospite | Porta ospite |
Ubuntu-SSH | TCP | 10.10.10.72 | 8022 | 10.0.2.15 | 22 |
Aprire un client SSH sul tuo host VirtualBox o su un altro host collegato alla tua LAN e connettersi all’indirizzo IP del host VirtualBox sulla porta 8022.
Esempio 2 – Accesso HTTP
Se si desidera distribuire un server web sul proprio VM ed esporre i siti Web dall’esterno, è possibile aggiungere un’altra regola di forwarding della porta. Vediamo come configurare tale regola di forwarding della porta per l’accesso a un sito Web distribuito su una VM Ubuntu da una macchina VirtualBox host e da altre macchine connesse alla rete locale fisica (LAN). Viene utilizzato Apache come server Web in questo esempio.
apt-get install apache2
Il firewall ufw è disabilitato di default in Ubuntu. Se un firewall è abilitato sulla tua VM Ubuntu, assicurati che l’accesso alla porta TCP 80 sia abilitato.
Dopo aver installato Apache, apri un browser web sulla tua VM Ubuntu e accedi alla pagina predefinita di Apache inserendo http://127.0.0.1 nella barra degli indirizzi. Se tutto è a posto, vedrai la pagina predefinita di Apache2 Ubuntu nel tuo browser web.
Questo significa che ora puoi configurare una regola di forwarding della porta nelle impostazioni di rete di VirtualBox per accedere al tuo sito web ospitato sulla VM Ubuntu. Apri la finestra delle impostazioni Port Forwarding andando su Impostazioni VM > Rete > [seleziona il tuo adattatore] > Port Forwarding (come spiegato sopra). Puoi aggiungere una nuova regola facendo quanto segue:
Nome | Protocollo | IP Host | Porta Host | IP Ospite | Porta Ospite |
Ubuntu-HTTP80 | TCP | 10.10.10.72 | 8080 | 10.0.2.15 | 80 |
Apri un browser web sul tuo computer host o su qualsiasi altro computer connesso alla tua rete fisica e inserisci l’indirizzo IP della tua macchina host VirtualBox e la porta definita nella regola di forwarding della porta creata in precedenza:
http://10.10.10.72:8080
Nell’esempio attuale, 10.10.10.72 è l’indirizzo IP della macchina host di VirtualBox e 8080 è una porta TCP in ascolto sulla macchina host di VirtualBox. Un risultato positivo della configurazione del forwarding di porta è mostrato nello screenshot qui sotto.
È possibile creare regole simili anche per accedere a una VM tramite RDP, FTP e altri protocolli.
La configurazione del forwarding di porta per le VM il cui adattatore di rete virtuale funziona in modalità NAT Network funziona in modo simile (vedi la sezione sopra dove è spiegata la modalità NAT Network per individuare le impostazioni del forwarding di porta per la modalità NAT Network).
Conclusione
VirtualBox è una potente soluzione di virtualizzazione che è flessibile e fornisce una vasta gamma di impostazioni di rete. Ogni VM può utilizzare fino a otto adattatori di rete virtuali, e ciascun adattatore di rete può essere emulato come il modello appropriato di veri controller di interfaccia di rete (NIC) Intel e AMD. Le impostazioni dell’adattatore di rete di VirtualBox ti consentono di modificare l’indirizzo MAC di ciascun NIC virtuale, inserire o rimuovere il cavo di rete virtuale e selezionare la modalità di rete. L’impostazione della modalità di rete per un adattatore di rete virtuale è una delle parti più interessanti e importanti delle impostazioni di rete di VirtualBox. Ci sono sei modalità di rete, ciascuna delle quali può essere utilizzata per diversi casi d’uso. Il forwarding di porta può essere configurato per l’accesso esterno alle VM il cui adattatore di rete opera in modalità NAT o NAT Network.
Source:
https://www.nakivo.com/blog/virtualbox-network-setting-guide/