2022-10-03 15:20:34 +00:00
|
|
|
# role_dnsmasq
|
2022-10-03 13:04:23 +00:00
|
|
|
|
2022-10-03 15:20:34 +00:00
|
|
|
Ce rôle permet d'installer et configurer dnsmasq.
|
|
|
|
|
|
|
|
## Variables
|
|
|
|
|
2024-05-06 18:18:05 +00:00
|
|
|
### dnsmasq_domain
|
2022-10-03 15:20:34 +00:00
|
|
|
|
|
|
|
Nom de domain utilisé pour qualifier les noms courts.
|
|
|
|
|
|
|
|
*<span style="text-decoration: underline">Valeur par défaut:</span> aucune*
|
|
|
|
|
2024-05-06 18:18:05 +00:00
|
|
|
### dnsmasq_servers
|
2022-10-03 15:20:34 +00:00
|
|
|
|
|
|
|
Liste d'adresses IP auxquelles les requêtes DNS sont transmises si dnsmasq ne porte pas le domaine.
|
|
|
|
|
|
|
|
*<span style="text-decoration: underline">Valeur par défaut:</span> aucune*
|
|
|
|
|
2024-05-06 18:20:59 +00:00
|
|
|
### dnsmasq_hosts
|
2022-10-03 15:20:34 +00:00
|
|
|
|
|
|
|
Liste d'IP ou de noms d'hôtes servant de serveur DNS.
|
|
|
|
|
|
|
|
*<span style="text-decoration: underline">Valeur par défaut:</span> aucune*
|
|
|
|
|
2023-06-15 09:12:20 +00:00
|
|
|
### dnsmasq_host_ips
|
2022-10-03 15:20:34 +00:00
|
|
|
|
2023-06-15 09:12:20 +00:00
|
|
|
Liste des IP de l'hôte.
|
2022-10-03 15:20:34 +00:00
|
|
|
|
|
|
|
*<span style="text-decoration: underline">Valeur par défaut:</span> aucune*
|
|
|
|
|
|
|
|
### dnsmasq_host_aliases
|
|
|
|
|
|
|
|
Liste d'alias pour un hôte (*host_groups*).
|
|
|
|
|
|
|
|
*<span style="text-decoration: underline">Valeur par défaut:</span> aucune*
|
|
|
|
|
|
|
|
### dnsmasq_client_filename
|
|
|
|
|
|
|
|
Nom du fichier pour le client.
|
|
|
|
|
|
|
|
*<span style="text-decoration: underline">Valeur par défaut:</span> `{{ inventory_hostname }}`*
|
|
|
|
|
|
|
|
### dnsmasq_client_hostname
|
|
|
|
|
|
|
|
Nom d'hôte du client.
|
|
|
|
|
|
|
|
*<span style="text-decoration: underline">Valeur par défaut:</span> `{{ inventory_hostname }} {{ inventory_hostname_short }}`*
|
|
|
|
|
2023-09-26 09:12:29 +00:00
|
|
|
### dnsmasq_specifics
|
|
|
|
|
|
|
|
Liste de dictionnaires contenant le nom d'hôte, les alias et la liste d'IP associées.
|
|
|
|
|
|
|
|
*<span style="text-decoration: underline">Valeur par défaut:</span> aucune*
|
|
|
|
|
2022-10-03 15:20:34 +00:00
|
|
|
## Exemple d'utilisation
|
|
|
|
|
|
|
|
### inventory.yml
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
---
|
|
|
|
|
|
|
|
all:
|
|
|
|
hosts:
|
|
|
|
host1.ykn.local:
|
|
|
|
host2.ykn.local:
|
|
|
|
children:
|
|
|
|
dnsservers:
|
|
|
|
hosts:
|
|
|
|
dnsmasq1.ykn.local:
|
|
|
|
dnsmasq2.ykn.local:
|
|
|
|
```
|
|
|
|
|
|
|
|
### group_vars/all.yml
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
---
|
|
|
|
|
2024-05-06 18:20:59 +00:00
|
|
|
dnsmasq_hosts: "{{ groups['dnsservers'] }}"
|
2022-10-03 15:20:34 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### group_vars/dnsservers.yml
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
---
|
|
|
|
|
2024-05-06 18:18:05 +00:00
|
|
|
dnsmasq_domain: ykn.local
|
|
|
|
dnsmasq_servers:
|
2022-10-03 15:20:34 +00:00
|
|
|
- 127.0.0.1#53000
|
|
|
|
- ::1#53000
|
|
|
|
```
|
|
|
|
|
|
|
|
### host_vars/host1.ykn.local.yml
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
---
|
|
|
|
|
|
|
|
dnsmasq_host_ipv4: [192.168.50.6]
|
|
|
|
dnsmasq_host_ipv6: [fd00:ff50::d006]
|
|
|
|
|
|
|
|
dnsmasq_host_alias:
|
|
|
|
- monsuperhost1.ykn.local
|
|
|
|
- monsuperhost1
|
|
|
|
- toto.ykn.local
|
|
|
|
- toto
|
|
|
|
```
|
|
|
|
|
|
|
|
### playbook.yml
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
---
|
|
|
|
|
|
|
|
- name: Déployer les serveurs DNS
|
|
|
|
hosts: dnsservers
|
|
|
|
roles:
|
|
|
|
- name: stubby
|
|
|
|
- name: dnsmasq
|
|
|
|
- name: nftables
|
|
|
|
|
|
|
|
- name: Gérer l'enregistrement DNS
|
|
|
|
hosts: 'all:!dnsservers'
|
|
|
|
gather_facts: false
|
|
|
|
tasks:
|
|
|
|
- name: Inclure le rôle
|
|
|
|
ansible.builtin.include_role:
|
|
|
|
name: dnsmasq
|
|
|
|
tasks_from: client
|
|
|
|
```
|