zen_dhcpd/templates/dhcpd_conf.j2
2024-11-21 21:45:17 -05:00

49 lines
1.7 KiB
Django/Jinja

#####################################################
# The Zen Garden Network #
# #
# Configuration : {{ dhcp_conf_file }} #
# Version : {{ dhcp_conf_version }}-{{ dhcp_conf_revision }} #
# #
# Chris H. <chris@thezengarden.net> #
#####################################################
ddns-update-style {{ dhcp_ddns_style }};
option domain-name "{{ dhcp_domain_name }}";
default-lease-time {{ dhcp_default_lease }};
max-lease-time {{ dhcp_max_lease }};
{% if dhcp_authoritive == 'True' %}
authoritative;
{% endif %}
subnet {{ dhcp_networks[dhcp_vlan].subnet }} netmask {{ dhcp_networks[dhcp_vlan].netmask }}
{
range {{ dhcp_networks[dhcp_vlan].range_from }} {{ dhcp_networks[dhcp_vlan].range_to }};
option routers {{ dhcp_networks[dhcp_vlan].router }};
option broadcast-address {{ dhcp_networks[dhcp_vlan].broadcast }};
option domain-name "{{ dhcp_domain_name }}";
option domain-name-servers {{ dhcp_networks[dhcp_vlan].dns }};
{% if dhcp_networks[dhcp_vlan].pxeboot is defined %}
filename "{{ dhcp_pxeboot_file }}";
next-server {{ dhcp_networks[dhcp_vlan].pxeboot }};
{% endif %}
{% if static_assignments is defined %}
### STATIC ASSIGNMENTS ###
{% for host in static_assignments %}
host {{ host }}
{
hardware ethernet {{ static_assignments[host]['mac_address'] }};
fixed-address {{ static_assignments[host]['ip_address'] }};
{% if static_assignments[host]['dns_server'] is defined %}
option domain-name-servers {{ static_assignments[host]['dns_server'] }};
{% endif %}
}
{% endfor %}
{% endif %}
}