Назад | Перейти на главную страницу

Запретить dnsmasq предлагать DHCP только виртуальным машинам на локальном хосте?

Мне нужно настроить dnsmasq, чтобы предлагать DHCP (и, возможно, DNS) виртуальным машинам, работающим только на локальном хосте, а не другим системам, выполняющим обнаружение DHCP, которые являются внешними по отношению к ящику с dnsmasq. Я просто задаю параметры:

interface=lo0
bind-interfaces

Или нужна другая конфигурация?

Прослушивание интерфейса loopback, вероятно, не будет работать, потому что ваши виртуальные машины не подключены к интерфейсу loopback (поэтому dnsmasq не увидят их DHCP-запросы).

Тебе понадобится dnsmasq для прослушивания интерфейса, к которому подключены ваши виртуальные машины. Как правило, это будет мостовой интерфейс. Не видя, как настроена ваша система, сложно дать более подробный ответ.

Если вы используете libvirt, то по умолчанию (по крайней мере, в системах типа RedHat) вы получаете dnsmasq экземпляр слушает virbr0 которые запускаются так:

/sbin/dnsmasq --strict-order --local=// --domain-needed \
  --pid-file=/var/run/libvirt/network/default.pid \
  --conf-file= --except-interface lo --bind-dynamic --interface virbr0 \
  --dhcp-range 192.168.122.2,192.168.122.254 \
  --dhcp-leasefile=/var/lib/libvirt/dnsmasq/default.leases \
  --dhcp-lease-max=253 --dhcp-no-override