Я использую Virtualbox 4.3.30 и успешно настроил виртуальную машину с сетью только на хосте для работы по DHCP с нестатическим IP, но, конечно, для сервера виртуальной машины это по сути бесполезно. Поэтому сейчас я пытаюсь настроить сервер Linux виртуальной машины с доступом к Интернету и статическим IP-адресом только для хоста. Хост - Windows 8.1, гость - сервер Ubuntu.

Конфигурация виртуальной машины

У меня есть два сетевых устройства, одно для NAT и одно для хоста, настроенное на адаптер № 3. NAT позволяет получить доступ к Интернету, который работает. Адаптер только для хоста не позволяет хосту получать доступ к виртуальной машине.

Конфигурация VirtualBox

Адаптер № 3 только для хоста имеет отключенный DHCP, IP-адрес 192.168.50.101 и маску сети 255.255.255.0 .

Система ВМ

После запуска:

sudo ifconfig eth1 192.168.50.101 netmask 255.255.255.0 up

… (Отсюда ifconfig показывает, что eth1 (только для хоста) подключен к IP-адресу. На виртуальной машине, если я сделаю wget 192.168.50.101 она сама откроет страницу Nginx по умолчанию. С хоста я могу пропинговать статический IP-адрес, однако в браузере IP-адрес истекает с сообщением Unable to connect .

Материал, который я пробовал!

Я также попытался отредактировать /etc/network/interfaces здесь безуспешно.

Что тут происходит? Я предполагаю, что это не может быть проблема брандмауэра, так как хост подключается, когда только хост использует DHCP, и я могу успешно пропинговать с хоста. Кроме того, похоже, что сообщение браузера "не удается подключиться" появляется в браузере быстрее, чем простой тайм-аут.

Обновить:

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

1 ответ1

0

Вы заявляете, что установили следующее:

sudo ifconfig eth1 192.168.50.101 netmask 255.255.255.0 up

Из всего моего опыта использования VirtualBox гостевая ОС работает в сети в диапазоне 192.168.56.x Поэтому я бы рекомендовал использовать эту команду вместо:

sudo ifconfig eth1 192.168.56.10 netmask 255.255.255.0 up

Что касается того, почему я выбираю 192.168.56.10 вместо 192.168.56.101 - в своем комментарии к этому ответу вы заявили:

Нет, я не могу использовать 192.268.56.x как DHCP по умолчанию обычно работает в этом диапазоне, что приведет к конфликтам.

Ну, дело в том, что с сетевой 255.255.255.0 ничего, кроме последнего октета адреса, никогда не будет передано в большую сеть на хосте. Вот что такое маска. Кроме того, если вы посмотрите в «Предпочтения -> Сеть» в самом приложении VirtualBox, а затем в «Сети только для хоста», выберите эту сеть (должна быть vboxnet0 а затем щелкните значок редактирования и просмотрите настройки сервера DHCP, которые вы выбрали. найдет эти настройки DHCP-сервера:

  • Адрес сервера: 192.168.56.100
  • Маска сервера: 255.255.255.0
  • Нижняя граница адреса: 192.168.56.101
  • Верхняя граница адреса: 192.168.56.254

Обратите внимание, что DHCP не занимает весь диапазон IP-адресов в 192.168.56.x ; он просто начинается с 192.168.56.100 для самого DHCP-сервера, а затем переходит с 192.168.56.101 на 192.168.56.254 . Это означает, что IP-адреса в диапазоне от 192.168.56.2 до 192.168.56.99 бесплатны для статического использования. Обратите внимание, что я пропустил 192.168.56.1 поскольку это IP-адрес маршрутизатора VirtualBox, который соединяет ОС хоста с гостевой ОС.

А затем, чтобы сделать изменение постоянным, добавьте сетевой интерфейс в /etc/network/interfaces следующим образом. Откройте файл /etc/network/interfaces :

sudo nano /etc/network/interfaces

И затем, когда все, что протестировано, сделано и работает должным образом, вы можете добавить или настроить детали интерфейса следующим образом:

# The local hostmachine access interface.
auto eth1
iface eth1 inet static
address 192.168.56.100
netmask 255.255.255.0

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .