Использование DHCP-сервера Dnsmasq в Proxmox для IP виртуальных машин

Использование DHCP-сервера Dnsmasq в Proxmox для IP виртуальных машин

 

Dnsmasq — это простой в настройке и легкий DHCP-сервер и DNS-сервер пересылки. Dnsmasq предназначен в первую очередь для предоставления службы DNS и, опционально, DHCP в небольшой сети. DHCP-сервер в Dnsmasq легко интегрируется с DNS-сервером. Машины с IP-адресами, выделенными DHCP-сервером, появляются в DNS с именами, настроенными либо на каждом хосте, либо в центральном файле конфигурации.

Dnsmasq поддерживает динамическую и статическую аренду DHCP. Помимо заявленных функций, он поддерживает BOOTP / TFTP, который может использоваться для сетевой загрузки бездисковых машин. Dnsmasq можно использовать в платформе виртуализации Proxmox для динамического или статического назначения IP-адресов, а также для управления DNS. Мы запустим Dnsmasq в одном гипервизоре Proxmox, при этом служба будет привязана к определенному сетевому интерфейсу / мосту.

Шаг 1: Установите dnsmasq на Proxmox VE 6.x

Я установлю dnsmasq в один гипервизор Proxmox из исходных репозиториев по умолчанию.

sudo apt update
sudo apt install dnsmasq

Приступите к установке dnsmasq на Proxmox VE 6.x

Reading state information... Done
The following additional packages will be installed:
  dns-root-data dnsmasq-base
Suggested packages:
  resolvconf
The following NEW packages will be installed:
  dns-root-data dnsmasq dnsmasq-base
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 463 kB of archives.
After this operation, 1,027 kB of additional disk space will be used.
Do you want to continue? [Y/n] y

Также установите пакет dnsutils , который предоставляет команду dig :

sudo apt install dnsutils -y

Проверьте свою установку:

dig infoit.com.ua @localhost
nslookup infoit.com.ua localhost

Функция DNS в Dnsmasq настроена для пересылки всех запросов к настройкам DNS вашей системы по умолчанию, как указано в файле /etc/resolv.conf .

Шаг 2. Настройте DHCP-сервер с помощью Dnsmasq.

После успешной установки Dnsmasq на вашем сервере Proxmox вы можете приступить к настройке службы DHCP.

sudo vim /etc/dnsmasq.conf

Установить домен для dnsmasq:

domain=example.com

Сообщите dnsmasq, какой интерфейс Ethernet он будет использовать для прослушивания запросов DHCP:

#Around line 106
interface=vmbr1
# Or which to listen on by address (remember to include 127.0.0.1 if you use this.)
#listen-address=

Установите диапазон IP-адресов DHCP-сервера для раздачи.

#around line 159
dhcp-range=192.168.50.50,192.168.50.200,12h

Установите маршрут по умолчанию, предоставленный dnsmasq:

#around line 337
dhcp-option=vmbr1,3,192.168.50.1
#dhcp-option=eth0,3,192.168.50.1

Предоставьте восходящие DNS-серверы:

#line 66
# You can use Google's open DNS servers
server=8.8.8.8
server=8.8.4.4

Задайте путь к файлу для базы данных аренды DHCP:

dhcp-leasefile=/var/lib/misc/dnsmasq.leases

Проверьте свои конфигурации:

$ sudo dnsmasq --test
dnsmasq: syntax check OK.

Перезапустите службу dnsmasq:

sudo systemctl restart dnsmasq
sudo systemctl enable dnsmasq

Шаг 3. Создайте виртуальную машину в сети с помощью службы DHCP.

Создайте новую виртуальную машину из веб-консоли Proxmox.

Дадим ему имя и выберем узел, на котором он будет работать.

Выберите установочный диск ОС.

Выберите правильную сеть (она должна быть такой же, как та, которая используется в конфигурациях DHCP dnsmasq )

Установите операционную систему и после завершения перезагрузитесь и проверьте IP-адрес, если от DHCP.

Если интерфейс не получил IP-адрес, назначенный DHCP-сервером автоматически, вы можете попробовать запрос вручную:

sudo dhclient interface

На этом наша статья заканчивается. Не стесняйтесь делиться своими настройками и результатами тестирования в разделе комментариев.