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.
|
Avahi provides local hostname resolution using a "hostname.local" naming scheme.
|
||||||
This ansible role installs the required dependencies and configures the DNS resolver accordingly.
|
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``.
|
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:
|
If you want only IPv4 or IPv6 names resolved, change ``mdns`` to ``mdns4`` or ``mdns6`` in these variables:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
avahi__mdns_name: 'mdns'
|
avahi_client__mdns_name: 'mdns'
|
||||||
avahi__mdns_minimal_name: 'mdns_minimal'
|
avahi_client__mdns_minimal_name: 'mdns_minimal'
|
||||||
```
|
```
|
||||||
|
|
||||||
Learn more
|
From the documentation of [nss-mdns](https://github.com/lathiat/nss-mdns)
|
||||||
------------
|
|
||||||
+ [/etc/nsswitch.conf](https://man7.org/linux/man-pages/man5/nsswitch.conf.5.html)
|
> `mdns` resolves both IPv6 and IPv4 addresses, `mdns4` only IPv4 addresses and `mdns6` only IPv6 addresses.
|
||||||
+ Avahi [wiki.archlinux.org](https://wiki.archlinux.org/title/Avahi)
|
> `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.)
|
||||||
+ nss-mdns [0pointer.de](https://0pointer.de/lennart/projects/nss-mdns/#documentation)
|
> 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
|
# deploy custom /etc/nsswitch.conf config
|
||||||
avahi__configure_nsswitch: true
|
avahi_client__configure_nsswitch: true
|
||||||
|
|
||||||
# mdns resolver name
|
# mdns resolver name
|
||||||
avahi__mdns_name: 'mdns'
|
avahi_client__mdns_name: 'mdns'
|
||||||
avahi__mdns_minimal_name: 'mdns_minimal'
|
avahi_client__mdns_minimal_name: 'mdns_minimal'
|
||||||
|
|
||||||
# should we do a version check? (recomended)
|
# should we do a version check? (recomended)
|
||||||
submodules_versioncheck: false
|
submodules_versioncheck: false
|
||||||
|
|
|
@ -7,8 +7,8 @@
|
||||||
when:
|
when:
|
||||||
- ansible_pkg_mgr == "apt"
|
- ansible_pkg_mgr == "apt"
|
||||||
|
|
||||||
- name: install avahi packages
|
- name: Install Avahi packages
|
||||||
become: true
|
become: true
|
||||||
ansible.builtin.package:
|
ansible.builtin.package:
|
||||||
name: "{{ avahi_packages }}"
|
name: "{{ avahi_client__packages }}"
|
||||||
state: present
|
state: present
|
||||||
|
|
|
@ -14,4 +14,4 @@
|
||||||
|
|
||||||
- name: configure /etc/nsswitch.conf
|
- name: configure /etc/nsswitch.conf
|
||||||
ansible.builtin.include_tasks: nsswitch.yml
|
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
|
become: true
|
||||||
ansible.builtin.template:
|
ansible.builtin.template:
|
||||||
src: 'templates/nsswitch.conf.j2'
|
src: 'templates/nsswitch.conf.j2'
|
||||||
|
|
|
@ -12,7 +12,7 @@ gshadow: files
|
||||||
|
|
||||||
publickey: 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
|
networks: files
|
||||||
|
|
||||||
protocols: db [NOTFOUND=return] files
|
protocols: db [NOTFOUND=return] files
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
---
|
---
|
||||||
avahi_packages:
|
avahi_client__packages:
|
||||||
- avahi
|
- 'avahi'
|
||||||
- mdns-scan
|
- 'nss-mdns'
|
||||||
- nss-mdns
|
# - 'mdns-scan'
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
---
|
---
|
||||||
avahi_packages:
|
avahi_client__packages:
|
||||||
- 'avahi-discover'
|
- 'avahi-discover'
|
||||||
- 'avahi-utils'
|
- 'avahi-utils'
|
||||||
- 'mdns-scan'
|
- 'libnss-mdns'
|
||||||
|
# - 'avahi-autoipd'
|
||||||
|
# - 'avahi-dnsconfd'
|
||||||
|
# - 'mdns-scan'
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
---
|
---
|
||||||
# versionscheck
|
# versionscheck
|
||||||
playbook_version_number: 6
|
playbook_version_number: 7
|
||||||
playbook_version_path: 'do1jlr.avahi_client.version'
|
playbook_version_path: 'do1jlr.avahi_client.version'
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
---
|
---
|
||||||
avahi_packages:
|
avahi_client__packages:
|
||||||
- mdns-scan
|
- avahi
|
||||||
|
# - 'mdns-scan'
|
||||||
|
|
Loading…
Reference in a new issue