ricsanfre.dnsmasq
Ansible角色:dnsmasq
在Linux上安装和配置轻量级的DHCP和DNS服务器dnsmasq。
要求
无。
角色变量
可用的变量如下所列,以及默认值(请参见defaults\main.yaml
)
Dnsmasq监听的主机接口和IP地址:
dnsmasq_interface: ''
dnsmasq_listen_address: ''
默认值为空。角色从收集到的事实中获取接口和IP信息。 如果服务器有多个接口,请为这些变量指定值。
本地域名:
dnsmasq_domain_name: example.ricsanfre.com
DNS上游服务器(用于转发DNS查询):
dnsmasq_upstream_dns_servers:
- 80.58.61.250
- 80.58.61.254
DHCP租赁IP范围:
dnsmasq_dhcp_range: '10.0.0.32,10.0.0.128'
默认情况下,它将添加到清单中所有主机的DHCP和DNS配置记录中(任何主机 = all
组)
变量 ip
、mac
和 hostname
需要添加到清单中的主机:
hosts:
all:
children:
cluster:
hosts:
server1:
hostname: server1
ip: 10.0.0.11
mac: dc:a6:32:9c:29:b9
server2:
hostname: server2
ip: 10.0.0.12
mac: e4:5f:01:2d:fd:19
server3:
hostname: server3
ip: 10.0.0.13
mac: e4:5f:01:2f:49:05
可以使用以下变量添加额外的DHCP和DNS记录:
dnsmasq_additional_dhcp_hosts: {}
dnsmasq_additional_dhcp_hosts:
ethernet_switch:
desc: "以太网交换机"
mac: 94:a6:7e:7c:c7:69
ip: 10.0.0.2
dnsmasq_additional_dns_hosts: {}
dnsmasq_additional_dns_hosts:
ntp_server:
desc: "NTP服务器"
hostname: ntp
ip: 10.0.0.1
dns_server:
desc: "DNS服务器"
hostname: dns
ip: 10.0.0.1
启用TFTP服务并指定TFTP根目录
dnsmasq_enable_tftp: false
dnsmasq_tftp_root: /srv/tftp
可以指定额外的配置,添加到dnsmasq配置文件的末尾
dnsmasq_additional_conf: []
dnsmasq_additional_conf: |-
# 启用Netboot
dhcp-boot=pxelinux.0
dhcp-match=set:efi-x86_64,option:client-arch,7
dhcp-boot=tag:efi-x86_64,bootx64.efi
依赖关系
无
示例剧本
---
- name: Dnsmasq
hosts: host
vars:
- additional_dhcp_hosts:
ethernet_switch:
desc: "以太网交换机"
mac: 94:a6:7e:7c:c7:69
ip: 10.0.0.2
- additional_dns_hosts:
ntp_server:
desc: "NTP服务器"
hostname: ntp
ip: 10.0.0.1
dns_server:
desc: "DNS服务器"
hostname: dns
ip: 10.0.0.1
roles:
- role: ricsanfre.dnsmasq
许可证
MIT/BSD
作者信息
Ricardo Sanchez (ricsanfre)