Я бы хотел получить доступ к своему хост-компьютеру с гостя в VirtualBox. Есть ли IP-адрес для моего хоста, который я могу использовать от гостя? Есть ли дополнительные шаги, необходимые для настройки? Я хотел бы получить доступ к службам Apache, FTP и SSH моего хоста.
networking
virtualbox
virtualization
Нафтули Кей
источник
источник
Ответы:
Этот ответ о настройке гостевой ОС в VirtualBox; вам просто нужно использовать адрес сетевого шлюза в гостевой ОС для подключения к хост-ОС из гостевой ОС.
В настройке Vagrant по умолчанию вы должны быть в состоянии достичь вашего хоста через шлюз по умолчанию.
В гостях на базе Windows вы можете легко определить этот IP-адрес, выполнив команду:
Это должно вывести что-то вроде этого:
В этом примере гость может связаться с хостом
10.0.2.2
.В гостях на основе Unix / Linux используйте команду:
Это должно вывести что-то вроде этого:
В этом примере гость может связаться с хостом
192.168.1.1
.источник
10.0.2.2
, и nmap этого IP не удался. 192.168.33.1 кажется правильным IP. (У меня былconfig.vm.network :hostonly, "192.168.33.52"
в моем конфиге.)netstat -rn
в CentOS 7.2 Docker 1.11 отображал172.17
адрес в качестве моего шлюза, но этот IP не соответствовал моему хосту. Оказывается, что10.0.2.2
сделал.Доступ к веб-серверу хост-компьютера от гостя очень прост. Это можно легко сделать двумя способами. Сначала сделайте следующее
Если значение равно NAT , выполните следующие действия.
Шлюз по умолчанию при настройке Virtual box обычно используется в
10.0.2.2
качестве значения по умолчанию. Если вы ничего не изменили, это сработает. Но если вы изменили его, а гостевая машина, на которой вы работаете, - это Windows, запустите следующую команду и найдите шлюз по умолчанию.ipconfig /all
Если вы используете Linux, Unix или Mac OS, выполните следующую команду, чтобы получить его
netstat -rn | grep 'default' | awk '{print $2}'
Перейдите в веб-браузер, введите шлюз по умолчанию и нажмите клавишу ввода. Доступ к веб-серверу
ipconfig
и получите IP-адресifconfig | grep 'inet'
и получите IP-адресисточник
Другой способ сделать это - использовать виртуальную сеть типа «Хост». Это дает вам интерфейс в гостевой ОС с адресом в локальной подсети, отличным от подсети "внешнего мира", в которой находится ваш хост-компьютер. Чтобы сделать это, вы должны убедиться в нескольких вещах:
Как только вы это сделаете, вы сможете «увидеть» хост с ВМ через имя, которое вы закодировали в файле хоста.
Например, на моем хосте Ubuntu 11.04 я получаю виртуальный интерфейс "vboxnet0" на 192.168.56.1. Адаптеры в машинах предлагают что-то вроде 192.168.56.101. Мне не нужно идти в моей виртуальной машины, но я полагаю , что это было бы возможно с помощью симметричного изменения в хост - файл хоста. я добавить
к файлам хоста гостевой ОС, и они могут (например) видеть веб-сервер моего хоста по адресу
Конечно, вы можете настроить как мостовые, так и хост-адаптеры.
источник
Вы можете создавать общие папки в VirtualBox. Это автоматически создаст «общий сетевой ресурс» в Virtual Box для доступа к папкам в вашей ОС хоста.
Вот достойный шаг за шагом в гостевой ОС Windows XP:
источник
echo "GET /\r\n\r\n" | nc 192.168.100.100 80
(отправить HTTP-запрос GET на мою хост-машину от гостя.)Вот еще одно решение этой проблемы - использование дополнительного сетевого интерфейса и настройка трафика, предназначенного для хоста, для маршрутизации через дополнительный интерфейс.
источник