mirror of
https://github.com/roles-ansible/ansible_role_avahi_client.git
synced 2024-08-16 16:09:49 +02:00
Merge pull request #1 from roles-ansible/nsswitch
update nsswitch and variable names
This commit is contained in:
commit
4c67ceabec
10 changed files with 48 additions and 25 deletions
35
README.md
35
README.md
|
@ -7,18 +7,37 @@
|
|||
Avahi provides local hostname resolution using a "hostname.local" naming scheme.
|
||||
This ansible role installs the required dependencies and configures the DNS resolver accordingly.
|
||||
|
||||
You can opt-out from deploying a new ``/etc/nsswitch.conf`` config by setting ``avahi__configure_nsswitch`` to ``false``.
|
||||
You can opt-out from deploying a new ``/etc/nsswitch.conf`` config by setting ``avahi_client__configure_nsswitch`` to ``false``.
|
||||
|
||||
You can opt-in in a simple versionscheck that can prevent you from running a older version of this role by setting ``submodules_versioncheck`` to ``true``.
|
||||
|
||||
|
||||
Configuring nsswitch
|
||||
--------------------
|
||||
|
||||
If you want only IPv4 or IPv6 names resolved, change ``mdns`` to ``mdns4`` or ``mdns6`` in these variables:
|
||||
|
||||
```yaml
|
||||
avahi__mdns_name: 'mdns'
|
||||
avahi__mdns_minimal_name: 'mdns_minimal'
|
||||
avahi_client__mdns_name: 'mdns'
|
||||
avahi_client__mdns_minimal_name: 'mdns_minimal'
|
||||
```
|
||||
|
||||
Learn more
|
||||
------------
|
||||
+ [/etc/nsswitch.conf](https://man7.org/linux/man-pages/man5/nsswitch.conf.5.html)
|
||||
+ Avahi [wiki.archlinux.org](https://wiki.archlinux.org/title/Avahi)
|
||||
+ nss-mdns [0pointer.de](https://0pointer.de/lennart/projects/nss-mdns/#documentation)
|
||||
From the documentation of [nss-mdns](https://github.com/lathiat/nss-mdns)
|
||||
|
||||
> `mdns` resolves both IPv6 and IPv4 addresses, `mdns4` only IPv4 addresses and `mdns6` only IPv6 addresses.
|
||||
> `mdns{4,6,}_minimal` is mostly identical to the versions without `_minimal`. However, they differ in one way. The minimal versions will always deny to resolve host names that don't end in `.local` or addresses that aren't in the range `169.254.x.x` (the range used by IPV4LL/APIPA/RFC3927.)
|
||||
> Combining the `_minimal` and the normal NSS modules allows us to make mDNS authoritative for Zeroconf host names and addresses and use it as fallback for everything else.
|
||||
|
||||
|
||||
Learn more
|
||||
----------
|
||||
|
||||
* DNS-SD [http://dns-sd.org/](http://dns-sd.org/)
|
||||
* mDNS [http://www.multicastdns.org/](http://www.multicastdns.org/)
|
||||
|
||||
* Avahi [https://www.avahi.org/](https://www.avahi.org/)
|
||||
* Avahi git [https://github.com/lathiat/avahi](https://github.com/lathiat/avahi)
|
||||
* Avahi [wiki.archlinux.org](https://wiki.archlinux.org/title/Avahi)
|
||||
|
||||
* [NSS mdns plugin](https://github.com/lathiat/nss-mdns)
|
||||
* [/etc/nsswitch.conf](https://manpages.debian.org/unstable/manpages/nsswitch.conf.5.en.html)
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
---
|
||||
# deploy custom /etc/nsswitch.conf config
|
||||
avahi__configure_nsswitch: true
|
||||
avahi_client__configure_nsswitch: true
|
||||
|
||||
# mdns resolver name
|
||||
avahi__mdns_name: 'mdns'
|
||||
avahi__mdns_minimal_name: 'mdns_minimal'
|
||||
avahi_client__mdns_name: 'mdns'
|
||||
avahi_client__mdns_minimal_name: 'mdns_minimal'
|
||||
|
||||
# should we do a version check? (recomended)
|
||||
submodules_versioncheck: false
|
||||
|
|
|
@ -7,8 +7,8 @@
|
|||
when:
|
||||
- ansible_pkg_mgr == "apt"
|
||||
|
||||
- name: install avahi packages
|
||||
- name: Install Avahi packages
|
||||
become: true
|
||||
ansible.builtin.package:
|
||||
name: "{{ avahi_packages }}"
|
||||
name: "{{ avahi_client__packages }}"
|
||||
state: present
|
||||
|
|
|
@ -14,4 +14,4 @@
|
|||
|
||||
- name: configure /etc/nsswitch.conf
|
||||
ansible.builtin.include_tasks: nsswitch.yml
|
||||
when: avahi__configure_nsswitch | bool
|
||||
when: avahi_client__configure_nsswitch | bool
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
---
|
||||
- name: deploy /etc/nsswitch.conf
|
||||
- name: Deploy '/etc/nsswitch.conf'
|
||||
become: true
|
||||
ansible.builtin.template:
|
||||
src: 'templates/nsswitch.conf.j2'
|
||||
|
|
|
@ -12,7 +12,7 @@ gshadow: files
|
|||
|
||||
publickey: files
|
||||
|
||||
hosts: files mymachines myhostname {{ avahi__mdns_minimal_name }} [NOTFOUND=return] resolve [!UNAVAIL=return] dns {{ avahi__mdns_name }}
|
||||
hosts: files {{ avahi_client__mdns_minimal_name }} [NOTFOUND=return] resolve [!UNAVAIL=return] dns {{ avahi_client__mdns_name }} myhostname
|
||||
networks: files
|
||||
|
||||
protocols: db [NOTFOUND=return] files
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
---
|
||||
avahi_packages:
|
||||
- avahi
|
||||
- mdns-scan
|
||||
- nss-mdns
|
||||
avahi_client__packages:
|
||||
- 'avahi'
|
||||
- 'nss-mdns'
|
||||
# - 'mdns-scan'
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
---
|
||||
avahi_packages:
|
||||
avahi_client__packages:
|
||||
- 'avahi-discover'
|
||||
- 'avahi-utils'
|
||||
- 'mdns-scan'
|
||||
- 'libnss-mdns'
|
||||
# - 'avahi-autoipd'
|
||||
# - 'avahi-dnsconfd'
|
||||
# - 'mdns-scan'
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
---
|
||||
# versionscheck
|
||||
playbook_version_number: 6
|
||||
playbook_version_number: 7
|
||||
playbook_version_path: 'do1jlr.avahi_client.version'
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
---
|
||||
avahi_packages:
|
||||
- mdns-scan
|
||||
avahi_client__packages:
|
||||
- avahi
|
||||
# - 'mdns-scan'
|
||||
|
|
Loading…
Reference in a new issue