Proxmox на Linux VMware Workstation – нет доступа к сети внутри гостевых ОС

 

Proxmox на Linux VMware Workstation – нет доступа к сети внутри гостевых ОС

В этой короткой статье-шпаргалке будет рассказано с какой особенностью возможно столкнуться при настройке Proxmox на Linux VMware Workstation. Тестирование проблемы с доступом к сети во вложенной виртуализацией Hyper-V и ESXi на VMware Workstation не производилось. Однако, с большой долей вероятности там данная проблема также воспроизведется. Поэтому, приведенное ниже решение должно помочь.

Описание проблемы

Виртуальные машины, подключенный к виртуальной сети Proxmox, не имели доступа к шлюзу внутри локальной сети. Как следствие, у виртуальных машин отсутствовал доступ в Интернет.

Причем, по DHCP виртуальная машина или контейнер Proxmox получали IP-адрес.

Однако, если попытаться проверить доступность шлюза вунтри локальной сети (через утилиту ping), то ни один пакет не доходил до целевого узла. Как результат, доступа во внешний мир с виртуальных машин или контейнеров тоже не было.

Окружение

Версия операционной системы: Linux Mint 20.3 Cinnamon (kernel 5.4.0-121).

Версия гипервизора: VMware® Workstation 15 Pro (15.5.2 build-15785246).

Ядро и версия Proxmox: Proxmox Virtual Environment 7.2-7 (kernel 5.15.39-1).

Настройки виртуальной сети Proxmox:


Причина

Файлы устройств виртуальных сетей (/dev/vmnet*) не были настроены на прием и передачу всех пакетов (promiscuous mode).

Исходные разрешения на файлы устройств:

sudo ls -l /dev/vmnet*

root@mintwks:/home/roman# sudo ls -l /dev/vmnet*

crw-rw---- 1 root root 119, 0 Jul 13 22:07 /dev/vmnet0

crw-rw---- 1 root root 119, 1 Jul 13 22:07 /dev/vmnet1

crw-rw---- 1 root root 119, 8 Jul 13 22:07 /dev/vmnet8

root@mintwks:/home/roman#


В операционной системе происходит работа под учетной записью roman и группой roman. Соответственно, у этой УЗ нет доступа к этим файлам устройств и нельзя полноценно работать с виртуальными сетями внутри гостевых ОС.

roman@mintwks:~$ id

uid=1000(roman) gid=1000(roman) groups=1000(roman),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),114(lpadmin),134(sambashare)

Решение

Необходимо включить прием и передачу всех пакетов (promiscuous mode) для виртуальных сетей VMware. Решение данной проблемы взято с данного ресурса. 

Были добавлены две команды в файл nano /etc/init.d/vmware, которые назначают группу владельца (roman в данном случае, именно эта группа является основной группой УЗ) и добавляют разрешения на запись для группы.

Открываем файл /etc/init.d/vmware на редактирование:

nano /etc/init.d/vmware

Находим функцию vmwareStartVmnet() и добавляем две команды:

# Start the virtual ethernet kernel service

vmwareStartVmnet() {

   vmwareLoadModule $vnet

   "$BINDIR"/vmware-networks --start >> $VNETLIB_LOG 2>&1

   chgrp roman /dev/vmnet*

   chmod g+rw /dev/vmnet*

}

Обратите внимание, что в вашем случае имя группы может быть другое, т.е. первая команда должна выглядеть слудющим образом:

chgrp <имя_вашей_группы> /dev/vmnet*

Вносим и сохраняем изменения. Перезагружаемся. Виртуальные сети Proxmox на Linux VMware Workstation теперь должны работать корректно.

 

Источник.

Метаданные статьи

Идентификатор статьи:
13
Категория:
Дата добавления:
2024-02-29 19:36:31
Просмотры:
253
Рейтинг (Голоса):
(1)