VirtualBox logoDzisiaj podjąłem próbę skorzystania z kilku usług oferowanych przez maszynę wirtualną postawioną na VirtualBoxie.

Postanowiłem, że wreszcie przeniosę moją pracę programistyczną na Linux’a – którego mam zainstalowanego na VirtualBox’ie. Głównie chodziło mi o korzystanie z serwera WWW (Apache), oraz baz danych MySQL i PostgreSQL.
Próbowałem odpowiednio połączyć sieć obie maszyny, co zakończyło się fiaskiem. W końcu natrafiłem na dość elegancki pomysł z przekierowaniem portów.

Przede wszystkim musimy dostać się do pliku “VBoxManage”, który u mnie znajduje się w “C:\Program Files\VirtualBox”:

C:
“C:\Program Files\VirtualBox\”

Potem należy użyć trzech poleceń aby przekierować port 111 z Host’a, na port 222 Guest’a po protokole XXX.
MMM to nazwa maszyny z VirtualBox’a, a AAA nazwa aplikacji .

VBoxManage setextradata MMM VBoxInternal/Devices/pcnet/0/LUN#0/Config/AAA/HostPort 111
VBoxManage setextradata MMM VBoxInternal/Devices/pcnet/0/LUN#0/Config/AAA/GuestPor” 222
VBoxManage setextradata MMM VBoxInternal/Devices/pcnet/0/LUN#0/Config/AAA/Protocol XXX

Dla przykładu dla Apache chcąc korzystać z serwera WWW po porcie 81 należy wpisać:

VBoxManage setextradata Debian VBoxInternal/Devices/pcnet/0/LUN#0/Config/apache/HostPort 80
VBoxManage setextradata Debian VBoxInternal/Devices/pcnet/0/LUN#0/Config/apache/GuestPort 81
VBoxManage setextradata Debian VBoxInternal/Devices/pcnet/0/LUN#0/Config/apache/Protocol TCP

Teraz z serwera korzystamy tak:

http://localhost:81/sciezka

Aby zobaczyć obecne ustawienia należy użyć komendy:

VBoxManage getextradata MMM enumerate

Rozwiązanie dość proste i eleganckie.