From 7fa574e1751f462e7e78d52791cda34a7907d215 Mon Sep 17 00:00:00 2001 From: alelindq <51444984+alelindq@users.noreply.github.com> Date: Thu, 9 Nov 2023 15:48:18 +0000 Subject: [PATCH] dhcpd.conf.ddns: allow overriding zone primary nameserver Add 2 parameters, ddns_zone_nameservers and ddns_zone_nameservers_ipv6, which defaults to nameservers and nameservers_ipv6, but can be changed for scenarios where the nameserver for DDNS updates is not the same as the nameserver the DHCP server provides to DHCP clients. --- manifests/init.pp | 2 ++ templates/dhcpd.conf.ddns.erb | 8 ++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/manifests/init.pp b/manifests/init.pp index ff9c109db..dab600498 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -20,6 +20,8 @@ String[1] $ddns_update_static = 'on', String[1] $ddns_update_optimize = 'on', Enum['allow', 'deny'] $ddns_client_updates = 'allow', + Array[Stdlib::IP::Address::V4] $ddns_zone_nameservers = $nameservers, + Array[Stdlib::IP::Address::V6] $ddns_zone_nameservers_ipv6 = $nameservers_ipv6, Optional[Stdlib::Host] $pxeserver = undef, Optional[String[1]] $pxefilename = undef, Optional[Integer[1]] $mtu = undef, diff --git a/templates/dhcpd.conf.ddns.erb b/templates/dhcpd.conf.ddns.erb index 18c516ed1..87127ac30 100644 --- a/templates/dhcpd.conf.ddns.erb +++ b/templates/dhcpd.conf.ddns.erb @@ -14,11 +14,11 @@ use-host-decl-names on; include "<%= @dnsupdatekey %>"; <% @dnsdomain_real.each do |dom| -%> zone <%= dom %>. { -<% if @nameservers && !@nameservers.empty? -%> - primary <%= @nameservers.first %>; +<% if @ddns_zone_nameservers && !@ddns_zone_nameservers.empty? -%> + primary <%= @ddns_zone_nameservers.first %>; <% end -%> -<% if @nameservers_ipv6 && !@nameservers_ipv6.empty? -%> - primary6 <%= @nameservers_ipv6.first %>; +<% if @ddns_zone_nameservers_ipv6 && !@ddns_zone_nameservers_ipv6.empty? -%> + primary6 <%= @ddns_zone_nameservers_ipv6.first %>; <% end -%> key <%= @_dnskeyname %>; }