1
0
Fork 0
mirror of https://github.com/roles-ansible/ansible_role_avahi_daemon.git synced 2024-07-04 05:19:01 +02:00
Go to file
2024-03-22 11:25:31 +01:00
.github Merge pull request #16 from roles-ansible/dependabot/github_actions/ansible-actions/yamllint-action-0.0.2 2024-03-22 11:25:31 +01:00
defaults update vriable names 2021-09-02 11:02:00 +02:00
handlers fix linting and update galaxy 2023-10-05 22:10:13 +02:00
meta fix linting and update galaxy 2023-10-05 22:10:13 +02:00
tasks Update linting 2023-10-28 18:12:24 +02:00
templates Update avtions and lint template 2023-10-23 00:52:21 +02:00
vars Update linting 2023-10-28 18:12:24 +02:00
.gitignore Initial commit 2021-09-01 23:07:51 +02:00
.yamllint Initial commit 2021-09-01 23:07:51 +02:00
LICENSE Initial commit 2021-09-01 23:07:51 +02:00
README.md Fix READM 2023-10-05 22:16:18 +02:00

Ansible Galaxy MIT License Maintainance

ansible role avahi_daemon

Ansible role to install the avahi_daemon and optionally announce some services.

Variables

In the avahi_daemon__services variable you can define the services you want to announce. Here is a list with available parameters:

  • service: Service Name (HTTP/SSH/...) (required)
  • port: Service Port (required)
  • name: optional name to announce the Service
  • protocol: any/ipv6/ipv4
  • txt_records: an array of txt records
  • transport: Transport Protokoll (tcp/udp)

Example:

---
avahi_daemon__services:
  - service: 'SSH'
    port: 22
    protocol: 'any'
    transport: 'tcp'
  - service: 'NFS'
    name: 'Filesharing Host %h'
    port: 2049
    protocol: 'ipv6'
    txt_records:
      - 'path=/path/to/nfsexport'
  - service: 'FTP'
    port: '21'
    protocol: 'ipv4'
    txt_records:
      - 'path=/ftppath'
      - 'u=ftpuser'
      - 'p=ftppass'

Netfilter rules

Avahi is using multicast to announce services. Do not forget to add netfilter rules for multicast dns.

Configuration example for ferm:

# mdns
daddr 224.0.0.251 proto udp dport 5353 ACCEPT;
daddr ff02::fb proto udp dport 5353 ACCEPT;

Ansible Collection

This role is part of the l3d.avahi Ansible Collection.

collection l3d.avahi Maintainance License

Visit the README.md of the l3d.avahi collection for information about downloading or integrating the collection to your ansible playbook.

Role Usage Example:

Links
-----
* http://dns-sd.org/
* http://www.multicastdns.org/
* https://www.ietf.org/rfc/rfc6762.txt
* http://www.dns-sd.org/ServiceTypes.html

- https://www.avahi.org/
- https://github.com/lathiat/avahi

+ https://github.com/lathiat/avahi/blob/master/avahi-daemon/avahi-service.dtd

* https://github.com/lathiat/nss-mdns