From: alex Date: Sat, 7 Jan 2023 18:46:18 +0000 (+0100) Subject: Add dns_dhcp X-Git-Tag: 20240214-emacs~517 X-Git-Url: https://xn--ix-yja.es/gitweb/?a=commitdiff_plain;h=32255a6ca690a50326cd67f536b141703f8debd8;p=alex.git Add dns_dhcp --- diff --git a/personal_infra/puppet/modules/dns_dhcp/manifests/init.pp b/personal_infra/puppet/modules/dns_dhcp/manifests/init.pp new file mode 100644 index 0000000..c7a3552 --- /dev/null +++ b/personal_infra/puppet/modules/dns_dhcp/manifests/init.pp @@ -0,0 +1,20 @@ +class dns_dhcp { + $domain = lookup("'$ansible_inventory_hostname'.network.dns_dhcp.domain") + + package {'dnsmasq':} + -> + file {'/etc/dnsmasq.d/internal': + content => epp('dns_dhcp/internal', { + 'dns_dhcp' => lookup("'$ansible_inventory_hostname'.network.dns_dhcp"), + }), + } + ~> + service {'dnsmasq': + enable => true, + ensure => running, + } + -> + file {'/etc/resolv.conf': + content => "domain ${domain}\nsearch ${domain}\nnameserver 127.0.0.1\n", + } +} diff --git a/personal_infra/puppet/modules/dns_dhcp/templates/internal.epp b/personal_infra/puppet/modules/dns_dhcp/templates/internal.epp new file mode 100644 index 0000000..3ba1b7e --- /dev/null +++ b/personal_infra/puppet/modules/dns_dhcp/templates/internal.epp @@ -0,0 +1,15 @@ +domain-needed +no-resolv +no-hosts + +server=<%= $dns_dhcp['upstream_dns'] %> +<% if $dns_dhcp['domain'] { %> +local=/<%= $dns_dhcp['domain'] %>/ +domain=<%= $dns_dhcp['domain'] %> +<% } %> + +<% if $dns_dhcp['dhcp_range'] { %> +dhcp-range=<%= $dns_dhcp['dhcp_range'] %> + +dhcp-option=option:router,<%= $dns_dhcp['router'] %> +<% } %> diff --git a/personal_infra/puppet/site/h1.pdp7.net.pp b/personal_infra/puppet/site/h1.pdp7.net.pp index 3dd937c..ea16d81 100644 --- a/personal_infra/puppet/site/h1.pdp7.net.pp +++ b/personal_infra/puppet/site/h1.pdp7.net.pp @@ -1,3 +1,4 @@ node 'h1.pdp7.net' { class {'proxmox':} + class {'dns_dhcp':} }