У меня есть локальный сервер тестирования / разработки (HTTP, конечно), прослушивающий порт 8000.
Я работаю в Linux, поэтому для тестирования страницы в Internet Explorer 6, 7, 8 и т. Д. Я запускаю виртуальную машину с использованием VirtualBox; Мне также нужно посмотреть, как он выглядит на Firefox в среде Windows (например, шрифты разные).
На моей реальной машине я открываю веб-сайт, просто используя URL http://localhost:8000
, как мне обратиться к этому локальному хосту с виртуальной машины?
Прямо сейчас мой обходной путь должен использовать IP-адрес. Есть идеи получше?
Ответы:
Погуглил это: http://data.agaric.com/localhost-from-virtualbox-xp-install-ubuntu
Он предлагает использовать IP:,
http://10.0.2.2
и это сработало для меня.Итак, я отредактировал файл hosts
C:\windows\system32\drivers\etc\hosts
и добавил эту запись:Если вы тестируете на IE8, не забудьте указать
http://
адресную строку. Просто поставить ip напрямую не получится.Например:
источник
Attached to
настройки сети VirtualBox сBridged Adapter
на,NAT
чтобы это работало на меня.localhost
не10.0.2.2
из-за какого-то хренового аутентификации, который хочет использовать localhost в качестве адреса :(Macos
Я использую Virtual Box на MacOS (ранее OS X), использую Virtual Box для тестирования IE на Windows и т. Д.
Перейти к IE в Virtual Box и доступ
localhost
черезhttp://10.0.2.2
дляlocalhost
илиhttp://10.0.2.2:3000
дляlocalhost:3000
.Я сохранил настройки сети как NAT, нет необходимости для моста, как предложено выше в моем случае. Там нет необходимости редактировать любые файлы конфигурации.
источник
Чтобы включить это в OSX, мне нужно было сделать следующее:
VirtualBox Preferences -> Network -> Host-only Networks ->
нажать значок «+». Нажмите ОК."Settings" icon -> Network -> Adapter 2 ->
В приложении»: выберите «Host-only Adapter», и ваша сеть (vboxnet0
) должна отобразиться ниже по умолчанию. Нажмите ОК.http://10.0.2.2/
Вы можете обратиться к нему
localhost
и получить доступ к другим локальным сайтам, добавив их ссылки на файл hosts (C:\windows\system32\drivers\etc\hosts
), как показано ниже:источник
IPv4 Address
(например,192.168.56.1
). Затем, как только вы запустите виртуальную машину, откройте браузер и перейдите кhttp://192.168.56.1:3000
Скорее всего, ваша виртуальная машина настроена на NAT. Если вы установили для своей сети значение Bridged, вы сможете получить доступ к своему хост-компьютеру по его имени. Например, если ваше имя хоста «jsmith-Precision-7510» и вы хотите открыть http: // localhost: 3000 / , вы сможете просмотреть эту страницу по адресу http: // jsmith-Precision-7510: 3000 / .
Чтобы найти ваше имя хоста, откройте терминал / консоль и затем выполните команду
hostname
. Ваше имя хоста будет выведено на следующей строке.См. Документацию VirtualBox для получения инструкций о том, как установить сетевые настройки на Bridged.
источник
whatever.local
если не установите Bonjour.Мне пришлось зайти в virtualbox и изменить настройки сети на «NAT». После этого я смог
localhost
запустить на моей хост-машине из моего эмулятора в virtualbox черезhttp://10.0.2.2:3000
источник
http://10.0.2.2
подключиться к локальному хосту хоста точно так, как описано здесь @Pytth.Если у вас есть адаптер, подключенный к NAT , в настоящее время это лучшее и более элегантное решение для переадресации портов на локальные порты.
Settings
>Network
>Adapter
>Advanced
>Port forwarding
Просто вставьте новое правило и установите
Host port
иGuest port
для80
(для http) или22
(для ssh) и так далее.Затем вы можете получить доступ к этой машине, просто введя
http://localhost
Вы также можете переключить NAT в прозрачный режим.
источник
Я обнаружил, что
10.0.2.2:<port>
работает, но только если Правильный режим установлен правильно. После установки моей виртуальной машины я перешел в «Настройки»> «Сеть»> «Адаптер 1».NAT установлен по умолчанию, а выпадающий список Promiscuous Mode отключен. Я переключился с NAT на Bridged Adapter, который включил выпадающий список Promiscuous Mode, а затем изменил значение с «Запретить» на «Разрешить виртуальные машины». Затем я переключился обратно на NAT, который снова отключил Promiscuous Mode, но сохранил новое значение.
Только после этого изменения я смог запустить свою ВМ и увидеть мои хост-машины
localhost:<port>
на моей ВМ10.0.2.2:<port>
.источник
Невозможность перенаправить запросы на локальный хост в ВМ на локальный хост хоста теперь запекается в Windows ( https://tools.ietf.org/html/rfc6761#section-6.3 ), включая виртуальные машины, доступные по адресу https: //developer.microsoft.com/en-us/microsoft-edge/tools/vms/
Из соображений безопасности Microsoft теперь запрещает записи файла хоста переопределять адрес localhost на что-либо кроме адреса обратной петли :: 1. Таким образом, добавив строку хост-файл виртуальной машины, такой как
будут игнорироваться
Есть два способа (о которых я знаю) переопределить это:
1) использовать NETSH для портирования прокси на хост
(где 10.0.2.2 - это шлюз по умолчанию на ВМ, а 8000 - это порт, который вы хотите разрешить на хосте.)
2) Настройте IIS для выполнения маршрутизации запросов приложений, а затем перезапишите запросы для localhost: port на hostIP: port
https://docs.microsoft.com/en-us/iis/extensions/configuring-application-request-routing-arr/creating-a-forward-proxy-using-application-request-routing
источник
netsh
это помогло мне, я попробовал все, что нашел в сети, но безуспешно. Это позволит получить доступ<protocol>://localhost:<port>
вместо прямого доступа по IP. Это должен быть принятый ответ для Windows 10.MacOS
Если вы хотите настроить среду Windows с Virtualbox на Mac, просто используйте настройки NAT по умолчанию на адаптере, а в вашей виртуальной машине Windows перейдите в файл hosts и добавьте следующее:
В отличие от ответов выше, важно включить обе строки, иначе это не сработает.
источник
Вам необходимо отредактировать файл hosts на виртуальной машине Windows так же, как вы делаете это на локальном хосте:
C: \ WINDOWS \ system32 \ Drivers \ Etc \ хостов
И свяжите ваши виртуальные хосты с 10.0.2.2, если вы просто используете localhost, тогда замените
127.0.0.1 localhost с 10.0.2.2 localhost
Например:
Это говорит вашей виртуальной машине указывать на вашу локальную машину эти доменные имена.
источник
Вам не нужно менять файл hosts или любую конфигурацию Virtual Box. Сохраняйте настройки в NAT. Перейдите к своему экземпляру Windows и запустите «cmd» или откройте cmd.exe. Выполните команду «ipconfig» и получите IP-адрес шлюза по умолчанию . Просмотрите http://10.0.2.2:8080 в Windows IE, вы увидите, что он совпадает с вашим Mac Safari http: // localhost: 8080 / или http://127.0.0.1:8080
источник
localhost
. (например, webpack-dev-server)10.2.2.3 or .4
? Я могу пинговать.2
так же как те - VM - Windows Server, работающий под Windows ServerСочетание нескольких вещей в конечном итоге заставило меня работать. Запуск флеш-сервера в macosx.
В моей Windows VM я отредактировал файл hosts:
C:\windows\system32\drivers\etc\hosts
10.0.2.2 outer
Завершите работу виртуальной машины и на моем Mac в VirtualBox:
VirtualBox > preferences > Network > Host-only Networks > +
добавить сетьvboxnet1
My_VM > settings > Network > Adapter 1
.Enable Network Adapter
и установитеAttached to:
наBridged Adapter
.Advanced > Promiscuous Mode:
наAllow VMs
.OK
My_VM > settings > Network > Adapter 1
.Attached to:
обратноNAT
.Затем я пошел в
Adapter 2
Attached to:
дляHost-only Adapter
и выбора предыдущей добавленной сетиvboxnet1
.Я запустил мой сервер на своем Mac,
127.0.0.1:5000
и теперь он доступен на моем виртуальном компьютере по адресуhttp://10.0.2.2:5000
Человек какой кошмар, чтобы проверить на IE на Mac. Как там не проще?
источник
rails s -b 127.0.0.1
и получил к нему доступ со всех виртуальных машин,http://10.0.2.2:3000
и он работал. Интересно, не изменились ли настройки сверху каким-то образом, даже после того, как все это откатилось назад.vboxnet1
, но в итоге все заработало. Спасибо за подсказки!Я решил добавить переадресацию портов в настройках Virtualbox в сети. IP-адрес хоста 127.0.0.1 порт: 8080 Гость ip: укажите любой IP-адрес для веб-сайта (скажем, 10.0.2.5) порт: 8080 Теперь с гостевой машины доступ http://10.0.2.5:8080 с использованием IE
источник
В виртуальной коробке, как сказано выше, вы можете добавить эту строку в файл hosts
но чтобы сохранить его, если у вас нет администраторов прямо на вашей виртуальной машине, просто переместите файл hosts на рабочий стол, затем отредактируйте его, добавив строку 10.0 .... external, сохраните файл и переместите на исходное место.
источник
проверьте, можете ли вы поразить ваш родительский компьютер с помощью:
ipconfig
(получите ваш IP-адрес)ping <ip>
илиtelnet <ip> <port>
Если вы не можете добраться до порта, попробуйте добавить новое входящее правило в ваш родительский брандмауэр, разрешив локальные порты.
Я тогда смог получить доступ
http://<ip>:<port>
источник
В виртуальной коробке
Теперь хитрый бит - ваш локальный хост. Если вы работаете с Node.js, установите IP-адрес 0.0.0.0, а затем найдите свой собственный IP-адрес, например, cmd: ipconfig -> 10.0.1.3.
Введите этот адрес с номером порта. И это будет работать.
источник
Общие шаги:
источник
В Windows с виртуальной Windows 7 единственное, что работало для меня, - это использование NAT и переадресация портов (не удалось запустить мостовое соединение). Я нашел учебное пособие здесь: http://www.howtogeek.com/122641/how-to-forward-ports-to-a-virtual-machine-and-use-it-as-a-server/ (прокрутите вниз до часть с « Перенаправление портов на виртуальную машину »).
С этими изменениями я смог зайти на сайт xampp с « http: //192.168.xx.x: 8888 / mywebsite » в Internet Explorer 10 на моей виртуальной машине.
Я нашел IP в панели управления XAMPP> Netstat («Система»).
источник
Если вы используете Virtual Box, вы можете подключить Mac OSX (и я думаю, что Linux) к вашей виртуальной машине Windows, используя одну строку кода -> Я предлагаю остановить окно перед запуском этого в терминале.
VBoxManage modifyvm "YOUR VM NAME" --natdnshostresolver1 on
Я отмечу, что это из Dinghy docs, который я запускаю, но это команда виртуального ящика, так что на самом деле его не должно волновать, что вы используете, пока его Виртуальный ящик
источник
Мне нужно работать на локальном хосте, а не на каком-то странном IP.
1) С вашего терминала Mac,
iconfig -a
чтобы найти ваш локальный IP-адрес. Это, вероятно, последний.en7: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=10b<RXCSUM,TXCSUM,VLAN_HWTAGGING,AV> ether 38:c9:86:32:0e:69 inet6 fe80::ea:393e:a54f:635%en7 prefixlen 64 secured scopeid 0xe inet 10.1.5.60 netmask 0xfffffe00 broadcast 10.1.5.255 nd6 options=201<PERFORMNUD,DAD> media: autoselect (1000baseT <full-duplex,flow-control>) status: active
например, 10.1.5.60
2) загрузите ваш образ Windows. начать> тип,
cmd
чтобы получить терминал3)
notepad c:\windows\system32\drivers\etc\hosts
4) добавить следующую строку
10.1.5.60 localhost
5) откройте IE, и следующий URL должен попасть на сервер, работающий на вашем Mac:
http://localhost:3000/
источник
Получите IP-адрес компьютера, на котором работает Apache (inet addr: in
ifconfig
), и введите его в адресную строку браузера виртуального ящика.источник
Собственно, ответ user477494 в принципе правильный.
Я применил ту же логику в других средах (хост OS X - виртуальная Windows XP), и это делает свое дело. Мне приходилось переключать стек LAMP хоста, чтобы получить разрешение IP-адреса и порта Apache, но как только я понял это, я засмеялся.
источник