Zasadniczo chciałbym uzyskać dostęp do mojego komputera hosta od gościa w VirtualBox. Czy dla mojego hosta podano adres IP, którego mogę używać od gościa? Czy są wymagane dodatkowe kroki, aby to skonfigurować? Chciałbym uzyskać dostęp do usług Apache, FTP i SSH mojego hosta.
networking
virtualbox
virtualization
Naftuli Kay
źródło
źródło
Odpowiedzi:
Ta odpowiedź dotyczy w zasadzie konfiguracji systemu gościa w VirtualBox; wystarczy użyć adresu bramy sieciowej w systemie-gościu, aby połączyć się z systemem-hostem z systemu-gościa.
W domyślnej konfiguracji Vagrant powinieneś być w stanie dotrzeć do swojego hosta przez domyślną bramę.
W przypadku gości opartych na systemie Windows można łatwo ustalić ten adres IP, uruchamiając polecenie:
Powinien zrzucić coś takiego:
W tym przykładzie gość może uzyskać dostęp do komputera hosta
10.0.2.2
.W przypadku gości opartych na systemie Unix / Linux użyj polecenia:
Powinien zrzucić coś takiego:
W tym przykładzie gość może uzyskać dostęp do komputera hosta
192.168.1.1
.źródło
10.0.2.2
i mapa nm tego adresu IP zawiodła. 192.168.33.1 wydaje się być właściwym adresem IP. (Miałemconfig.vm.network :hostonly, "192.168.33.52"
w konfiguracji).netstat -rn
w CentOS 7.2 Docker 1.11 wyświetlał172.17
adres jako moją bramę, ale ten adres IP nie zgadzał się z moim hostem. Okazuje się, że10.0.2.2
tak.Dostęp do serwera WWW komputera-hosta od gościa jest łatwy. Można to łatwo zrobić za pomocą dwóch metod. Najpierw wykonaj następujące czynności
Jeśli wartością jest NAT , wykonaj następujące czynności
Domyślna brama podczas konfigurowania Virtual box jest ogólnie
10.0.2.2
wartością domyślną. Jeśli nic nie zmieniłeś, zadziała. Ale jeśli go zmieniłeś, a uruchomionym komputerem-gościem jest system Windows, uruchom polecenie i znajdź domyślną bramęipconfig /all
Jeśli korzystasz z systemu Linux, Unix lub Mac OS, uruchom następujące polecenie, aby je uzyskać
netstat -rn | grep 'default' | awk '{print $2}'
Przejdź do przeglądarki internetowej, wpisz domyślną bramę i naciśnij klawisz Enter. Dostęp do serwera internetowego jest możliwy.
ipconfig
i uzyskaj adres IPifconfig | grep 'inet'
i uzyskaj adres IPźródło
Innym sposobem na to jest użycie sieci wirtualnej typu „Host”. To daje interfejs w systemie-gościu z adresem w lokalnej podsieci, innym niż podsieć („świat zewnętrzny”), na której znajduje się komputer. Aby to zadziałało, musisz upewnić się o kilku rzeczach:
Po wykonaniu tej czynności powinieneś być w stanie „zobaczyć” hosta z maszyny wirtualnej za pomocą nazwy zakodowanej w pliku hosta.
Na przykład na moim hoście Ubuntu 11.04 otrzymuję interfejs wirtualny „vboxnet0” na 192.168.56.1. Adaptery w maszynach mają coś w rodzaju 192.168.56.101. Nie trzeba iść w moim maszyn wirtualnych, ale przypuszczam, że byłoby to możliwe za pomocą symetrycznego zmiany pliku hosta gospodarza. Dodaję
do plików hosta systemu-gościa i mogą (na przykład) zobaczyć serwer WWW mojego hosta pod adresem
Oczywiście można skonfigurować zarówno mostki, jak i tylko hosty.
źródło
Możesz tworzyć foldery współdzielone w VirtualBox. Spowoduje to automatyczne utworzenie „udziału sieciowego” w Virtual Box w celu uzyskania dostępu do folderów w systemie operacyjnym hosta.
Oto przyzwoity krok po kroku w systemie gościa Windows XP:
źródło
echo "GET /\r\n\r\n" | nc 192.168.100.100 80
(wyślij żądanie GET HTTP na moją maszynę hosta od gościa).Oto inne rozwiązanie tego problemu poprzez użycie dodatkowego interfejsu sieciowego i ustawienie ruchu przeznaczonego dla hosta do kierowania przez dodatkowy interfejs.
źródło