diff options
Diffstat (limited to 'roles/space_server/templates/dhcpd')
-rw-r--r-- | roles/space_server/templates/dhcpd/dhcpd.conf.j2 | 203 |
1 files changed, 203 insertions, 0 deletions
diff --git a/roles/space_server/templates/dhcpd/dhcpd.conf.j2 b/roles/space_server/templates/dhcpd/dhcpd.conf.j2 new file mode 100644 index 0000000..1b832e1 --- /dev/null +++ b/roles/space_server/templates/dhcpd/dhcpd.conf.j2 @@ -0,0 +1,203 @@ +# +# DHCP Server Configuration file. +# see /usr/share/doc/dhcp/dhcpd.conf.example +# see dhcpd.conf(5) man page +# + +# The ddns-updates-style parameter controls whether or not the server will +# attempt to do a DNS update when a lease is confirmed. We default to the +# behavior of the version 2 packages ('none', since DHCP v2 didn't +# have support for DDNS.) +ddns-update-style none; + +# option definitions common to all supported networks... +#option domain-name "labitat.dk"; +default-lease-time 3600; +max-lease-time 7200; +min-lease-time 600; + +# If this DHCP server is the official DHCP server for the local +# network, the authoritative directive should be uncommented. +authoritative; + +# Use this to send dhcp log messages to a different log file (you also +# have to hack syslog.conf to complete the redirection). +log-facility daemon; + + +# Admin net +subnet 10.42.0.0 netmask 255.255.255.0 { + range 10.42.0.50 10.42.0.69; + range 10.42.0.71 10.42.0.250; + option routers 10.42.0.1; + option domain-name-servers 185.38.175.0; + #option ntp-servers 90.185.0.18; +{% for host in local_hosts %} +{% if host.ips | ipaddr('10.42.0.0/24') %} +{% if 'mac' in host %} + +{% if 'description' in host %} + # {{ host.description }} +{% endif %} + host {{ host.name }} { + hardware ethernet {{ host.mac }}; + fixed-address {{ host.ips | ipaddr('10.42.0.0/24') | first }}; +{% if 'filename' in host %} + filename "{{ host.filename }}"; +{% endif %} + } +{% else %} + +{% if 'description' in host %} + # {{ host.description }} +{% endif %} + #host {{ host.name }} { + # fixed-address {{ host.ips | ipaddr('10.42.0.0/24') | first }}; + #} +{% endif %} +{% endif %} +{% endfor %} + + host spacewand { + hardware ethernet 00:1f:7b:b4:0e:00; + fixed-address 10.42.0.70; + } +} + + +# Wired net +subnet 10.42.1.0 netmask 255.255.255.0 { + range dynamic-bootp 10.42.1.50 10.42.1.250; + option routers 10.42.1.1; + option domain-name-servers 185.38.175.0; + #option ntp-servers 90.185.0.18; + next-server 10.42.1.1; + filename "pxelinux.0"; +{% for host in local_hosts %} +{% if host.ips | ipaddr('10.42.1.0/24') %} +{% if 'mac' in host %} + +{% if 'description' in host %} + # {{ host.description }} +{% endif %} + host {{ host.name }} { + hardware ethernet {{ host.mac }}; + fixed-address {{ host.ips | ipaddr('10.42.1.0/24') | first }}; +{% if 'filename' in host %} + filename "{{ host.filename }}"; +{% endif %} + } +{% else %} + +{% if 'description' in host %} + # {{ host.description }} +{% endif %} + #host {{ host.name }} { + # fixed-address {{ host.ips | ipaddr('10.42.1.0/24') | first }}; + #} +{% endif %} +{% endif %} +{% endfor %} +} + + +# Private wifi +subnet 10.42.2.0 netmask 255.255.255.0 { + range 10.42.2.50 10.42.2.250; + option routers 10.42.2.1; + option domain-name-servers 185.38.175.0; + #option ntp-servers 90.185.0.18; + next-server 10.42.2.1; + filename "pxelinux.0"; +{% for host in local_hosts %} +{% if host.ips | ipaddr('10.42.2.0/24') %} +{% if 'mac' in host %} + +{% if 'description' in host %} + # {{ host.description }} +{% endif %} + host {{ host.name }} { + hardware ethernet {{ host.mac }}; + fixed-address {{ host.ips | ipaddr('10.42.2.0/24') | first }}; +{% if 'filename' in host %} + filename "{{ host.filename }}"; +{% endif %} + } +{% else %} + +{% if 'description' in host %} + # {{ host.description }} +{% endif %} + #host {{ host.name }} { + # fixed-address {{ host.ips | ipaddr('10.42.2.0/24') | first }}; + #} +{% endif %} +{% endif %} +{% endfor %} +} + +# Free wifi +subnet 10.42.3.0 netmask 255.255.255.0 { + range 10.42.3.50 10.42.3.250; + option routers 10.42.3.1; + option domain-name-servers 185.38.175.0; + #option ntp-servers 90.185.0.18; +{% for host in local_hosts %} +{% if host.ips | ipaddr('10.42.3.0/24') %} +{% if 'mac' in host %} + +{% if 'description' in host %} + # {{ host.description }} +{% endif %} + host {{ host.name }} { + hardware ethernet {{ host.mac }}; + fixed-address {{ host.ips | ipaddr('10.42.3.0/24') | first }}; +{% if 'filename' in host %} + filename "{{ host.filename }}"; +{% endif %} + } +{% else %} + +{% if 'description' in host %} + # {{ host.description }} +{% endif %} + #host {{ host.name }} { + # fixed-address {{ host.ips | ipaddr('10.42.3.0/24') | first }}; + #} +{% endif %} +{% endif %} +{% endfor %} +} + +# Password protected wifi +subnet 10.42.4.0 netmask 255.255.255.0 { + range 10.42.4.50 10.42.4.250; + option routers 10.42.4.1; + option domain-name-servers 185.38.175.0; + #option ntp-servers 90.185.0.18; +{% for host in local_hosts %} +{% if host.ips | ipaddr('10.42.4.0/24') %} +{% if 'mac' in host %} + +{% if 'description' in host %} + # {{ host.description }} +{% endif %} + host {{ host.name }} { + hardware ethernet {{ host.mac }}; + fixed-address {{ host.ips | ipaddr('10.42.4.0/24') | first }}; +{% if 'filename' in host %} + filename "{{ host.filename }}"; +{% endif %} + } +{% else %} + +{% if 'description' in host %} + # {{ host.description }} +{% endif %} + #host {{ host.name }} { + # fixed-address {{ host.ips | ipaddr('10.42.4.0/24') | first }}; + #} +{% endif %} +{% endif %} +{% endfor %} +} |