diff --git a/dns/templates/db.erb b/dns/templates/db.erb index ed1e5a2..7bf9c19 100644 --- a/dns/templates/db.erb +++ b/dns/templates/db.erb @@ -14,9 +14,11 @@ $ORIGIN <%= zone %>. ; @ IN NS <%= v['ns'] %>. <% end -%> +<% if slaves != [] %> <% slaves.each_pair do |k, v| -%> @ IN NS <%= v['ns'] %>. <% end -%> +<% end -%> <% if zone.match(/\//) %> $INCLUDE <%= zonedir %>/db.<%= zone.sub(/\//, '-') %>-dynamic $INCLUDE <%= zonedir %>/db.<%= zone.sub(/\//, '-') %>-static diff --git a/dns/templates/zone.slave.erb b/dns/templates/zone.slave.erb index f8a3c2f..8c3f5bd 100644 --- a/dns/templates/zone.slave.erb +++ b/dns/templates/zone.slave.erb @@ -5,6 +5,10 @@ zone "<%= zone %>" { <% else -%> file "<%= zonedir %>/db.<%= zone %>"; <% end -%> - masters { <%= master %>; }; + masters { + <% masters.each_pair do |k, v| -%> + <%= v['ip'] %>; + <% end -%> + }; allow-transfer { none; }; }; diff --git a/network/manifests/init.pp b/network/manifests/init.pp index cccd67a..cf71c68 100644 --- a/network/manifests/init.pp +++ b/network/manifests/init.pp @@ -109,6 +109,10 @@ class network::hostname { # Ethernet address. Overrides udev configuration. # $netmask: # Netmask for interface. Required only when $ipaddr is used. +# $dnsnameservers: +# IP addresses of DNS name servers (separated by space). +# $dnssearch: +# Search list for domain name lookup (separated by space). # $ip6addr: # IPv6 address for interface. Use auto for autoconfigured address. # Defaults to none. @@ -130,6 +134,7 @@ class network::hostname { # } # define network::interface($ipaddr = "none", $eaddr = "none", $netmask = "none", + $dnsnameservers = "none", $dnssearch = "none", $ip6addr = "none", $ip6netmask = "64", $bridge = [], $options = [], $postcmd = []) { diff --git a/network/templates/interfaces-if.erb b/network/templates/interfaces-if.erb index 75bccf6..fb4a55c 100644 --- a/network/templates/interfaces-if.erb +++ b/network/templates/interfaces-if.erb @@ -11,6 +11,12 @@ iface <%= name %> inet <%= proto %> <% if netmask != 'none' -%> netmask <%= netmask %> <% end -%> +<% if dnssearch != 'none' -%> + dns-search <%= dnssearch %> +<% end -%> +<% if dnsnameservers != 'none' -%> + dns-nameservers <%= dnsnameservers %> +<% end -%> <% options.each do |val| -%> <%= val %> <% end -%>