Как получить доступ к localhost: 8080, работающему на Ubuntu из Windows, запущенной в виртуальной коробке?

У меня есть IP-адрес для машины с Ubuntu, и я хочу получить доступ к приложению, работающему на локальном хосте в Ubuntu, из моего виртуального окна Windows. Есть ли способ сделать это? Ввод [адрес inet]: 8080 не работает.

27
задан 8 November 2017 в 22:20

5 ответов

У Windows есть «своя» localhost, поэтому вы должны «помочь» ей найти ту, которая есть в Ubuntu.

В вашей виртуальной машине перейдите на этот IP http://10.0.2.2/, и он должен работать. Вы можете отредактировать файл хоста Windows, чтобы localhost указывал на этот ip, чтобы вам не пришлось его запоминать.

В: C:\Windows\System32\drivers\etc\hosts

Добавить:

10.0.2.2 localhost
0
ответ дан 8 November 2017 в 22:20

Вы можете настроить виртуальную машину на использование мостового соединения. Таким образом, виртуальная машина получит свой собственный IP-адрес, и вы сможете подключиться к хост-машине.

  1. Щелкните правой кнопкой мыши на главном компьютере (пока он не запущен)
  2. Выберите « Настройки »
  3. Выберите « Сеть
  4. На вкладке « Адаптер 1 » установите для « Прикреплено к » значение « Мостовой адаптер ».
0
ответ дан 8 November 2017 в 22:20

Если вы используете Ubuntu, вы должны сначала отключить брандмауэр.

sudo ufw disable

Теперь найдите ваш ipv4-адрес в системных настройках-> Сеть и нажмите на стрелку подключенного Wi-Fi, чтобы получить больше информации об этом. Там вы найдете ipv4-адрес вашего компьютера. Затем вы можете использовать localhost вашего компьютера как

http: // ipv4: portno / yourpagename

Не забудьте включить брандмауэр после завершение вашей работы. Использование-

sudo ufw enable

Приветствия

0
ответ дан 8 November 2017 в 22:20

Если Вы решили, что это - Ваш брандмауэр, я советовал бы добавлять это правило вместо того, чтобы отключить Ваш брандмауэр:

sudo ufw allow 8080

Когда Вы закончены, необходимо работать:

sudo ufw status numbered

найдите числа в скобках. Скажите, что это [ 1] и [ 3]:

sudo ufw delete 1 3

Затем если Вы будете на виртуальном поле, то Вы перейдете к http://10.0.2.2:8080 если у Вас есть свой сетевой набор как NAT. Можно сделать это для любого порта, и он будет работать то же.

Даже при том, что это - некоторая дополнительная работа, Вы никогда не должны отключать свой брандмауэр даже в защищенной сети.

0
ответ дан 8 November 2017 в 22:20

Сначала убедитесь, что процесс веб-сервера запущен. Введите localhost:8080 в окне браузера на вашем компьютере с Ubuntu. Если вы получили ожидаемую страницу, переходите к следующему шагу, в противном случае запустите процесс веб-сервера и повторите попытку.

Во-вторых, убедитесь, что обе машины находятся в одной подсети. то есть что-то вроде 192.168.x.y/255.255.255.0 и 192.168.x.z/255.255.25.0. Если нет, внесите необходимые изменения и перейдите к следующему шагу.

В-третьих, проверьте, работает ли брандмауэр на вашем сервере Ubuntu. Если это так, проверьте, открыт ли нужный порт (8080 в вашем случае). Если вы не хотите открывать порт для публичного доступа, вы можете настроить правило для приема только трафика из локальной подсети.

Редактировать: Шаг 0. Выполнить настройки, предложенные в ответе @Eeroz

0
ответ дан 8 November 2017 в 22:20

Другие вопросы по тегам:

Похожие вопросы: