diff options
Diffstat (limited to 'data/templates/dhcp-server/dhcpd.conf.tmpl')
-rw-r--r-- | data/templates/dhcp-server/dhcpd.conf.tmpl | 180 |
1 files changed, 90 insertions, 90 deletions
diff --git a/data/templates/dhcp-server/dhcpd.conf.tmpl b/data/templates/dhcp-server/dhcpd.conf.tmpl index 5f5129451..f431d3207 100644 --- a/data/templates/dhcp-server/dhcpd.conf.tmpl +++ b/data/templates/dhcp-server/dhcpd.conf.tmpl @@ -23,38 +23,38 @@ on expiry { execute("/usr/libexec/vyos/system/on-dhcp-event.sh", "release", ClientName, ClientIp, ClientMac, ClientDomain); } {% endif %} -{%- if host_decl_name %} +{% if host_decl_name %} use-host-decl-names on; -{%- endif %} -ddns-update-style {% if ddns_enable -%} interim {%- else -%} none {%- endif %}; -{% if static_route -%} +{% endif %} +ddns-update-style {% if ddns_enable %} interim {% else %} none {% endif %}; +{% if static_route %} option rfc3442-static-route code 121 = array of integer 8; option windows-static-route code 249 = array of integer 8; -{%- endif %} -{% if wpad -%} +{% endif %} +{% if wpad %} option wpad-url code 252 = text; {% endif %} -{%- if global_parameters %} +{% if global_parameters %} # The following {{ global_parameters | length }} line(s) were added as global-parameters in the CLI and have not been validated -{%- for param in global_parameters %} +{% for param in global_parameters %} {{ param }} -{%- endfor -%} -{%- endif %} +{% endfor %} +{% endif %} # Failover configuration {% for network in shared_network %} -{%- if not network.disabled -%} -{%- for subnet in network.subnet %} -{%- if subnet.failover_name -%} +{% if not network.disabled %} +{% for subnet in network.subnet %} +{% if subnet.failover_name %} failover peer "{{ subnet.failover_name }}" { -{%- if subnet.failover_status == 'primary' %} +{% if subnet.failover_status == 'primary' %} primary; mclt 1800; split 128; -{%- elif subnet.failover_status == 'secondary' %} +{% elif subnet.failover_status == 'secondary' %} secondary; -{%- endif %} +{% endif %} address {{ subnet.failover_local_addr }}; port 520; peer address {{ subnet.failover_peer_addr }}; @@ -63,133 +63,133 @@ failover peer "{{ subnet.failover_name }}" { max-unacked-updates 10; load balance max seconds 3; } -{% endif -%} -{% endfor -%} -{% endif -%} +{% endif %} +{% endfor %} +{% endif %} {% endfor %} # Shared network configration(s) {% for network in shared_network %} -{%- if not network.disabled -%} +{% if not network.disabled %} shared-network {{ network.name }} { - {%- if network.authoritative %} + {% if network.authoritative %} authoritative; - {%- endif %} - {%- if network.network_parameters %} + {% endif %} + {% if network.network_parameters %} # The following {{ network.network_parameters | length }} line(s) were added as shared-network-parameters in the CLI and have not been validated - {%- for param in network.network_parameters %} + {% for param in network.network_parameters %} {{ param }} - {%- endfor %} - {%- endif %} - {%- for subnet in network.subnet %} + {% endfor %} + {% endif %} + {% for subnet in network.subnet %} subnet {{ subnet.address }} netmask {{ subnet.netmask }} { - {%- if subnet.dns_server %} + {% if subnet.dns_server %} option domain-name-servers {{ subnet.dns_server | join(', ') }}; - {%- endif %} - {%- if subnet.domain_search %} + {% endif %} + {% if subnet.domain_search %} option domain-search {{ subnet.domain_search | join(', ') }}; - {%- endif %} - {%- if subnet.ntp_server %} + {% endif %} + {% if subnet.ntp_server %} option ntp-servers {{ subnet.ntp_server | join(', ') }}; - {%- endif %} - {%- if subnet.pop_server %} + {% endif %} + {% if subnet.pop_server %} option pop-server {{ subnet.pop_server | join(', ') }}; - {%- endif %} - {%- if subnet.smtp_server %} + {% endif %} + {% if subnet.smtp_server %} option smtp-server {{ subnet.smtp_server | join(', ') }}; - {%- endif %} - {%- if subnet.time_server %} + {% endif %} + {% if subnet.time_server %} option time-servers {{ subnet.time_server | join(', ') }}; - {%- endif %} - {%- if subnet.wins_server %} + {% endif %} + {% if subnet.wins_server %} option netbios-name-servers {{ subnet.wins_server | join(', ') }}; - {%- endif %} - {%- if subnet.static_route %} + {% endif %} + {% if subnet.static_route %} option rfc3442-static-route {{ subnet.static_route }}{% if subnet.rfc3442_default_router %}, {{ subnet.rfc3442_default_router }}{% endif %}; option windows-static-route {{ subnet.static_route }}; - {%- endif %} - {%- if subnet.ip_forwarding %} + {% endif %} + {% if subnet.ip_forwarding %} option ip-forwarding true; - {%- endif -%} - {%- if subnet.default_router %} + {% endif %} + {% if subnet.default_router %} option routers {{ subnet.default_router }}; - {%- endif -%} - {%- if subnet.server_identifier %} + {% endif %} + {% if subnet.server_identifier %} option dhcp-server-identifier {{ subnet.server_identifier }}; - {%- endif -%} - {%- if subnet.domain_name %} + {% endif %} + {% if subnet.domain_name %} option domain-name "{{ subnet.domain_name }}"; - {%- endif -%} - {%- if subnet.subnet_parameters %} + {% endif %} + {% if subnet.subnet_parameters %} # The following {{ subnet.subnet_parameters | length }} line(s) were added as subnet-parameters in the CLI and have not been validated - {%- for param in subnet.subnet_parameters %} + {% for param in subnet.subnet_parameters %} {{ param }} - {%- endfor -%} - {%- endif %} - {%- if subnet.tftp_server %} + {% endfor %} + {% endif %} + {% if subnet.tftp_server %} option tftp-server-name "{{ subnet.tftp_server }}"; - {%- endif -%} - {%- if subnet.bootfile_name %} + {% endif %} + {% if subnet.bootfile_name %} option bootfile-name "{{ subnet.bootfile_name }}"; filename "{{ subnet.bootfile_name }}"; - {%- endif -%} - {%- if subnet.bootfile_server %} + {% endif %} + {% if subnet.bootfile_server %} next-server {{ subnet.bootfile_server }}; - {%- endif -%} - {%- if subnet.time_offset %} + {% endif %} + {% if subnet.time_offset %} option time-offset {{ subnet.time_offset }}; - {%- endif -%} - {%- if subnet.wpad_url %} + {% endif %} + {% if subnet.wpad_url %} option wpad-url "{{ subnet.wpad_url }}"; - {%- endif -%} - {%- if subnet.client_prefix_length %} + {% endif %} + {% if subnet.client_prefix_length %} option subnet-mask {{ subnet.client_prefix_length }}; - {%- endif -%} + {% endif %} {% if subnet.lease %} default-lease-time {{ subnet.lease }}; max-lease-time {{ subnet.lease }}; - {%- endif -%} - {%- for host in subnet.static_mapping %} - {% if not host.disabled -%} - host {% if host_decl_name -%} {{ host.name }} {%- else -%} {{ network.name }}_{{ host.name }} {%- endif %} { - {%- if host.ip_address %} + {% endif %} + {% for host in subnet.static_mapping %} + {% if not host.disabled %} + host {% if host_decl_name %} {{ host.name }} {% else %} {{ network.name }}_{{ host.name }} {% endif %} { + {% if host.ip_address %} fixed-address {{ host.ip_address }}; - {%- endif %} + {% endif %} hardware ethernet {{ host.mac_address }}; - {%- if host.static_parameters %} + {% if host.static_parameters %} # The following {{ host.static_parameters | length }} line(s) were added as static-mapping-parameters in the CLI and have not been validated - {%- for param in host.static_parameters %} + {% for param in host.static_parameters %} {{ param }} - {%- endfor -%} - {%- endif %} + {% endfor %} + {% endif %} } - {%- endif %} - {%- endfor %} - {%- if subnet.failover_name %} + {% endif %} + {% endfor %} + {% if subnet.failover_name %} pool { failover peer "{{ subnet.failover_name }}"; deny dynamic bootp clients; - {%- for range in subnet.range %} + {% for range in subnet.range %} range {{ range.start }} {{ range.stop }}; - {%- endfor %} + {% endfor %} } - {%- else %} - {%- for range in subnet.range %} + {% else %} + {% for range in subnet.range %} range {{ range.start }} {{ range.stop }}; - {%- endfor %} - {%- endif %} + {% endfor %} + {% endif %} } - {%- endfor %} + {% endfor %} on commit { set shared-networkname = "{{ network.name }}"; - {% if hostfile_update -%} + {% if hostfile_update %} set ClientName = pick-first-value(host-decl-name, option fqdn.hostname, option host-name); set ClientIp = binary-to-ascii(10, 8, ".", leased-address); set ClientMac = binary-to-ascii(16, 8, ":", substring(hardware, 1, 6)); set ClientDomain = pick-first-value(config-option domain-name, "..YYZ!"); execute("/usr/libexec/vyos/system/on-dhcp-event.sh", "commit", ClientName, ClientIp, ClientMac, ClientDomain); - {%- endif %} + {% endif %} } } -{%- endif %} +{% endif %} {% endfor %} |