brianhartsock.avahi

ansible.avahi

Ansible 角色用于安装和配置 Avahi。Avahi 使网络中的服务可被发现,特别是模拟 Apple Bonjour 的行为,让 Mac 能够发现 Linux 机器上的服务。

要求

该角色已经在 Ubuntu 20.04 上进行了测试,并且应该适用于大多数现代的 Debian 系统。

该角色需要 sudo 权限,因此应该通过 become: True 运行,或者使用具有足够默认权限的用户来安装和配置软件包。

角色变量

以下变量在 defaults/main.yml 中定义,用户可以用来进一步配置 Avahi 服务。avahi_services 是最重要的变量,它定义了通过 mDNS 广告的服务。

# 服务定义列表
avahi_services:
  # 文件名,/etc/avahi/services/afpd.service
  - name: afpd
    # 服务列表                  
    services:
      # 服务类型、端口和 txt 记录
      - type: _afpower._tcp
        port: 548
      - type: _device-info._tcp
        port: 0
        txt_records:
          - model=Xserve

# 替换服务定义中的通配符 (如 %h -> 主机名)
avahi_replace_wildcards: yes

# 要广告的网络名称
avahi_network_name: '%h'

# 启用或禁用 IPv6
avahi_use_ipv6: 'no'

# 设置运行的接口
avahi_allow_interfaces: "{{ ansible_default_ipv4.interface }}"

# 启用或禁用反射模式
avahi_enable_reflector: 'yes'

# 支持不使用 dbus/systemd 的系统
avahi_enable_dbus: 'yes'

依赖

示例剧本

包含如何使用该角色的示例(例如,传递变量作为参数)对用户来说总是很有帮助的:

- hosts: servers
  roles:
     - name: brianhartsock.avahi
       become: true

许可证

MIT

作者信息

Brian Hartsock 以爱心创建。

有用链接

关于项目

Ansible role for installing and configuring Avahi.

安装
ansible-galaxy install brianhartsock.avahi
许可证
mit
下载
3.2k
拥有者