Dostęp z poziomu systemu głównego do localhosta w VirtualBoxie

0

Mam Windows 10, ściągnąłem VirtualBoxa, zainstalowałem z VDI Linuxa Mint, działa prawidłowo. Na wirtualce uruchomiłem aplikację, która jest dostępna z adresu localhost:3333, działa dobrze. Chciałbym mieć do niej dostęp z poziomu W10.

W ustawieniach VirtualBoxa -> sieć mam ustawione "podłączona do: NAT", kombinowałem z regułami przekierowania portów i bridged'em. Nie działa. Hostname linuxa na wirtualce standardowo: 10.0.2.15:

Jakieś pomysły porady jak osiągnąć zamierzony cel? Pozdrawiam..

0

Przełącz z NAT na host-only Adapter i sprawdź.

https://www.virtualbox.org/manual/ch06.html

0

Nie pomogło, pewnie jeszcze coś źle mam ustawione, ale coś więcej się dowiedziałem, dzięki.

0
  1. Jak sprawdziłeś adres ip twojego hosta?
    • [host] ifconfig -a
    • eth0 albo inny intefrejs powienien Ci pokazać ip twojego hosta
  2. Próbowałeś pingować hosta z poziomu windowsa?
  3. Nie masz włączonych ip tables?
  4. Na jakim adresie odpalasz swoją aplikację? Czy aby nie wyłącznie na localhoscie?
    • aplikacje odpalne na lokalnym adresie nie będą widzoczne poza interfejsami innymi niż looopback. Przykładowo

Wirtualka:

user@vm:~ echo -e "HTTP/1.1 200 OK\n\n TEST" | netcat -l localhost 8080

Mój system:

 ✘ xxxx@XXXX ~/workspace/test  curl 192.168.99.100:8080
curl: (7) Failed to connect to 192.168.99.100 port 8080: Connection refused

versus

Wirtualka:

user@vm:~ echo -e "HTTP/1.1 200 OK\n\n TEST" | netcat -l 0.0.0.0 8080

Mój system:

 ✘ xxxx@XXXX ~/workspace/test  curl 192.168.99.100:8080
 TEST

Jeżeli słuchasz na localhoście, to nie dziw się, że ruch z innej sieci (wirtualnej co prawda) nie dochodzi do twojej aplikacji. Możesz zrobić NAT i port forwarding z localhost hosta do ip guesta. Ale localhost guest nie będzie dostępny, więc i tak musisz odpalić aplikację na adresie innym niż localhost.
Żeby to osiągnąć dokładnie to co chcesz musisz jeszcze zrobić forwardowanie (routowanie właściwie) przez iptables z zewne†rznego ip na localhost na guest (i w drugą stronę pewnie też).

Musiałbyś stworzyć takie coś:

{client app} <-> |VM network interface| <-- (NAT forwarding and virtual network) --> |guest eth0| <-- (DNAT: ip tables prerouting) --> |guest loopback| <--> {server app}

0

Ok. Generalnie uczę się railsów i na Windzie ciężko z konfiguracją. Rubyinstallerem daje rade, ruby i railsy działają, bez problemów chodzą strony statyczne itd. Jak chciałem railsy 5, locomotive_cms, wagon to co chwile jakieś konflikty, na linuxie wszystko skonfigurować 10 razy łatwiej, nie jestem psychofanem jakiegoś konkretnego systemu, ale w tym wypadku akurat tak jest, RoR 5 na Windowsie to miałem dużo dużo zachodu. Mógłbym wszystko robić na virtualce, ale pomimo przeznaczenia 4gb ramu (mam 8) i innych ustawień na max i przy wyłączeniu efektów na wirtualce - zacina :( Dlatego chciałem pokombinować, aplikację z wirtualki na żywo odpalać na macierzystym systemie, potem chciałem jeszcze podgląd i edycję plików w edytorze/IDE z poziomu Windowsa. Kombinowania się robi tyle samo ile próbując okiełznać wszystko na samym W10. Jest np darmowy 9Cloud i podobne, do HelloWordów starczy, ale już przy Locomotive i tym podobnych nie dawał rady. W każdym razie taki miałem cel, konfigurowanie virtualboxa nie było celem samym w sobie. Może szybciej będzie jak zainstaluje Linuxa obook Windowsa. Pozdrawiam.

0

No to po prostu odpalaj aplikację na guescie ale na ip z sieci widocznej dla Windowsa. Wszytko będzie śmigać.

Jak chcesz edytować pliki w IDE z Windowsa, to sprawdź czy dla Windy jest dostępny SSHFS.

Możesz też spróbować zamienić dystrybucję linuxa na jakis llżejszą. Zamist z virtualboxa skorzystać z docker machine (lub nowszego dockera, powinien mieć natywną obsługę wirtualizacji), co pozwoli przy startowaniu podawać storage do zamontowania (opcja -v, czyli to co odpali się w kontenerze będzie korzystało z twojego dysku na windowsie).

0

Na razie jednak ustawiłem sobie bash-on-ubuntu-on-windows + Xming X Server.
Dzięki za odpowiedzi w temacie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1