ricsanfre.dnsmasq
Ansibleロール: dnsmasq
軽量のDHCPおよびDNSサーバーであるdnsmasqをLinuxにインストールして設定します。
要件
特になし。
ロール変数
利用可能な変数は以下に示されており、デフォルト値も記載されています(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: |-
# ネットブートを有効にする
dhcp-boot=pxelinux.0
dhcp-match=set:efi-x86_64,option:client-arch,7
dhcp-boot=tag:efi-x86_64,bootx64.efi
依存関係
特になし
例Playbook
---
- 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
著者情報
リカルド・サンチェス (ricsanfre)