1
0
Fork 0
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:
L3D 2021-09-02 10:56:30 +02:00 committed by GitHub
commit 4c67ceabec
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 48 additions and 25 deletions

View file

@ -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)

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -1,5 +1,5 @@
---
- name: deploy /etc/nsswitch.conf
- name: Deploy '/etc/nsswitch.conf'
become: true
ansible.builtin.template:
src: 'templates/nsswitch.conf.j2'

View file

@ -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

View file

@ -1,5 +1,5 @@
---
avahi_packages:
- avahi
- mdns-scan
- nss-mdns
avahi_client__packages:
- 'avahi'
- 'nss-mdns'
# - 'mdns-scan'

View file

@ -1,5 +1,8 @@
---
avahi_packages:
avahi_client__packages:
- 'avahi-discover'
- 'avahi-utils'
- 'mdns-scan'
- 'libnss-mdns'
# - 'avahi-autoipd'
# - 'avahi-dnsconfd'
# - 'mdns-scan'

View file

@ -1,4 +1,4 @@
---
# versionscheck
playbook_version_number: 6
playbook_version_number: 7
playbook_version_path: 'do1jlr.avahi_client.version'

View file

@ -1,3 +1,4 @@
---
avahi_packages:
- mdns-scan
avahi_client__packages:
- avahi
# - 'mdns-scan'