This project adheres to Semantic Versioning and human-readable changelog.

The current repository maintainer is drybjed.

debops.dnsmasq v0.1.0 - unreleased



  • Change default TFTP root directory to /srv/tftp/ to be compatible with defaults from tftpd-hpa package. [drybjed]

  • Switch from PXE boot to iPXE boot and drop support for installation of Debian Netboot Installer. Custom menu will be handled by a separate role. [drybjed]

  • Use real hostname as the A record on the gateway interface and point gw CNAME to it. [drybjed]

  • Create TFTP root directory if not present. [drybjed]

  • Use bind-dynamic option in newer OSes instead of bind-interfaces, this should fix an issue when changes in the network interface topology required dnsmasq to be restarted to listen on new interfaces. [drybjed]

  • Support a list for dnsmasq__etc_hosts and don’t read any hosts file by default. [ypid]

  • Changed variable namespace from dnsmasq_ to dnsmasq__. dnsmasq_[^_] variables are hereby deprecated.

    You might need to update your inventory. This oneliner might come in handy to do this:

    git ls-files -z | xargs --null -I '{}' find '{}' -type f -print0 | xargs --null sed --in-place --regexp-extended 's/\<(dnsmasq)_([^_])/\1__\2/g;'


  • Move condition for dnsmasq__bogus_priv to the defaults file to make transparent when this option is going to be applied. [ypid]

  • Change dnsmasq__domain to point to ansible_domain instead of ansible_fqdn by default. [ypid]


  • Remove "short subdomain" CNAME entries generated by Ansible from dnsmasq configuration. These entries may confuse DNS, it's better if search parameter in /etc/resolv.conf includes all relevant domains and subdomains instead. [drybjed]

  • Remove "short subdomain" CNAME entries from main dnsmasq configuration file. [drybjed]

  • Remove the debops_dnsmasq Ansible inventory group. Make sure you hosts are in debops_service_dnsmasq. [ypid]

  • Remove all of the Ansible role dependencies.

    Configuration of dependent services like firewall, TCP Wrappers is set in separate default variables. These variables can be used by the Ansible playbooks to configure settings related to dnsmasq in other services. [ypid]


  • Detection of dnsmasq__bogus_priv which did not work before because the bool filter interprets defaults to False for input it does not know about (like IP addresses). [ypid]