Як підключитися з Windows 7 до localhost на Ubuntu VirtualBox?


10

Моя хоста ОС - це Windows 7

Я запускаю сервер (розробка Django) на Ubuntu 10.04 у VirtualBox.

Я хочу підключитися до цього сервера (через браузер) на хості Windows. Як я можу це зробити?

Відповіді:


12

Можливо також встановити режим мережевого адаптера на "мості", тоді VM буде розглядатися як звичайна машина з власною IP-адресою.


Я встановив його на "Мостовий адаптер". http://localhost:8000/працює на Ubuntu / Guest / VirtualBox, але не з моєї машини Windows / Host; "Firefox не може встановити з'єднання з сервером у localhost: 8000."
10.10

Га! Зрозумів. Якщо б явно передати у власному IP - адреса при запуску сервера: ./manage.py runserver <MY_IP>:8000. Потім він працює на обох машинах.
10.10

3
Спробуйте 0,0.0.0:8000, щоб не пройти точну IP-адресу.
eigenein

@eigenein: Мені це подобається. Тоді я можу використовувати localhostна ubuntu, але мені все одно доводиться використовувати свій IP з Windows.
mpen

@Mark Це логічно , оскільки ваша віртуальна Ubuntu є інший ОС на іншій машині, тому Ubuntu НЕ localhostдля Windows.
eigenein

6

Це зробило роботу для мене:

З пам’яті, якщо ви налаштували VirtualBox за допомогою NAT мережі, я думаю, ви можете отримати доступ до служб, що працюють на хості, з гостьової ОС. Від гостя (WinXP) хост відображається як 10.0.2.2. Отже, якщо ви вказуєте веб-браузер WinXP на цю адресу, він повинен підключитися до вашого сервера Ubuntu Apache. (Я вважаю, що для хоста це, мабуть, з'єднання з localhost.)

http://ubuntuforums.org/showthread.php?t=682519


Це рішення також працювало для мене в Windows 7. Мені довелося використовувати 10.0.2.2у файлі hosts.
Ерік Маєрус

3

Для цього вам потрібно переслати порт на своїй віртуальній машині.

Перейдіть до командного рядка та перейдіть у папку віртуальної скриньки, там ви можете видавати такі команди:

VBoxManage.exe setextradata "name of vm" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/HostPort" 8888
VBoxManage.exe setextradata "name of vm" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/GuestPort" 80
VBoxManage.exe setextradata "name of vm" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/Protocol" TCP

Перемкніть "ім'я vm" на ім'я вашої віртуальної машини, а також на GuestPort з портом, який використовує ваш веб-сервер, як це може використовуватися порт 8080 або щось інше. Після цього ви зможете отримати доступ до сервера через http: // localhost: 8888 /, якщо я не помиляюся.

Редагувати: PS: наскільки я пам’ятаю, для цього вам потрібно встановити мережевий адаптер на «NAT»

Редагування 2: Посібник з VirtualBox, який можна знайти тут, містить розділ про переадресацію портів, який дещо відрізняється від описаного тут способу. Прочитайте це у розділі 6.3.1. (Для версії 3.2.6)


Після запуску цих команд я більше не можу завантажувати Ubuntu.
10.10

Ця команда, VBoxManage modifyvm "VM name" --natpf1 "djangoserver,tcp,,8000,,8000"здається, також не працює ... коли я намагаюся отримати доступ до неї як з localhost: 8000 на моїй гостьовій машині, так і з IP-адреси, заданої ifconfig.
10.10

На жаль, це все ще було на Бріджеді. Повернувся назад до NAT, і тепер він просто закінчується ... цікаво, що це означає?
10:00

Знайдено цю примітку в документах Django "Зверніть увагу, що IP-адресу за замовчуванням 127.0.0.1 недоступна для інших машин у вашій мережі. Щоб зробити сервер розробки доступним для інших машин у мережі, використовуйте власну IP-адресу або 0,0. 0,0 " - також спробував це, все ще "зайнявши занадто багато часу для відповіді"
10.10

2
Переадресація портів у цьому випадку має працювати таким чином, що доступ до "localhost: 8888" або "127.0.0.1:8888" в хост-системі означає перехід до "localhost: 80" або "127.0.0.1:80" на гостьовій машині, наскільки мені відомо. Можливо, ви можете спробувати переслати SSH або щось подібне, що вже працює, щоб побачити, чи правильно переадресація портів працює. Крім того, переконалися, що сервер працює на вашій гостьовій машині (використовуючи гостьові машини firefox та відкриваючи сторінку?) PS добре, здається, ви вже отримали свою відповідь :)
private_meta

1

Моя ОС і гостьова ОС - це Windows 7, і єдиний спосіб їх підключення - це налаштувати мережевий адаптер в режимі "NAT", а потім використовувати IP 10.0.2.2, як @tm_lv написав https://superuser.com/a/287323/314495

Я спробував встановити мережевий адаптер в режим "Brigde". Я відключив обидва брандмауери та використав правильний IP, але не працював. Я не знаю чому.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.