jriguera.dnsmasq
ansible-role-dnsmasq
Wszechstronna rola do konfiguracji dnsmasq, stworzona zgodnie z tą filozofią:
https://github.com/jriguera/ansible-role-pattern/blob/master/README.md
Ta rola wspiera definiowanie różnych interfejsów do różnych celów (dns, tftp ...) oraz wiele parametrów dnsmasq. Może również zarządzać plikiem resolv.conf.
Działa z Ansible 2.0 na Ubuntu Trusty, Xenial i CentOS 7.
Konfiguracja
Domyślne parametry konfiguracji to:
dnsmasq_enabled_on_startup: True
# Zarządzaj resolvconf
dnsmasq_resolvconf: False
# Instalacja z repozytoriów lub bezpośrednio z pakietów systemowych
dnsmasq_os_packages: True
# Parametry globalne, wymagane ustawienia! w przeciwnym razie będą ignorowane!
dnsmasq_dhcp: True
dnsmasq_tftp: True
### resolv.conf
#dnsmasq_host_domain: local
#dnsmasq_host_search: local
dnsmasq_host_resolvers: [ "127.0.0.1" ]
# Ustaw instytucję, do której dnsmasq będzie wysyłać wpisy syslog, domyślnie to
# DAEMON, a w trybie debugowania to LOCAL0. Jeżeli podana instytucja
# zawiera przynajmniej jeden znak '/', jest traktowana jako nazwa pliku,
# a dnsmasq zapisuje do tego pliku, zamiast do syslog. Jeżeli instytucja to '-'
# to dnsmasq zapisuje do stderr.
dnsmasq_conf_log: /var/log/dnsmasq.log
# Włącz asynchroniczne logowanie i opcjonalnie ustaw limit na liczbę
# linii, które będą kolejkowane przez dnsmasq, gdy zapis do syslog jest wolny.
#dnsmasq_conf_log_async:
dnsmasq_conf_log_dns: False
# Lista adresów ip lub interfejsów do nasłuchiwania (pusta lista dla wszystkich)
dnsmasq_conf_listen: []
# Na systemach, które to wspierają, dnsmasq wiąże adres dziki,
# nawet gdy nasłuchuje tylko na niektórych interfejsach. Odrzuca wtedy
# żądania, na które nie powinien odpowiadać. To ma tę zaletę,
# że działa nawet gdy interfejsy pojawiają się i znikają oraz zmieniają adresy.
dnsmasq_conf_bind_interfaces: 'dynamic'
### DNS
# Akceptuj zapytania DNS tylko od hostów, których adres jest w lokalnej podsieci,
# tj. podsieci, dla której interfejs istnieje na serwerze.
#dnsmasq_conf_local_service: True
# Nigdy nie przekazuj prostych nazw (bez kropki lub części domeny)
dnsmasq_conf_domain_needed: True
# Włącz kod do wykrywania pętli przekazywania DNS; tj. sytuacji, gdy zapytanie
# wysłane do jednego z serwerów upstream ostatecznie wraca jako nowe zapytanie do
# instancji dnsmasq.
#dnsmasq_conf_dns_loop_detect: True
# Wszystkie odwrócone wyszukiwania dla prywatnych zakresów IP (tj. 192.168.x.x, itp.),
# które nie zostały znalezione w /etc/hosts lub w pliku dzierżaw DHCP
# są odpowiedziane "brak takiej domeny", zamiast być przekazywane dalej.
# Nigdy nie przekazuj adresów w przestrzeniach adresowych, które nie są routowane.
dnsmasq_conf_bogus_priv: True
# Jeśli nie chcesz, aby dnsmasq odczytywał /etc/hosts, odkomentuj poniższą linię.
dnsmasq_conf_no_hosts: False
# Dodatkowy plik hosts, format /etc/hosts (to jest lista!)
#dnsmasq_conf_hosts:
# - ["127.0.0.1", "localhost"]
# - ["::1", "ip6-localhost", "ip6-loopback"]
# - ["fe00::0", "ip6-localnet"]
# - ["ff00::0", "ip6-mcastprefix"]
# - ["ff02::1", "ip6-allnodes"]
# - ["ff02::2", "ip6-allrouters"]
# - ["192.168.1.10", "foo.mydomain.org", "foo" ]
dnsmasq_conf_hosts: []
# Ustaw tutaj rozmiar pamięci podręcznej dns.
cache-size: 1024
# Wyłącz pamięć podręczną dla odpowiedzi negatywnych. Pamięć podręczna negatwynych
# odpowiedzi pozwala dnsmasq pamiętać o odpowiedziach "brak takiej domeny"
# z serwerów nazw upstream i odpowiadać na podobne zapytania bez dalszego
# przekazywania ich.
# Negatywne odpowiedzi z serwerów upstream normalnie zawierają informacje o
# czasie życia w rekordach SOA, które dnsmasq wykorzystuje do pamięci podręcznej.
# Jeśli ten parametr nie jest zdefiniowany: "no-negcache".
dnsmasq_conf_negcache: 5
# Ta flaga zmusza dnsmasq do próby każdej kwerendy z każdym serwerem ściśle w
# kolejności, w jakiej pojawiają się w /etc/resolv.conf
dnsmasq_conf_strict_order: False
# Ta flaga zmusza dnsmasq do wysyłania wszystkich zapytań do wszystkich dostępnych serwerów.
# Odpowiedź z serwera, który odpowie jako pierwszy, zostanie zwrócona
# do pierwotnego żądania.
dnsmasq_conf_all_servers: False
# Jeśli chcesz, by dnsmasq odczytywał "/etc/resolv.conf" lub jakikolwiek inny plik.
# Pusta lub niezdefiniowana wartość wyłączy odczytywanie resolv.conf
dnsmasq_conf_resolv: /etc/resolv.conf
# Nie sprawdzaj /etc/resolv.conf pod kątem zmian.
dnsmasq_conf_no_poll: False
# Jeśli dnsmasq_conf_no_poll jest False, to /etc/resolv.conf jest ponownie odczytywane
# lub serwery upstream są ustawiane przez DBus, wyczyść pamięć podręczną DNS.
dnsmasq_conf_clear_on_reload: True
# Określ adres IP serwerów upstream bezpośrednio. Ustawienie tej flagi nie
# zapobiega odczytywaniu /etc/resolv.conf: ['localnet', '192.168.0.1']
# Przykład trasowania zapytań PTR do serwerów nazw: to wyśle wszystkie:
# zapytania z adresu->nazwa dla 192.168.3/24 do serwera nazw 10.1.2.3
# ['3.168.192.in-addr.arpa', '10.1.2.3']
#dnsmasq_conf_servers:
# - [ "/google.com/", "8.8.8.8" ]
# - "8.8.4.4"
dnsmasq_conf_servers: [ "8.8.8.8", "8.8.4.4" ]
# Zwróć rekord MX wskazujący na siebie dla wszystkich lokalnych maszyn: '_self'
# Rekord MX wskazujący na serwer dnsmasq dla wszystkich lokalnych maszyn: '_local' lub ''
# Rekord MX wskazujący na "servername" dla wszystkich lokalnych maszyn: 'servername'
# Zwróć rekord MX o nazwie "maildomain.com" z celem
# "servername" i preferencją 50: [maildomain.com, servername, 50]
#dnsmasq_conf_mx: servername
#dnsmasq_conf_mx_domain: {{ hostvars['k4.ww.mens.de'].
#dnsmasq_conf_mx_pref: 1
# Dodaj rekordy A, AAAA i PTR do DNS. To dodaje jedną lub więcej nazw do
# DNS z przypisanymi rekordami IPv4 (A) i IPv6 (AAAA)
#dnsmasq_conf_host_records:
# - []
# Zdefiniuj strefę DNS, dla której dnsmasq działa jako serwer autorytatywny.
#dnsmasq_conf_auth_zone: []
### DHCP
# Loguj wiele dodatkowych informacji o transakcjach DHCP.
dnsmasq_conf_log_dhcp: False
# Ustaw domenę dla dnsmasq. To jest opcjonalne, ale jeśli jest ustawione,
# realizuje następujące zadania:
# 1) Pozwala hostom DHCP mieć w pełni kwalifikowane nazwy domenowe, pod warunkiem,
# że część domenowa zgadza się z tym ustawieniem.
# 2) Ustawia opcję DHCP "domain", co potencjalnie ustawia domenę dla wszystkich
# systemów skonfigurowanych przez DHCP
# 3) Dostarcza część domenową dla "expand-hosts"
# Jeśli domena jest podana jako "#" wtedy domena jest odczytywana z pierwszej
# dyrektywy "search" w /etc/resolv.conf
dnsmasq_conf_domain: '#'
# Tylko jeśli dnsmasq_conf_domain jest ustawiona, niekwalifikowana nazwa
# nie jest już umieszczana w DNS, tylko nazwa kwalifikowana.
dnsmasq_conf_dhcp_fqdn: True
# Powinno być ustawione, gdy dnsmasq jest zdecydowanie jedynym serwerem DHCP w sieci.
dnsmasq_conf_dhcp_authoritative: True
# Dnsmasq jest zaprojektowany do wyboru adresów IP dla klientów DHCP przy użyciu
# hasha adresu MAC klienta.
dnsmasq_conf_dhcp_sequential_ip: True
# Wyłącz ponowną używanie pól nazwy serwera DHCP i nazwy pliku jako dodatkowej przestrzeni opcji.
dnsmasq_conf_dhcp_no_override: True
# Odkomentuj, aby włączyć zintegrowany serwer DHCP, musisz
# podać zakres adresów dostępnych do dzierżawy i opcjonalnie
# czas dzierżawy. Jeśli masz więcej niż jedną sieć, musisz
# powtórzyć to dla każdej sieci, w której chcesz dostarczyć usługę DHCP.
#dnsmasq_conf_dhcp: []
#dnsmasq_conf_dhcp:
# - device: eth0:
# range: [192.168.1.80, 192.168.1.150, nieskończoność]
# option: []
# ignore_names: True
# generate_names: True
# boot: []
# tftp: /var/lib/tftpboot
# Odczytaj informacje o hostach DHCP z listy lub z określonego lokalnego pliku
#dnsmasq_conf_dhcp_hosts: []
# Całkowicie stłumić użycie pliku bazy danych dzierżawy. Plik nie będzie
# tworzony, odczytywany ani zapisywany.
dnsmasq_conf_dhcp_leasefile_ro: False
# Kiedy tworzona jest nowa dzierżawa DHCP, lub stara jest niszczona,
# lub zakończenie transferu pliku TFTP, wykonywalny plik określony
# przez tę opcję jest uruchamiany.
#dnsmasq_conf_dhcp_script: files/program.bin
### TFTP
# Włącz zabezpieczony tryb TFTP: bez tego, każdy plik, który jest czytelny przez
# proces dnsmasq zgodnie z normalnymi zasadami kontroli dostępu Unix jest dostępny
# za pomocą TFTP
dnsmasq_conf_tftp_secure: False
# Przekształci nazwy plików w zapytaniach TFTP na małe litery. To jest przydatne w
# zapytaniach z urządzeń Windows
dnsmasq_conf_tftp_lowercase: True
# Ustaw maksymalną liczbę równoczesnych połączeń TFTP
dnsmasq_conf_tftp_max: 50
# Zatrzymaj serwer TFTP przed negocjacją opcji "blocksize" z klientem
dnsmasq_conf_tftp_no_blocksize: False
Możesz nadpisać te domyślne parametry jako zmienne roli. Zobacz przykład w site.yml
z vagrant i przetestuj, używając vagrant up
.
Oprócz zarządzania dnsmasq, ta rola jest w stanie zarządzać plikiem /etc/resolv.conf
, definiując dnsmasq_resolvconf: true
oraz parametry dnsmasq_host_*
.
Autor
José Riguera López jriguera@gmail.com
Zainstaluj
ansible-galaxy install jriguera.dnsmasq
Licencja
Unknown
Pobrania
714
Właściciel