Nota:quanto scritto di seguito è stato testato con VirtualBox 1.6.x su host OSX e guest Linux, anche se le istruzioni riportate possono essere adattate ad altre situazioni
Attualmente VirtualBox non gestisce direttamente le connessioni bridge, ovvero non è possibile configurare l’IP della macchina guest con la stessa rete della macchina host.
Questo non consente di raggiungere la macchina guest direttamente dalla macchina host tramite rete, perché gli IP della macchina guest ed host sono su reti differenti.
La connessione di rete della macchina guest viene infatti configurata dal pannello di VirtualBox in modalità NAT.
E’ però possibile raggiungere la macchina guest dalla macchina host via rete tramite un “port forwarding”. Non mi dilungo a parlare del “port forwarding” di cui trovate molta documentazione onLine; riporto di seguito le semplici operazioni da fare.
Supponiamo che la macchina guest si chiami “Debian” e che volessi raggiungerla via ssh (dopo aver chiaramente installato il server ssh sul guest), basterebbe digitare nel terminale di OSX:
1 2 3 4 5 6 | VBoxManage setextradata"<strong>Debian</strong>" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort"22 VBoxManage setextradata"<strong>Debian</strong>" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/Protocol"TCP VBoxManage setextradata"<strong>Debian</strong>" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort"2222 |
Con queste semplici opzioni si crea un port forward dalla porta locale 2222 verso la porta 22 del guest. La connessione ssh è ora possibile digitando nel terminale dell’host:
1 | ssh-l<username>-p2222localhost |
La stessa cosa è possibile per tutti gli altri protocolli, ad esempio per contattare dall’host il server web del guest, basta fare:
1 2 3 4 5 6 | VBoxManage setextradata"<strong>Debian</strong>" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestweb/GuestPort"80 VBoxManage setextradata"<strong>Debian</strong>" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestweb/Protocol"TCP VBoxManage setextradata"<strong>Debian</strong>" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestweb/HostPort"8888 |
e poi aprire il browser sull’host e richiamare
1 | http://localhost:8888 |
In alternativa è possibile modificare direttamente il file xml di configurazione del guest:
1 | <span class="postbody">~/Library/VirtualBox/Machines/Debian/Debian.xml</span> |
ed inserire dopo l’ultimo <ExtraDataItem ….. />:
1 2 3 4 5 6 | <ExtraDataItem name="VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/Protocol" value="TCP"/> <ExtraDataItem name="VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort" value="22"/> <ExtraDataItem name="VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort" value="2222"/> |
Buon lavoro!
Ti interessa acquistare un dominio a prezzi ultraconvenienti? clicca qui
Se hai trovato utili le informazioni su questo blog,
Fai una donazione!
Clicca sul bottone qui sotto o almeno clicca sul banner pubblicitario 🙂
Commenta