У меня есть машина с Windows Vista, на которой VirtualBox запускает ubuntu.
В Ubuntu я запускаю веб-сервер по адресу http://127.0.0.1:3000/
Как мне получить доступ к этому адресу с моего хост-компьютера (окна Windows)?
Вы можете изменить режим гостевой сети с NAT на Bridged. Просто закройте гостевую систему Ubuntu, перейдите на страницу настроек в VirtualBox, выберите категорию «Сеть» и измените в списке «Подключено к» с NAT на режим моста.
После выполнения вышеуказанных шагов перезапустите Ubuntu, и выделенный IP-адрес отобразится на экране приветствия после загрузки. т.е. в приветственном сообщении должно быть написано что-то вроде:
IP-адрес для eth0: 192.168.1.3
Используйте этот адрес в строке браузера хост-машины, а затем укажите порт, который вы используете. Если это что-то другое, кроме порта 80. т.е. если вы настроите его на использование порта 666, то адрес будет 192.168.1.3:666
Другой способ узнать IP-адрес - подключиться к HTTP-серверу, встроенному в ваш маршрутизатор, и посмотреть настройки локальной сети. Каждая машина в сети должна быть указана по имени хоста и IP. На большинстве моих маршрутизаторов вы можете сделать это, набрав 192.168.1.1 в адресной строке. если это не удается, попробуйте тот же адрес на порту 81. Если это не удается, ПРОЧИТАЙТЕ РУКОВОДСТВО.
Зависит от того, как вы настраиваете сеть в гостевой ОС Ubuntu. Если вы настроили его для использования NAT и у вас есть DHCP-сервер, работающий в вашей сети, просто запустите это:
ifconfig | grep inet
в поле Ubuntu - вы увидите IP-адрес, назначенный гостю Ubuntu.
Пример:
#ifconfig | grep inet
inet addr:10.0.0.2 Bcast:10.255.255.255 Mask:255.255.255.0
inet addr:127.0.0.1 Mask:255.0.0.0
Тогда просто нажмите http://10.0.0.2:3000
Ваш ящик Windows и ящик Ubuntu (физические или виртуальные, в данном случае не имеет значения) должны иметь IP-адрес в одной подсети, чтобы они могли общаться друг с другом через TCP / IP. Вы можете назначить дополнительный адрес каждой ОС, используя одну из частных IP-подсетей (см. RFC 1918). Как только у них обоих будет адрес в одной подсети, настройте веб-сервер для прослушивания того, который вы предоставили Ubuntu, а затем используйте этот IP-адрес в браузере Windows для его загрузки.
IP-адрес, который вы настроили сейчас, 127.0.0.1, является адресом обратной связи для интерфейса локальной сети. Вы бы никогда не использовали этот адрес для доступа к чему-либо в другой системе, только чтобы вернуться к той же системе, в которой вы находитесь. При использовании виртуальной системы относитесь к ней так же, как к отдельному компьютеру с точки зрения сети.
Чтобы решить вашу проблему, я предлагаю вам добавить новый Сетевой адаптер и настройте его как Адаптер только для хоста.
Теперь вы запускаете экземпляр виртуального бокса, а затем то, что предложил fsckin, чтобы увидеть, что ip новой сети.
Таким образом, у вас есть подсеть с вашим компьютером и вашей виртуальной машиной.
Прежде всего, вам нужно сделать то, что сказано в Ответе 1:
«Вы можете изменить свой гостевой сетевой режим с NAT на Bridged. Просто закройте гостевую систему Ubuntu, перейдите на страницу настроек в VirtualBox, выберите категорию Network и измените в списке Attached to list с NAT на Bridged Mode».
Затем, чтобы получить свой IP-адрес:
На вашей виртуальной машине откройте командную строку и выполните:
ip addr show
Вероятно, вы увидите строку, которая выглядит примерно так:
inet 192.168.43.96/24 ....
Перед этим также стоит строка с
inet 127.0.0.1
Но ты не хочешь этого! Вам нужен адрес 192. Это адрес вашей виртуальной машины в вашей локальной сети. Он должен быть доступен для любого устройства, подключенного к той же локальной сети.
Теперь на вашем хост-компьютере отредактируйте файл / etc / hosts (не ~ / etc). Имя файла - hosts (это не имя папки)
добавьте строку, которая выглядит так:
192.168.43.96 myvm.nameofmywebsite.com
Теперь перейдите в браузер вашего хост-компьютера и введите myvm.nameofmywebsite.com
Надеюсь, это сработает!
Однако у вас может быть маршрутизатор с функциями безопасности, которые не позволят увидеть ваш локальный адрес. Что вы можете сделать, так это использовать точку доступа вашего мобильного телефона в качестве сети. Это подходит для меня. Просто помните, когда вы меняете сеть на своем хост-компьютере, вам необходимо перезапустить виртуальный бокс.