diff --git a/manifests/server/conf.pp b/manifests/server/conf.pp index bfd1f226..9d729fb7 100644 --- a/manifests/server/conf.pp +++ b/manifests/server/conf.pp @@ -15,6 +15,10 @@ # IPv6 port to listen on. Set to false to disable. Default: '53' # $listen_on_v6_addr: # Array of IPv6 addresses to listen on. Default: [ '::1' ] +# $transfer_source_addr: undef, +# determines which local address is bound to IPv4 TCP connections used to fetch zones transferred inbound by the server. Default: undef +# $transfer_source_v6_addr: undef, +# This option is the same as transfer-source, except zone transfers are performed using IPv6. Default: undef # $forwarders: # Array of forwarders IP addresses. Default: empty # $directory: @@ -91,36 +95,38 @@ # } # define bind::server::conf ( - $acls = {}, - $masters = {}, - $listen_on_port = '53', - $listen_on_addr = [ '127.0.0.1' ], - $listen_on_v6_port = '53', - $listen_on_v6_addr = [ '::1' ], - $forwarders = [], - $directory = '/var/named', - $managed_keys_directory = undef, - $hostname = undef, - $forward = undef, - $server_id = undef, - $version = undef, - $dump_file = '/var/named/data/cache_dump.db', - $statistics_file = '/var/named/data/named_stats.txt', - $memstatistics_file = '/var/named/data/named_mem_stats.txt', - $allow_query = [ 'localhost' ], - $allow_query_cache = [], - $recursion = 'yes', - $allow_recursion = [], - $allow_transfer = [], - $check_names = [], - $extra_options = {}, - $dnssec_enable = 'yes', - $dnssec_validation = 'yes', - $dnssec_lookaside = 'auto', - $zones = {}, - $keys = {}, - $includes = [], - $views = {}, + $acls = {}, + $masters = {}, + $listen_on_port = '53', + $listen_on_addr = [ '127.0.0.1' ], + $transfer_source_addr = undef, + $transfer_source_v6_addr = undef, + $listen_on_v6_port = '53', + $listen_on_v6_addr = [ '::1' ], + $forwarders = [], + $directory = '/var/named', + $managed_keys_directory = undef, + $hostname = undef, + $forward = undef, + $server_id = undef, + $version = undef, + $dump_file = '/var/named/data/cache_dump.db', + $statistics_file = '/var/named/data/named_stats.txt', + $memstatistics_file = '/var/named/data/named_mem_stats.txt', + $allow_query = [ 'localhost' ], + $allow_query_cache = [], + $recursion = 'yes', + $allow_recursion = [], + $allow_transfer = [], + $check_names = [], + $extra_options = {}, + $dnssec_enable = 'yes', + $dnssec_validation = 'yes', + $dnssec_lookaside = 'auto', + $zones = {}, + $keys = {}, + $includes = [], + $views = {}, ) { # OS Defaults diff --git a/templates/named.conf.erb b/templates/named.conf.erb index 621e6897..4093fbcb 100644 --- a/templates/named.conf.erb +++ b/templates/named.conf.erb @@ -40,6 +40,12 @@ options { <% if @listen_on_v6_port -%> listen-on-v6 port <%= @listen_on_v6_port %> { <%= @listen_on_v6_addr.join("; ") %>; }; <% end -%> +<% if @transfer_source_addr -%> + transfer-source <%= @transfer_source_addr %>; +<% end -%> +<% if @transfer_source_addr_v6 -%> + transfer-source-v6 <%= @transfer_source_v6_addr %>; +<% end -%> <% if !@forwarders.empty? -%> forwarders { <%= @forwarders.join("; ") %>; }; <% end -%> @@ -54,7 +60,7 @@ options { hostname "<%= @hostname %>"; <% end -%> <% if @server_id -%> - server-id "<% @server_id.each_byte do |byte| -%><%= byte.to_s(base=16) %><% end -%>"; + server-id "<%= @server_id %>"; <% end -%> <% if @version -%> version "<%= @version %>";