1

У меня ноутбук под управлением Linux, подключенный к локальной сети с помощью Wi-Fi. Я использовал virt-manager для создания виртуальной машины KVM/QEMU и установил на нее Ubuntu. Как и ожидалось, он может подключаться к Интернету для загрузки обновлений и т.д.

Я хотел бы запустить Apache в гостевой системе, чтобы заняться веб-разработкой, и просматривать сайты на нем с хост-машины. Гость будет управлять несколькими веб-сайтами, и я не хочу указывать номер порта при просмотре, поэтому я бы хотел, чтобы у гостя был собственный IP-адрес, который виден хосту, поэтому я могу просто изменить /etc / хоста хост-файл, указывающий на гостя.

Мне все равно, как гость получает доступ к Интернету. Он должен быть в состоянии, но должен быть виден только хосту, а не другим компьютерам. Поэтому, если гость получает доступ к Интернету через один виртуальный сетевой адаптер, а хост - через другой, это нормально.

Я читал, что тот факт, что хост использует Wi-Fi, важен, потому что я не могу подключиться к wlan0.

Какой самый простой способ добиться этого, учитывая, что я не гуру сетей /iptables?

Обновление: я забыл упомянуть, что гостевой компьютер был настроен как пользователь без полномочий root, то есть с использованием qemu:///session. Я не знаю, имеет ли это какое-либо отношение, но, похоже, это означает, что я не вижу виртуальную сеть «по умолчанию», которую libvirtd конфигурирует для системных виртуальных машин qemu:///.

Обновление 2: я только что нашел информацию в документации libvirt, в которой говорится, что SLIRP Userspace является единственным вариантом, доступным для непривилегированных пользователей. Означает ли это, что то, что я хотел бы сделать, невозможно без запуска виртуальной машины от имени root?

Стек пользователя SLIRP

Предоставляет виртуальную локальную сеть с NAT для внешнего мира. Виртуальная сеть имеет службы DHCP и DNS и будет выдавать адреса гостевых виртуальных машин, начиная с 10.0.2.15. Маршрутизатор по умолчанию будет 10.0.2.2, а DNS-сервер будет 10.0.2.3. Эта сеть является единственной возможностью для непривилегированных пользователей, которым требуется, чтобы их виртуальные машины имели исходящий доступ.

1 ответ1

0

После прочтения на сайте libvirt я пришел к выводу, что драйвер сеанса qemu:/// не подходит для этого случая использования, и именно поэтому я боролся с сетью при его использовании.

В документации говорится:«Предполагаемый вариант использования драйвера [qemu:///session] - виртуализация рабочего стола, когда виртуальные машины хранят свои образы дисков в домашнем каталоге пользователя и управляются из сеанса входа в локальный рабочий стол». (мой акцент).

После миграции моей виртуальной машины на использование системного драйвера qemu:/// я могу получить доступ к сетевому мосту «по умолчанию», поэтому и виртуальная машина, и хост имеют частные IP-адреса и могут общаться друг с другом. Поэтому ответом было просто использовать систему qemu:/// вместо qemu:/// session.

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