- name: nameserver | bind | install packages package: name: "{{ bind_package }}" state: present - name: nameserver | bind | basic configuration replace: path: "{{ named_conf_options }}" regexp: replace: "{{ item.option }}" validate: "{{ named_checkconf }} {{ named_conf_options }}" loop: - { regexp: '^\s*listen-on \{(?:[\s\n]*(?:\d{1,3}\.){3}\d{1,3};)*[\s\n]*\};', option: "\tlisten-on { {{ ansible_default_ipv4.address }}; };"} - { regexp: '^\s*listen-on-v6 \{(?:\s\n]*(?:any;[\s\n]*\};', option: "\tlisten-on-v6 { {{ ansible_default_ipv6.address }}; };"} - { regexp: '^\s*listen-on-v6 \{(?:[\s\n]*(?:[\da-f:]*;)*[\s\n]*\};', option: "\tlisten-on-v6 { {{ ansible_default_ipv6.address }}; };"} - name: nameserver | bind | basic configuration cont'd lineinfile: path: "{{ named_conf_options }}" regexp: '^\s*listen-on \{.*\};' state: present line: "\tlisten-on { {{ ansible_default-ipv4.address }}; };" insertafter: "options {" validate: "{{ named_checkconf }} {{ named_conf_options }}"