dnsmasq

Ansible Роль: dnsmasq

CI

Установите и настройте легкий DHCP и DNS сервер, dnsmasq, на Linux.

Требования

Без требований.

Переменные роли

Доступные переменные перечислены ниже вместе с их значениями по умолчанию (см. defaults\main.yaml)

Сетевой интерфейс и IP-адрес, на котором слушает Dnsmasq:

dnsmasq_interface: ''
dnsmasq_listen_address: ''

Значения по умолчанию - пустые. Роль получает информацию о интерфейсе и IP из собранных фактов. Если у сервера более одного интерфейса, укажите значения для этих переменных.

Локальное доменное имя:

dnsmasq_domain_name: example.ricsanfre.com

Внешние DNS-серверы (для передачи DNS-запросов):

dnsmasq_upstream_dns_servers:
  - 80.58.61.250
  - 80.58.61.254

Диапазон IP-адресов для DHCP:

dnsmasq_dhcp_range: '10.0.0.32,10.0.0.128'

По умолчанию он добавляется в конфигурацию DHCP и DNS для хостов в инвентаре (любой хост = группа all)

Переменные: ip, mac и hostname необходимо добавить к хостам в инвентаре:

hosts:
  all:
    children:
      cluster:
        hosts:
          server1:
            hostname: server1
            ip: 10.0.0.11
            mac: dc:a6:32:9c:29:b9
          server2:
            hostname: server2
            ip: 10.0.0.12
            mac: e4:5f:01:2d:fd:19
          server3:
            hostname: server3
            ip: 10.0.0.13
            mac: e4:5f:01:2f:49:05

Дополнительные записи DHCP и DNS можно добавить с помощью следующих переменных:

dnsmasq_additional_dhcp_hosts: {}
dnsmasq_additional_dhcp_hosts:
  ethernet_switch:
    desc: "Коммутатор Ethernet"
    mac: 94:a6:7e:7c:c7:69
    ip: 10.0.0.2
dnsmasq_additional_dns_hosts: {}
dnsmasq_additional_dns_hosts:
  ntp_server:
    desc: "NTP сервер"
    hostname: ntp
    ip: 10.0.0.1
  dns_server:
    desc: "DNS сервер"
    hostname: dns
    ip: 10.0.0.1

Активировать TFTP-сервис и указать корневую директорию TFTP

dnsmasq_enable_tftp: false
dnsmasq_tftp_root: /srv/tftp

Дополнительные настройки могут быть указаны, добавлены в конец конфигурационного файла dnsmasq

dnsmasq_additional_conf: []
dnsmasq_additional_conf: |-
        # Включение Netboot
        dhcp-boot=pxelinux.0
        dhcp-match=set:efi-x86_64,option:client-arch,7
        dhcp-boot=tag:efi-x86_64,bootx64.efi

Зависимости

Нет

Пример Playbook

---
- name: Dnsmasq
  hosts: host
  vars:
    - additional_dhcp_hosts:
        ethernet_switch:
          desc: "Коммутатор Ethernet"
          mac: 94:a6:7e:7c:c7:69
          ip: 10.0.0.2
    - additional_dns_hosts:
        ntp_server:
          desc: "NTP сервер"
          hostname: ntp
          ip: 10.0.0.1
        dns_server:
          desc: "DNS сервер"
          hostname: dns
          ip: 10.0.0.1
  roles:
    - role: ricsanfre.dnsmasq

Лицензия

MIT/BSD

Информация об авторе

Рикардо Санчес (ricsanfre)

О проекте

Dnsmasq installation and configuration role

Установить
ansible-galaxy install ricsanfre/ansible-role-dnsmasq
Лицензия
mit
Загрузки
3910
Владелец
Telecom engineer.