Мне нужно настроить 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